void autoignore_init(void) { settings_add_int("flood", "autoignore_time", 300); settings_add_str("flood", "autoignore_levels", "ctcps"); ignore_tag = g_timeout_add(AUTOIGNORE_TIMECHECK, (GSourceFunc) autoignore_timeout, NULL); signal_add("server connected", (SIGNAL_FUNC) autoignore_init_server); signal_add("server disconnected", (SIGNAL_FUNC) autoignore_deinit_server); signal_add("flood", (SIGNAL_FUNC) sig_flood); signal_add("ignore destroyed", (SIGNAL_FUNC) sig_ignore_destroyed); signal_add("ignore changed", (SIGNAL_FUNC) sig_ignore_changed); }
void bans_init(void) { default_ban_type_str = NULL; settings_add_str("misc", "ban_type", "normal"); command_bind_irc("ban", NULL, (SIGNAL_FUNC) cmd_ban); command_bind_irc("unban", NULL, (SIGNAL_FUNC) cmd_unban); command_set_options("ban", "normal user host domain +custom"); command_set_options("unban", "first last"); read_settings(); signal_add("setup changed", (SIGNAL_FUNC) read_settings); }
void core_init(void) { dialog_type_queue = NULL; dialog_text_queue = NULL; client_start_time = time(NULL); modules_init(); pidwait_init(); net_disconnect_init(); signals_init(); signal_add_first("gui dialog", (SIGNAL_FUNC) sig_gui_dialog); signal_add_first("irssi init finished", (SIGNAL_FUNC) sig_init_finished); settings_init(); commands_init(); nickmatch_cache_init(); session_init(); chat_protocols_init(); chatnets_init(); expandos_init(); ignore_init(); servers_init(); write_buffer_init(); log_init(); log_away_init(); rawlog_init(); recode_init(); channels_init(); queries_init(); nicklist_init(); chat_commands_init(); settings_add_str("misc", "ignore_signals", ""); settings_add_bool("misc", "override_coredump_limit", FALSE); #ifdef HAVE_SYS_RESOURCE_H getrlimit(RLIMIT_CORE, &orig_core_rlimit); #endif read_settings(); signal_add("setup changed", (SIGNAL_FUNC) read_settings); signal_add("irssi init finished", (SIGNAL_FUNC) sig_irssi_init_finished); settings_check(); module_register("core", "core"); }
void fe_log_init(void) { autoremove_tag = g_timeout_add(60000, (GSourceFunc) sig_autoremove, NULL); skip_next_printtext = FALSE; settings_add_bool("log", "awaylog_colors", TRUE); settings_add_bool("log", "autolog", FALSE); settings_add_bool("log", "autolog_colors", FALSE); settings_add_str("log", "autolog_path", "~/irclogs/$tag/$0.log"); settings_add_level("log", "autolog_level", "all -crap -clientcrap -ctcps"); settings_add_str("log", "log_theme", ""); autolog_level = 0; log_theme_name = NULL; read_settings(); command_bind("log", NULL, (SIGNAL_FUNC) cmd_log); command_bind("log open", NULL, (SIGNAL_FUNC) cmd_log_open); command_bind("log close", NULL, (SIGNAL_FUNC) cmd_log_close); command_bind("log start", NULL, (SIGNAL_FUNC) cmd_log_start); command_bind("log stop", NULL, (SIGNAL_FUNC) cmd_log_stop); command_bind("window log", NULL, (SIGNAL_FUNC) cmd_window_log); command_bind("window logfile", NULL, (SIGNAL_FUNC) cmd_window_logfile); signal_add_first("print text", (SIGNAL_FUNC) sig_printtext); signal_add("window item remove", (SIGNAL_FUNC) sig_window_item_remove); signal_add("window refnum changed", (SIGNAL_FUNC) sig_window_refnum_changed); signal_add("server disconnected", (SIGNAL_FUNC) sig_server_disconnected); signal_add("log locked", (SIGNAL_FUNC) sig_log_locked); signal_add("log create failed", (SIGNAL_FUNC) sig_log_create_failed); signal_add("log new", (SIGNAL_FUNC) sig_log_new); signal_add("log config read", (SIGNAL_FUNC) sig_log_config_read); signal_add("log config save", (SIGNAL_FUNC) sig_log_config_save); signal_add("awaylog show", (SIGNAL_FUNC) sig_awaylog_show); signal_add("theme destroyed", (SIGNAL_FUNC) sig_theme_destroyed); signal_add("setup changed", (SIGNAL_FUNC) read_settings); command_set_options("log open", "noopen autoopen -targets window colors"); }
void ctcp_init(void) { settings_add_str("misc", "ctcp_version_reply", PACKAGE" v$J - running on $sysname"); settings_add_int("flood", "max_ctcp_queue", 5); signal_add("server disconnected", (SIGNAL_FUNC) ctcp_deinit_server); signal_add_first("event privmsg", (SIGNAL_FUNC) event_privmsg); signal_add_first("event notice", (SIGNAL_FUNC) event_notice); signal_add("ctcp msg", (SIGNAL_FUNC) ctcp_msg); signal_add("ctcp reply", (SIGNAL_FUNC) ctcp_reply); signal_add("ctcp msg ping", (SIGNAL_FUNC) ctcp_ping); signal_add("ctcp msg version", (SIGNAL_FUNC) ctcp_version); signal_add("ctcp msg time", (SIGNAL_FUNC) ctcp_time); }
void windows_init(void) { active_win = NULL; daycheck = 0; daytag = -1; settings_add_bool("lookandfeel", "window_auto_change", FALSE); settings_add_bool("lookandfeel", "windows_auto_renumber", TRUE); settings_add_bool("lookandfeel", "window_check_level_first", FALSE); settings_add_str("lookandfeel", "window_default_level", "NONE"); read_settings(); signal_add("server looking", (SIGNAL_FUNC) sig_server_looking); signal_add("server disconnected", (SIGNAL_FUNC) sig_server_disconnected); signal_add("server connect failed", (SIGNAL_FUNC) sig_server_disconnected); signal_add("setup changed", (SIGNAL_FUNC) read_settings); }
void modes_init(void) { settings_add_str("misc", "opermode", ""); signal_add("event 221", (SIGNAL_FUNC) event_user_mode); signal_add("event 305", (SIGNAL_FUNC) event_unaway); signal_add("event 306", (SIGNAL_FUNC) event_away); signal_add("event 381", (SIGNAL_FUNC) event_oper); signal_add("event mode", (SIGNAL_FUNC) event_mode); command_bind("op", NULL, (SIGNAL_FUNC) cmd_op); command_bind("deop", NULL, (SIGNAL_FUNC) cmd_deop); command_bind("voice", NULL, (SIGNAL_FUNC) cmd_voice); command_bind("devoice", NULL, (SIGNAL_FUNC) cmd_devoice); command_bind("mode", NULL, (SIGNAL_FUNC) cmd_mode); }
void statusbar_items_init(void) { settings_add_time("misc", "lag_min_show", "1sec"); settings_add_str("lookandfeel", "actlist_sort", "refnum"); settings_add_bool("lookandfeel", "actlist_names", FALSE); settings_add_bool("lookandfeel", "actlist_prefer_window_name", FALSE); statusbar_item_register("window", NULL, item_window_active); statusbar_item_register("window_empty", NULL, item_window_empty); statusbar_item_register("prompt", NULL, item_window_active); statusbar_item_register("prompt_empty", NULL, item_window_empty); statusbar_item_register("topic", NULL, item_window_active); statusbar_item_register("topic_empty", NULL, item_window_empty); statusbar_item_register("lag", NULL, item_lag); statusbar_item_register("act", NULL, item_act); statusbar_item_register("more", NULL, item_more); statusbar_item_register("input", NULL, item_input); /* activity */ activity_list = NULL; signal_add("window activity", (SIGNAL_FUNC) sig_statusbar_activity_hilight); signal_add("window destroyed", (SIGNAL_FUNC) sig_statusbar_activity_window_destroyed); signal_add("window refnum changed", (SIGNAL_FUNC) sig_statusbar_activity_updated); /* more */ more_visible = NULL; signal_add("gui page scrolled", (SIGNAL_FUNC) sig_statusbar_more_updated); signal_add("window changed", (SIGNAL_FUNC) sig_statusbar_more_updated); signal_add_last("gui print text finished", (SIGNAL_FUNC) sig_statusbar_more_updated); signal_add_last("command clear", (SIGNAL_FUNC) sig_statusbar_more_updated); signal_add_last("command scrollback", (SIGNAL_FUNC) sig_statusbar_more_updated); /* lag */ last_lag = 0; last_lag_unknown = FALSE; signal_add("server lag", (SIGNAL_FUNC) sig_server_lag_updated); signal_add("window changed", (SIGNAL_FUNC) lag_check_update); signal_add("window server changed", (SIGNAL_FUNC) lag_check_update); lag_timeout_tag = g_timeout_add(5000, (GSourceFunc) sig_lag_timeout, NULL); /* input */ input_entries = g_hash_table_new((GHashFunc) g_str_hash, (GCompareFunc) g_str_equal); read_settings(); signal_add_last("setup changed", (SIGNAL_FUNC) read_settings); }
void chat_completion_init(void) { settings_add_str("completion", "completion_char", ":"); settings_add_bool("completion", "completion_auto", FALSE); settings_add_int("completion", "completion_keep_publics", 50); settings_add_int("completion", "completion_keep_privates", 10); settings_add_bool("completion", "completion_nicks_lowercase", FALSE); settings_add_bool("completion", "completion_strict", FALSE); settings_add_bool("lookandfeel", "expand_escapes", FALSE); read_settings(); signal_add("complete word", (SIGNAL_FUNC) sig_complete_word); signal_add("complete command msg", (SIGNAL_FUNC) sig_complete_msg); signal_add("complete command query", (SIGNAL_FUNC) sig_complete_msg); signal_add("complete command action", (SIGNAL_FUNC) sig_complete_msg); signal_add("complete erase command msg", (SIGNAL_FUNC) sig_erase_complete_msg); signal_add("complete erase command query", (SIGNAL_FUNC) sig_erase_complete_msg); signal_add("complete erase command action", (SIGNAL_FUNC) sig_erase_complete_msg); signal_add("complete command connect", (SIGNAL_FUNC) sig_complete_connect); signal_add("complete command server", (SIGNAL_FUNC) sig_complete_connect); signal_add("complete command disconnect", (SIGNAL_FUNC) sig_complete_tag); signal_add("complete command reconnect", (SIGNAL_FUNC) sig_complete_tag); signal_add("complete command window server", (SIGNAL_FUNC) sig_complete_tag); signal_add("complete command topic", (SIGNAL_FUNC) sig_complete_topic); signal_add("complete command away", (SIGNAL_FUNC) sig_complete_away); signal_add("complete command unalias", (SIGNAL_FUNC) sig_complete_unalias); signal_add("complete command alias", (SIGNAL_FUNC) sig_complete_alias); signal_add("complete command window goto", (SIGNAL_FUNC) sig_complete_window); signal_add("complete command window item move", (SIGNAL_FUNC) sig_complete_channel); signal_add("complete command server add", (SIGNAL_FUNC) sig_complete_server); signal_add("complete command server remove", (SIGNAL_FUNC) sig_complete_server); signal_add("complete command recode remove", (SIGNAL_FUNC) sig_complete_target); signal_add("message public", (SIGNAL_FUNC) sig_message_public); signal_add("message join", (SIGNAL_FUNC) sig_message_join); signal_add("message private", (SIGNAL_FUNC) sig_message_private); signal_add("message own_public", (SIGNAL_FUNC) sig_message_own_public); signal_add("message own_private", (SIGNAL_FUNC) sig_message_own_private); signal_add("nicklist remove", (SIGNAL_FUNC) sig_nick_removed); signal_add("nicklist changed", (SIGNAL_FUNC) sig_nick_changed); signal_add("send text", (SIGNAL_FUNC) event_text); signal_add("server disconnected", (SIGNAL_FUNC) sig_server_disconnected); signal_add("channel destroyed", (SIGNAL_FUNC) sig_channel_destroyed); signal_add("setup changed", (SIGNAL_FUNC) read_settings); }
/* * Add string setting from Tcl */ int settings_add_str_tcl(ClientData clientData, Tcl_Interp* interp, int objc, Tcl_Obj* const objv[]) { (void) clientData; if (objc != 3) { Tcl_Obj* str = Tcl_ObjPrintf("wrong # args: should be" " \"settings_add_str key default\""); Tcl_SetObjResult(interp, str); return TCL_ERROR; } Tcl_Obj* const key = objv[1]; Tcl_Obj* const def = objv[2]; settings_add_str("tcl", Tcl_GetString(key), Tcl_GetString(def)); return TCL_OK; }
void fe_common_irc_init(void) { static struct poptOption options[] = { { "connect", 'c', POPT_ARG_STRING, &autocon_server, 0, N_("Automatically connect to server/ircnet"), N_("SERVER") }, { "password", 'w', POPT_ARG_STRING, &autocon_password, 0, N_("Autoconnect password"), N_("SERVER") }, { "port", 'p', POPT_ARG_INT, &autocon_port, 0, N_("Autoconnect port"), N_("PORT") }, { "noconnect", '!', POPT_ARG_NONE, &no_autoconnect, 0, N_("Disable autoconnecting"), NULL }, { "nick", 'n', POPT_ARG_STRING, &cmdline_nick, 0, N_("Specify nick to use"), NULL }, { "hostname", 'h', POPT_ARG_STRING, &cmdline_hostname, 0, N_("Specify host name to use"), NULL }, { NULL, '\0', 0, NULL } }; autocon_server = NULL; autocon_password = NULL; autocon_port = 6667; no_autoconnect = FALSE; cmdline_nick = NULL; cmdline_hostname = NULL; args_register(options); settings_add_str("lookandfeel", "beep_on_msg", ""); settings_add_bool("lookandfeel", "beep_when_away", TRUE); settings_add_bool("lookandfeel", "show_away_once", TRUE); settings_add_bool("lookandfeel", "show_quit_once", FALSE); theme_register(fecommon_irc_formats); fe_channels_init(); fe_irc_commands_init(); fe_ircnet_init(); fe_irc_server_init(); fe_ctcp_init(); fe_events_init(); fe_events_numeric_init(); fe_ignore_init(); fe_netsplit_init(); fe_query_init(); irc_completion_init(); irc_hilight_text_init(); irc_window_activity_init(); fe_irc_modules_init(); }
void hilight_text_init(void) { hilight_next = FALSE; last_nick_color = 0; read_hilight_config(); settings_add_str("misc", "hilight_color", "8"); settings_add_bool("misc", "hilight_only_nick", TRUE); signal_add_first("print text", (SIGNAL_FUNC) sig_print_text); signal_add_first("print text stripped", (SIGNAL_FUNC) sig_print_text_stripped); signal_add("setup reread", (SIGNAL_FUNC) read_hilight_config); signal_add_last("message public", (SIGNAL_FUNC) sig_message); signal_add_last("message private", (SIGNAL_FUNC) sig_message); command_bind("hilight", NULL, (SIGNAL_FUNC) cmd_hilight); command_bind("dehilight", NULL, (SIGNAL_FUNC) cmd_dehilight); command_set_options("hilight", "-color -level -channels nick nonick mask word regexp"); }
void perl_core_init(void) { print_script_errors = 1; settings_add_str("perl", "perl_use_lib", PERL_USE_LIB); /*PL_perl_destruct_level = 1; - this crashes with some people.. */ perl_signals_init(); signal_add_last("script error", (SIGNAL_FUNC) sig_script_error); perl_scripts_init(); if (irssi_init_finished) perl_scripts_autorun(); else { signal_add("irssi init finished", (SIGNAL_FUNC) sig_autorun); settings_check(); } module_register("perl", "core"); }
void modes_init(void) { settings_add_str("misc", "opermode", ""); settings_add_int("misc", "max_wildcard_modes", 6); signal_add("event 221", (SIGNAL_FUNC) event_user_mode); signal_add("event 305", (SIGNAL_FUNC) event_unaway); signal_add("event 306", (SIGNAL_FUNC) event_away); signal_add("event 381", (SIGNAL_FUNC) event_oper); signal_add("event mode", (SIGNAL_FUNC) event_mode); signal_add("requested usermode change", (SIGNAL_FUNC) sig_req_usermode_change); command_bind_irc("op", NULL, (SIGNAL_FUNC) cmd_op); command_bind_irc("deop", NULL, (SIGNAL_FUNC) cmd_deop); command_bind_irc("voice", NULL, (SIGNAL_FUNC) cmd_voice); command_bind_irc("devoice", NULL, (SIGNAL_FUNC) cmd_devoice); command_bind_irc("mode", NULL, (SIGNAL_FUNC) cmd_mode); command_set_options("op", "yes"); }
void irc_completion_init(void) { settings_add_str("completion", "completion_char", ":"); settings_add_bool("completion", "completion_auto", FALSE); settings_add_int("completion", "completion_keep_publics", 180); settings_add_int("completion", "completion_keep_ownpublics", 360); settings_add_int("completion", "completion_keep_privates", 10); settings_add_bool("completion", "expand_escapes", FALSE); complete_tag = g_timeout_add(1000, (GSourceFunc) nick_completion_timeout, NULL); signal_add("complete word", (SIGNAL_FUNC) sig_complete_word); signal_add("complete command msg", (SIGNAL_FUNC) sig_complete_msg); signal_add("event privmsg", (SIGNAL_FUNC) event_privmsg); signal_add("command msg", (SIGNAL_FUNC) cmd_msg); signal_add("nicklist remove", (SIGNAL_FUNC) sig_nick_removed); signal_add("nicklist changed", (SIGNAL_FUNC) sig_nick_changed); signal_add("send text", (SIGNAL_FUNC) event_text); signal_add("server disconnected", (SIGNAL_FUNC) completion_deinit_server); signal_add("channel destroyed", (SIGNAL_FUNC) completion_deinit_channel); }
void chat_commands_init(void) { settings_add_str("misc", "quit_message", "leaving"); command_bind("server", NULL, (SIGNAL_FUNC) cmd_server); command_bind("server connect", NULL, (SIGNAL_FUNC) cmd_server_connect); command_bind("connect", NULL, (SIGNAL_FUNC) cmd_connect); command_bind("disconnect", NULL, (SIGNAL_FUNC) cmd_disconnect); command_bind("quit", NULL, (SIGNAL_FUNC) cmd_quit); command_bind("msg", NULL, (SIGNAL_FUNC) cmd_msg); command_bind("foreach", NULL, (SIGNAL_FUNC) cmd_foreach); command_bind("foreach server", NULL, (SIGNAL_FUNC) cmd_foreach_server); command_bind("foreach channel", NULL, (SIGNAL_FUNC) cmd_foreach_channel); command_bind("foreach query", NULL, (SIGNAL_FUNC) cmd_foreach_query); signal_add("default command server", (SIGNAL_FUNC) sig_default_command_server); signal_add("server sendmsg", (SIGNAL_FUNC) sig_server_sendmsg); command_set_options("connect", "4 6 !! -network ssl +ssl_cert +ssl_pkey +ssl_pass ssl_verify +ssl_cafile +ssl_capath +host noproxy -rawlog noautosendcmd"); command_set_options("msg", "channel nick"); }
void servers_setup_init(void) { settings_add_str("server", "hostname", ""); settings_add_str("server", "nick", NULL); settings_add_str("server", "user_name", NULL); settings_add_str("server", "real_name", NULL); settings_add_bool("proxy", "use_proxy", FALSE); settings_add_str("proxy", "proxy_address", ""); settings_add_int("proxy", "proxy_port", 6667); settings_add_str("proxy", "proxy_string", "CONNECT %s %d"); settings_add_str("proxy", "proxy_string_after", ""); settings_add_str("proxy", "proxy_password", ""); setupservers = NULL; source_host_ip4 = source_host_ip6 = NULL; old_source_host = NULL; read_settings(); signal_add("setup changed", (SIGNAL_FUNC) read_settings); signal_add("setup reread", (SIGNAL_FUNC) read_servers); signal_add("irssi init read settings", (SIGNAL_FUNC) read_servers); }
void themes_init(void) { settings_add_str("lookandfeel", "theme", "default"); default_formats = g_hash_table_new((GHashFunc) g_str_hash, (GCompareFunc) g_str_equal); internal_theme = read_internal_theme(); init_finished = FALSE; init_errors = NULL; themes_reload(); command_bind("format", NULL, (SIGNAL_FUNC) cmd_format); command_bind("save", NULL, (SIGNAL_FUNC) cmd_save); signal_add("complete command format", (SIGNAL_FUNC) sig_complete_format); signal_add("irssi init finished", (SIGNAL_FUNC) sig_print_errors); signal_add("setup changed", (SIGNAL_FUNC) read_settings); signal_add("setup reread", (SIGNAL_FUNC) themes_reload); command_set_options("format", "delete reset"); command_set_options("save", "formats"); }
void dcc_chat_init(void) { dcc_register_type("CHAT"); settings_add_bool("dcc", "dcc_mirc_ctcp", FALSE); settings_add_str("dcc", "dcc_autochat_masks", ""); command_bind("msg", NULL, (SIGNAL_FUNC) cmd_msg); command_bind("me", NULL, (SIGNAL_FUNC) cmd_me); command_bind("action", NULL, (SIGNAL_FUNC) cmd_action); command_bind("ctcp", NULL, (SIGNAL_FUNC) cmd_ctcp); command_bind("dcc chat", NULL, (SIGNAL_FUNC) cmd_dcc_chat); command_set_options("dcc chat", "passive"); command_bind("mircdcc", NULL, (SIGNAL_FUNC) cmd_mircdcc); command_bind("dcc close", NULL, (SIGNAL_FUNC) cmd_dcc_close); command_bind("whois", NULL, (SIGNAL_FUNC) cmd_whois); signal_add("dcc destroyed", (SIGNAL_FUNC) sig_dcc_destroyed); signal_add("ctcp msg dcc chat", (SIGNAL_FUNC) ctcp_msg_dcc_chat); signal_add_first("dcc chat message", (SIGNAL_FUNC) dcc_chat_msg); signal_add("dcc ctcp dcc", (SIGNAL_FUNC) dcc_ctcp_redirect); signal_add("dcc reply dcc", (SIGNAL_FUNC) dcc_ctcp_reply_redirect); signal_add("ctcp reply dcc reject", (SIGNAL_FUNC) ctcp_reply_dcc_reject); signal_add("event nick", (SIGNAL_FUNC) event_nick); }
void fe_common_core_init(void) { /*settings_add_bool("lookandfeel", "show_menubar", TRUE); settings_add_bool("lookandfeel", "show_toolbar", FALSE); settings_add_bool("lookandfeel", "show_statusbar", TRUE); settings_add_bool("lookandfeel", "show_nicklist", TRUE);*/ settings_add_bool("lookandfeel", "timestamps", TRUE); settings_add_bool("lookandfeel", "msgs_timestamps", FALSE); settings_add_bool("lookandfeel", "hide_text_style", FALSE); settings_add_bool("lookandfeel", "bell_beeps", FALSE); settings_add_bool("lookandfeel", "show_nickmode", TRUE); settings_add_bool("lookandfeel", "use_status_window", FALSE); settings_add_bool("lookandfeel", "use_msgs_window", FALSE); /*settings_add_bool("lookandfeel", "autoraise_msgs_window", FALSE);*/ /*settings_add_bool("lookandfeel", "use_tabbed_windows", TRUE); settings_add_int("lookandfeel", "tab_orientation", 3);*/ settings_add_str("lookandfeel", "current_theme", "default"); themes_init(); theme_register(fecommon_core_formats); autorun_init(); hilight_text_init(); command_history_init(); keyboard_init(); printtext_init(); fe_log_init(); fe_server_init(); fe_settings_init(); translation_init(); windows_init(); window_activity_init(); window_commands_init(); window_items_init(); fe_core_commands_init(); }
void perl_core_init(void) { int argc = G_N_ELEMENTS(perl_args); char **argv = perl_args; PERL_SYS_INIT3(&argc, &argv, &environ); print_script_errors = 1; settings_add_str("perl", "perl_use_lib", PERL_USE_LIB); /*PL_perl_destruct_level = 1; - this crashes with some people.. */ perl_signals_init(); signal_add_last("script error", (SIGNAL_FUNC) sig_script_error); perl_scripts_init(); if (irssi_init_finished) perl_scripts_autorun(); else { signal_add("irssi init finished", (SIGNAL_FUNC) sig_autorun); settings_check(); } module_register("perl", "core"); }
void fe_help_init(void) { settings_add_str("misc", "help_path", "Contents/Resources/helpfiles"); command_bind("help", NULL, (SIGNAL_FUNC) cmd_help); }
void fe_common_core_init(void) { static struct poptOption version_options[] = { { NULL, '\0', POPT_ARG_CALLBACK, (void *)&print_version, '\0', NULL }, { "version", 'v', POPT_ARG_NONE, NULL, 0, "Display irssi version" }, { NULL, '\0', 0, NULL } }; static struct poptOption options[] = { { NULL, '\0', POPT_ARG_INCLUDE_TABLE, version_options, 0, NULL, NULL }, POPT_AUTOHELP { "connect", 'c', POPT_ARG_STRING, &autocon_server, 0, "Automatically connect to server/ircnet", "SERVER" }, { "password", 'w', POPT_ARG_STRING, &autocon_password, 0, "Autoconnect password", "PASSWORD" }, { "port", 'p', POPT_ARG_INT, &autocon_port, 0, "Autoconnect port", "PORT" }, { "noconnect", '!', POPT_ARG_NONE, &no_autoconnect, 0, "Disable autoconnecting", NULL }, { "nick", 'n', POPT_ARG_STRING, &cmdline_nick, 0, "Specify nick to use", NULL }, { "hostname", 'h', POPT_ARG_STRING, &cmdline_hostname, 0, "Specify host name to use", NULL }, { NULL, '\0', 0, NULL } }; autocon_server = NULL; autocon_password = NULL; autocon_port = 0; no_autoconnect = FALSE; cmdline_nick = NULL; cmdline_hostname = NULL; args_register(options); settings_add_bool("lookandfeel", "timestamps", TRUE); settings_add_str("lookandfeel", "timestamp_level", "ALL"); settings_add_int("lookandfeel", "timestamp_timeout", 0); settings_add_bool("lookandfeel", "bell_beeps", FALSE); settings_add_str("lookandfeel", "beep_msg_level", ""); settings_add_bool("lookandfeel", "beep_when_window_active", TRUE); settings_add_bool("lookandfeel", "beep_when_away", TRUE); settings_add_bool("lookandfeel", "hide_text_style", FALSE); settings_add_bool("lookandfeel", "hide_colors", FALSE); settings_add_bool("lookandfeel", "hide_server_tags", FALSE); settings_add_bool("lookandfeel", "use_status_window", TRUE); settings_add_bool("lookandfeel", "use_msgs_window", FALSE); themes_init(); theme_register(fecommon_core_formats); command_history_init(); completion_init(); keyboard_init(); printtext_init(); formats_init(); #ifndef WIN32 fe_exec_init(); #endif fe_expandos_init(); fe_help_init(); fe_ignore_init(); fe_log_init(); fe_modules_init(); fe_server_init(); fe_settings_init(); translation_init(); windows_init(); window_activity_init(); window_commands_init(); window_items_init(); windows_layout_init(); fe_core_commands_init(); fe_channels_init(); fe_queries_init(); fe_messages_init(); hilight_text_init(); fe_ignore_messages_init(); settings_check(); signal_add_first("server connected", (SIGNAL_FUNC) sig_connected); signal_add_last("server disconnected", (SIGNAL_FUNC) sig_disconnected); signal_add_first("channel created", (SIGNAL_FUNC) sig_channel_created); signal_add_last("channel destroyed", (SIGNAL_FUNC) sig_channel_destroyed); module_register("core", "fe"); }
void recode_init(void) { settings_add_str("misc", "recode_fallback", "ISO8859-1"); settings_add_str("misc", "recode_out_default_charset", ""); settings_add_bool("misc", "recode_transliterate", FALSE); }
void proxy_settings_init(void) { settings_add_str("proxy", "proxy_listen_addr", "localhost"); settings_add_int("proxy", "proxy_listen_port", 2777); settings_add_str("proxy", "proxy_listen_password", ""); }
void gui_readline_init(void) { static char changekeys[] = "1234567890QWERTYUIO"; char *key, data[MAX_INT_STRLEN]; int n; cutbuffer = NULL; redir = NULL; idle_time = time(NULL); readtag = g_input_add_full(g_io_channel_unix_new(0), G_PRIORITY_HIGH, G_INPUT_READ, (GInputFunction) readline, NULL); settings_add_str("history", "scroll_page_count", "/2"); key_bind("backward_character", "", "Left", NULL, (SIGNAL_FUNC) key_backward_character); key_bind("forward_character", "", "Right", NULL, (SIGNAL_FUNC) key_forward_character); key_bind("backward_word", "", "Ctrl-Left", NULL, (SIGNAL_FUNC) key_backward_word); key_bind("forward_word", "", "Ctrl-Right", NULL, (SIGNAL_FUNC) key_forward_word); key_bind("beginning_of_line", "", "Home", NULL, (SIGNAL_FUNC) key_beginning_of_line); key_bind("beginning_of_line", NULL, "Ctrl-A", NULL, (SIGNAL_FUNC) key_beginning_of_line); key_bind("end_of_line", "", "End", NULL, (SIGNAL_FUNC) key_end_of_line); key_bind("end_of_line", NULL, "Ctrl-E", NULL, (SIGNAL_FUNC) key_end_of_line); key_bind("backward_history", "", "Up", NULL, (SIGNAL_FUNC) key_backward_history); key_bind("forward_history", "", "Down", NULL, (SIGNAL_FUNC) key_forward_history); key_bind("backspace", "", "Backspace", NULL, (SIGNAL_FUNC) key_backspace); key_bind("delete_character", "", "Delete", NULL, (SIGNAL_FUNC) key_delete_character); key_bind("delete_character", NULL, "Ctrl-D", NULL, (SIGNAL_FUNC) key_delete_character); key_bind("delete_next_word", "", NULL, NULL, (SIGNAL_FUNC) key_delete_next_word); key_bind("delete_previous_word", "", NULL, NULL, (SIGNAL_FUNC) key_delete_previous_word); key_bind("delete_to_previous_space", "", "Ctrl-W", NULL, (SIGNAL_FUNC) key_delete_to_previous_space); key_bind("erase_line", "", "Ctrl-U", NULL, (SIGNAL_FUNC) key_erase_line); key_bind("erase_to_beg_of_line", "", NULL, NULL, (SIGNAL_FUNC) key_erase_to_beg_of_line); key_bind("erase_to_end_of_line", "", "Ctrl-K", NULL, (SIGNAL_FUNC) key_erase_to_end_of_line); key_bind("yank_from_cutbuffer", "", "Ctrl-Y", NULL, (SIGNAL_FUNC) key_yank_from_cutbuffer); key_bind("transpose_characters", "Swap current and previous character", "Ctrl-T", NULL, (SIGNAL_FUNC) key_transpose_characters); key_bind("word_completion", "", "Tab", NULL, (SIGNAL_FUNC) key_word_completion); key_bind("check_replaces", "Check word replaces", " ", NULL, (SIGNAL_FUNC) key_check_replaces); key_bind("check_replaces", NULL, "Return", NULL, (SIGNAL_FUNC) key_check_replaces); key_bind("previous_window", "Previous window", "CTRL-P", NULL, (SIGNAL_FUNC) key_previous_window); key_bind("left_window", "Window in left", "ALT-Left", NULL, (SIGNAL_FUNC) key_left_window); key_bind("next_window", "Next window", "CTRL-N", NULL, (SIGNAL_FUNC) key_next_window); key_bind("right_window", "Window in right", "ALT-Right", NULL, (SIGNAL_FUNC) key_right_window); key_bind("upper_window", "Upper window", "ALT-Up", NULL, (SIGNAL_FUNC) key_upper_window); key_bind("lower_window", "Lower window", "ALT-Down", NULL, (SIGNAL_FUNC) key_lower_window); key_bind("active_window", "Go to next window with the highest activity", "ALT-A", NULL, (SIGNAL_FUNC) key_active_window); key_bind("next_window_item", "Next channel/query", "CTRL-X", NULL, (SIGNAL_FUNC) key_next_window_item); key_bind("previous_window_item", "Previous channel/query", NULL, NULL, (SIGNAL_FUNC) key_previous_window_item); key_bind("refresh_screen", "Redraw screen", "CTRL-L", NULL, (SIGNAL_FUNC) irssi_redraw); key_bind("scroll_backward", "Previous page", "Prior", NULL, (SIGNAL_FUNC) key_scroll_backward); key_bind("scroll_backward", NULL, "ALT-P", NULL, (SIGNAL_FUNC) key_scroll_backward); key_bind("scroll_forward", "Next page", "Next", NULL, (SIGNAL_FUNC) key_scroll_forward); key_bind("scroll_forward", NULL, "ALT-N", NULL, (SIGNAL_FUNC) key_scroll_forward); key_bind("scroll_start", "Beginning of the window", "", NULL, (SIGNAL_FUNC) key_scroll_start); key_bind("scroll_end", "End of the window", "", NULL, (SIGNAL_FUNC) key_scroll_end); key_bind("special_char", "Insert special character", "CTRL-B", "\002", (SIGNAL_FUNC) key_addchar); key_bind("special_char", NULL, "CTRL--", "\037", (SIGNAL_FUNC) key_addchar); key_bind("special_char", NULL, "CTRL-C", "\003", (SIGNAL_FUNC) key_addchar); key_bind("special_char", NULL, "CTRL-V", "\026", (SIGNAL_FUNC) key_addchar); key_bind("special_char", NULL, "CTRL-G", "\007", (SIGNAL_FUNC) key_addchar); key_bind("special_char", NULL, "CTRL-O", "\017", (SIGNAL_FUNC) key_addchar); for (n = 0; changekeys[n] != '\0'; n++) { key = g_strdup_printf("ALT-%c", changekeys[n]); ltoa(data, n+1); key_bind("change_window", "Change window", key, data, (SIGNAL_FUNC) key_change_window); g_free(key); } signal_add("window changed automatic", (SIGNAL_FUNC) sig_window_auto_changed); signal_add("gui entry redirect", (SIGNAL_FUNC) sig_gui_entry_redirect); }
void irc_commands_init(void) { tmpstr = g_string_new(NULL); settings_add_str("misc", "part_message", ""); settings_add_time("misc", "knockout_time", "5min"); settings_add_str("misc", "wall_format", "[Wall/$0] $1-"); settings_add_bool("misc", "kick_first_on_kickban", FALSE); settings_add_bool("misc", "auto_whowas", TRUE); knockout_tag = g_timeout_add(KNOCKOUT_TIMECHECK, (GSourceFunc) knockout_timeout, NULL); command_bind_irc("notice", NULL, (SIGNAL_FUNC) cmd_notice); command_bind_irc("ctcp", NULL, (SIGNAL_FUNC) cmd_ctcp); command_bind_irc("nctcp", NULL, (SIGNAL_FUNC) cmd_nctcp); command_bind_irc("part", NULL, (SIGNAL_FUNC) cmd_part); command_bind_irc("kick", NULL, (SIGNAL_FUNC) cmd_kick); command_bind_irc("topic", NULL, (SIGNAL_FUNC) cmd_topic); command_bind_irc("invite", NULL, (SIGNAL_FUNC) cmd_invite); command_bind_irc("list", NULL, (SIGNAL_FUNC) cmd_list); command_bind_irc("who", NULL, (SIGNAL_FUNC) cmd_who); command_bind_irc("names", NULL, (SIGNAL_FUNC) cmd_names); command_bind_irc("nick", NULL, (SIGNAL_FUNC) cmd_nick); /* SYNTAX: NOTE <command> [&<password>] [+|-<flags>] [<arguments>] */ command_bind_irc("note", NULL, (SIGNAL_FUNC) command_self); command_bind_irc("whois", NULL, (SIGNAL_FUNC) cmd_whois); command_bind_irc("whowas", NULL, (SIGNAL_FUNC) cmd_whowas); command_bind_irc("ping", NULL, (SIGNAL_FUNC) cmd_ping); /* SYNTAX: KILL <nick> <reason> */ command_bind_irc("kill", NULL, (SIGNAL_FUNC) command_2self); command_bind_irc("away", NULL, (SIGNAL_FUNC) cmd_away); /* SYNTAX: ISON <nicks> */ command_bind_irc("ison", NULL, (SIGNAL_FUNC) command_1self); command_bind_irc("accept", NULL, (SIGNAL_FUNC) cmd_accept); /* SYNTAX: ADMIN [<server>|<nickname>] */ command_bind_irc("admin", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: INFO [<server>] */ command_bind_irc("info", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: KNOCK <channel> */ command_bind_irc("knock", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: LINKS [[<server>] <mask>] */ command_bind_irc("links", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: LUSERS [<server mask> [<remote server>]] */ command_bind_irc("lusers", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: MAP */ command_bind_irc("map", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: MOTD [<server>|<nick>] */ command_bind_irc("motd", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: REHASH [<option>] */ command_bind_irc("rehash", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: STATS <type> [<server>] */ command_bind_irc("stats", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: TIME [<server>|<nick>] */ command_bind_irc("time", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: TRACE [<server>|<nick>] */ command_bind_irc("trace", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: VERSION [<server>|<nick>] */ command_bind_irc("version", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: SERVLIST [<server mask>] */ command_bind_irc("servlist", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: SILENCE [[+|-]<nick!user@host>] SILENCE [<nick>] */ command_bind_irc("silence", NULL, (SIGNAL_FUNC) command_self); command_bind_irc("unsilence", NULL, (SIGNAL_FUNC) cmd_unsilence); command_bind_irc("sconnect", NULL, (SIGNAL_FUNC) cmd_sconnect); /* SYNTAX: SQUERY <service> [<commands>] */ command_bind_irc("squery", NULL, (SIGNAL_FUNC) command_2self); /* SYNTAX: DIE */ command_bind_irc("die", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: HASH */ command_bind_irc("hash", NULL, (SIGNAL_FUNC) command_self); command_bind_irc("oper", NULL, (SIGNAL_FUNC) cmd_oper); /* SYNTAX: RESTART */ command_bind_irc("restart", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: RPING <server> */ command_bind_irc("rping", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: SQUIT <server>|<mask> <reason> */ command_bind_irc("squit", NULL, (SIGNAL_FUNC) command_2self); /* SYNTAX: UPING <server> */ command_bind_irc("uping", NULL, (SIGNAL_FUNC) command_self); /* SYNTAX: USERHOST <nicks> */ command_bind_irc("userhost", NULL, (SIGNAL_FUNC) command_self); command_bind_irc("quote", NULL, (SIGNAL_FUNC) cmd_quote); command_bind_irc("rawquote", NULL, (SIGNAL_FUNC) cmd_rawquote); command_bind_irc("wall", NULL, (SIGNAL_FUNC) cmd_wall); command_bind_irc("wallchops", NULL, (SIGNAL_FUNC) cmd_wallchops); command_bind_irc("wait", NULL, (SIGNAL_FUNC) cmd_wait); /* SYNTAX: WALLOPS <message> */ command_bind_irc("wallops", NULL, (SIGNAL_FUNC) command_1self); command_bind_irc("kickban", NULL, (SIGNAL_FUNC) cmd_kickban); command_bind_irc("knockout", NULL, (SIGNAL_FUNC) cmd_knockout); command_bind_irc("server purge", NULL, (SIGNAL_FUNC) cmd_server_purge); signal_add("channel destroyed", (SIGNAL_FUNC) sig_channel_destroyed); signal_add("server disconnected", (SIGNAL_FUNC) sig_server_disconnected); signal_add("whois try whowas", (SIGNAL_FUNC) sig_whois_try_whowas); signal_add("whois event", (SIGNAL_FUNC) event_whois); signal_add("whois end", (SIGNAL_FUNC) event_end_of_whois); signal_add("whowas event", (SIGNAL_FUNC) event_whowas); command_set_options("connect", "+ircnet"); command_set_options("topic", "delete"); command_set_options("list", "yes"); command_set_options("away", "one all"); command_set_options("whois", "yes"); }
void fe_common_core_init(void) { const char *str; settings_add_bool("lookandfeel", "timestamps", TRUE); settings_add_level("lookandfeel", "timestamp_level", "ALL"); settings_add_time("lookandfeel", "timestamp_timeout", "0"); settings_add_bool("lookandfeel", "bell_beeps", FALSE); settings_add_level("lookandfeel", "beep_msg_level", ""); settings_add_bool("lookandfeel", "beep_when_window_active", TRUE); settings_add_bool("lookandfeel", "beep_when_away", TRUE); settings_add_bool("lookandfeel", "hide_text_style", FALSE); settings_add_bool("lookandfeel", "hide_colors", FALSE); settings_add_bool("lookandfeel", "hide_server_tags", FALSE); settings_add_bool("lookandfeel", "use_status_window", TRUE); settings_add_bool("lookandfeel", "use_msgs_window", FALSE); g_get_charset(&str); settings_add_str("lookandfeel", "term_charset", str); themes_init(); theme_register(fecommon_core_formats); command_history_init(); completion_init(); keyboard_init(); printtext_init(); formats_init(); #ifndef WIN32 fe_exec_init(); #endif fe_expandos_init(); fe_help_init(); fe_ignore_init(); fe_log_init(); fe_modules_init(); fe_server_init(); fe_settings_init(); windows_init(); window_activity_init(); window_commands_init(); window_items_init(); windows_layout_init(); fe_core_commands_init(); fe_channels_init(); fe_queries_init(); fe_messages_init(); hilight_text_init(); fe_ignore_messages_init(); fe_recode_init(); settings_check(); signal_add_first("server connected", (SIGNAL_FUNC) sig_connected); signal_add_last("server disconnected", (SIGNAL_FUNC) sig_disconnected); signal_add_first("channel created", (SIGNAL_FUNC) sig_channel_created); signal_add_last("channel destroyed", (SIGNAL_FUNC) sig_channel_destroyed); module_register("core", "fe"); }