summaryrefslogtreecommitdiff
path: root/irssi
diff options
context:
space:
mode:
authorAdrian C. (anrxc) <anrxc@sysphere.org>2009-09-11 13:13:14 +0200
committerAdrian C. (anrxc) <anrxc@sysphere.org>2009-09-11 13:13:14 +0200
commit43a1bc3094d1d8da0a2b2cedcf98cda6f450e00c (patch)
treedf8e143285987e8a6a76657f9037a424a0262500 /irssi
downloaddotfiles-43a1bc3094d1d8da0a2b2cedcf98cda6f450e00c.tar.xz
Initial import of dotfiles
Diffstat (limited to 'irssi')
-rw-r--r--irssi/config450
-rw-r--r--irssi/zenbarn.theme271
2 files changed, 721 insertions, 0 deletions
diff --git a/irssi/config b/irssi/config
new file mode 100644
index 0000000..b9544af
--- /dev/null
+++ b/irssi/config
@@ -0,0 +1,450 @@
+###
+# irssi configuration file, using irssi 0.8.14
+# - anrxc.sysphere.org
+#
+###############################################
+
+# I modified this copy to serve new users
+# as a template, it covers a lot of things:
+# + Contains
+# - Bouncer example
+# - Using SSL
+# - SILC
+# - Autojoin channels
+# - Completition/auto replacement
+# - Managing aliases with special variables
+# - Windows/channels auto arrangement and positioning
+# - Irssi proxy
+# + For explanations of the settings clause refer to:
+# - http://irssi.org/documentation/settings
+#
+# + Some scripts that I recommend and use:
+# - autorejoin.pl dns.pl mlock.pl
+# - namesaway.pl quitmsg.pl mail.pl
+# - usercount.pl nact.pl sysinfo.pl
+# - hilightwin.pl nm.pl crapbuster.pl
+# - screen_away.pl adv_windowlist.pl
+#
+# + I use this config in combination with the zenbarn theme
+
+servers = (
+ { # Standard connection
+ address = "irc.freenode.net";
+ chatnet = "fnode";
+ port = "6667";
+ autoconnect = "yes";
+ },
+
+ { # Standard connection
+ address = "irc.oftc.net";
+ chatnet = "oftc";
+ port = "6667";
+ autoconnect = "no";
+ },
+
+ { # SSL connection
+ address = "irc.sysphere.org";
+ chatnet = "sys";
+ port = "6697";
+ use_ssl = "yes";
+ # Automatic login
+ password = "xxxxxx";
+ autoconnect = "yes";
+ },
+
+ { # IRC bouncer connection
+ address = "polarhome.com";
+ chatnet = "bnc";
+ port = "14444";
+ # Automatic login
+ password = "xxxxxx";
+ use_ssl = "yes";
+ ssl_verify = "no";
+ autoconnect = "no";
+ },
+
+ { # SILC connection
+ address = "silc.silcnet.org";
+ chatnet = "silc";
+ port = "706";
+ },
+);
+
+chatnets = {
+ fnode = {
+ type = "IRC";
+ # Automatic login to nickserv
+ autosendcmd = "/msg nickserv identify xxxxxx";
+ max_kicks = "4";
+ max_modes = "3";
+ max_msgs = "5";
+ max_whois = "4";
+ };
+
+ oftc= {
+ type = "IRC";
+ # Automatic login to nickserv
+ autosendcmd = "/msg nickserv identify xxxxxx";
+ max_kicks = "1";
+ max_msgs = "3";
+ max_whois = "30";
+ };
+
+ sys = {
+ type = "IRC";
+ # Automatic login as an IRC operator
+ autosendcmd = "/oper nickname xxxxxx";
+ };
+
+ bnc = { type = "IRC"; };
+ silc = { type = "SILC"; };
+};
+
+channels = (
+ { name = "#sysphere"; chatnet = "sys"; autojoin = "Yes"; },
+ { name = "##slackware"; chatnet = "fnode"; autojoin = "Yes"; },
+ { name = "#archlinux"; chatnet = "fnode"; autojoin = "Yes"; },
+ { name = "#razmjenavjestina"; chatnet = "fnode"; autojoin = "Yes"; },
+ { name = "#awesome"; chatnet = "oftc"; autojoin = "Yes"; },
+ { name = "#ecryptfs"; chatnet = "oftc"; autojoin = "Yes"; },
+ { name = "silc"; chatnet = "silc"; autojoin = "No"; }
+);
+
+aliases = {
+ j = "join";
+ wjoin = "join -window";
+ wquery = "query -window";
+ leave = "part";
+ exit = "quit";
+ date = "time";
+ host = "userhost";
+ last = "lastlog";
+ say = "msg *";
+ wi = "whois";
+ wii = "whois $0 $0";
+ ww = "whowas";
+ w = "who";
+ n = "names";
+ m = "msg";
+ t = "topic";
+ c = "clear";
+ cl = "clear";
+ cls = "clear";
+ k = "kick";
+ kb = "kickban";
+ b = "ban";
+ ub = "unban";
+ ig = "ignore";
+ unig = "unignore";
+ sb = "scrollback";
+ wc = "window close";
+ wn = "window new hide";
+ goto = "sb goto";
+ chat = "dcc chat";
+ run = "script load";
+ uptime = "eval exec - expr `date +%s` - \\$F | awk '{print \"Irssi uptime: \"int(\\\\\\$1/3600/24)\"d \"int(\\\\\\$1/3600%24)\"h \"int(\\\\\\$1/60%60)\"m \"int(\\\\\\$1%60)\"s\" }'";
+ calc = "exec - if which bc &>/dev/null\\; then echo '$*' | bc | awk '{print \"$*=\"$$1}'\\; else echo bc was not found\\; fi";
+ invlist = "mode $C +I";
+ q = "query";
+ ak = "amarok";
+ ec = "window close";
+ em = "me";
+ nixk = "nick";
+ mw = "me";
+ mne = "me";
+ wm = "window move";
+ awat = "away";
+ gone = "away M-x work-mode";
+ afk = "me afk: [detached]";
+ awk = "me afk: Out of my mind. back in 5 minutes.";
+ sleep = "me invokes: M-x sleep-mode";
+ uc = "statusbar window add usercount";
+ nact = "statusbar window add nact";
+ cb = "crapbuster";
+ hideset = "set activity_hide_level parts joins quits nicks modes";
+ hideclear = "set -c activity_hide_level";
+ ignoreall = "/ignore $C CRAP NOTICES SNOTES CTCPS JOINS PARTS QUITS KICKS MODES WALLOPS NICKS DCC DCCMSGS CLIENTNOTICES CLIENTCRAP CLIENTERRORS HILIGHTS";
+ slap = "me slaps $0 around with a small 50lb Unix Manual";
+ bslap = "me slaps $0 around a bit with a 'Get a Life' HOWTO";
+ rtfm = "msg $C $0: http://www.catb.org/~esr/jargon/html/R/RTFM.html";
+ google = "msg $C $0: http://www.google.com";
+ hackers = "msg $C $0: http://www.hackersmovie.com/";
+};
+
+completions = {
+ ":9" = { value = ":)"; auto = "yes"; };
+ ".)" = { value = ":)"; auto = "yes"; };
+ ".-9" = { value = ":)"; auto = "yes"; };
+ ":-9" = { value = ":)"; auto = "yes"; };
+ ".-)" = { value = ":)"; auto = "yes"; };
+ ".9" = { value = ":)"; auto = "yes"; };
+ ":=" = { value = ":)"; auto = "yes"; };
+ ":-=" = { value = ":)"; auto = "yes"; };
+ ";9" = { value = ";)"; auto = "yes"; };
+ ",)" = { value = ";)"; auto = "yes"; };
+ ",-9" = { value = ";)"; auto = "yes"; };
+ ";-9" = { value = ";)"; auto = "yes"; };
+ ",-)" = { value = ";)"; auto = "yes"; };
+ ",9" = { value = ";)"; auto = "yes"; };
+ ";=" = { value = ";)"; auto = "yes"; };
+ ";-=" = { value = ";)"; auto = "yes"; };
+};
+
+statusbar = {
+ # formats:
+ # when using {templates}, the template is shown only if it's argument isn't
+ # empty unless no argument is given. for example {sb} is printed always,
+ # but {sb $T} is printed only if $T isn't empty.
+
+ items = {
+ # start/end text in statusbars
+ barstart = "{sbstart}";
+ barend = "{sbend}";
+
+ topicbarstart = "{topicsbstart}";
+ topicbarend = "{topicsbend}";
+
+ # treated "normally", you could change the time/user name to whatever
+ time = "{sb $Z}";
+ user = "{sb {sbnickmode $cumode}$N{sbmode $usermode}{sbaway $A}}";
+
+ # treated specially .. window is printed with non-empty windows,
+ # window_empty is printed with empty windows
+ window = "{sb $winref:$itemname{sbmode $M}}";
+ window_empty = "{sb $winref{sbservertag $tag}}";
+ prompt = "{prompt $[.15]itemname}";
+ prompt_empty = "{prompt $winname}";
+ topic = " $topic";
+ topic_empty = " Irssi";
+
+ # all of these treated specially, they're only displayed when needed
+ lag = "{sb Lag: $0-}";
+ act = "{sb Act: $0-}";
+ more = "-- more --";
+ };
+
+ # there's two type of statusbars. root statusbars are either at the top
+ # of the screen or at the bottom of the screen. window statusbars are at
+ # the top/bottom of each split window in screen.
+ default = {
+ # the "default statusbar" to be displayed at the bottom of the window.
+ # contains all the normal items.
+ window = {
+ disabled = "no";
+
+ # window, root
+ type = "window";
+ # top, bottom
+ placement = "bottom";
+ # number
+ position = "1";
+ # active, inactive, always
+ visible = "active";
+
+ # list of items in statusbar in the display order
+ items = {
+ barstart = { priority = "100"; };
+ #time = { };
+ user = { };
+ window = { };
+ window_empty = { };
+ lag = { priority = "-1"; };
+ more = { priority = "-1"; alignment = "right"; };
+ barend = { priority = "100"; alignment = "right"; };
+ usercount = { };
+ nact = { };
+ mail = { };
+ };
+ };
+
+ # statusbar to use in inactive split windows
+ window_inact = {
+ type = "window";
+ placement = "bottom";
+ position = "1";
+ visible = "inactive";
+ items = {
+ barstart = { priority = "100"; };
+ window = { };
+ window_empty = { };
+ more = { priority = "-1"; alignment = "right"; };
+ barend = { priority = "100"; alignment = "right"; };
+ };
+ };
+
+ # we treat input line as yet another statusbar :) It's possible to
+ # add other items before or after the input line item.
+ prompt = {
+ type = "root";
+ placement = "bottom";
+ # we want to be at the bottom always
+ position = "100";
+ visible = "always";
+ items = {
+ prompt = { priority = "-1"; };
+ prompt_empty = { priority = "-1"; };
+ # treated specially, this is the real input line.
+ input = { priority = "10"; };
+ };
+ };
+
+ # topicbar
+ topic = {
+ type = "root";
+ placement = "top";
+ position = "1";
+ visible = "always";
+ items = {
+ topicbarstart = { priority = "100"; };
+ topic = { };
+ topic_empty = { };
+ topicbarend = { priority = "100"; alignment = "right"; };
+ };
+ };
+ awl_0 = {
+ items = {
+ barstart = { priority = "100"; };
+ awl_0 = { };
+ barend = { priority = "100"; alignment = "right"; };
+ };
+ };
+ };
+};
+
+settings = {
+ core = {
+ real_name = "aic";
+ user_name = "anrxc";
+ nick = "anrxc";
+ settings_autosave = "off";
+ awaylog_file = "~/.irssi/irclogs/away.log";
+ awaylog_level = "msgs hilight";
+ log_create_mode = "600";
+ };
+
+ "fe-common/core" = {
+ theme = "zenbarn";
+ timestamps = "yes";
+ autocreate_own_query = "no";
+ autocreate_query_level = "DCCMSGS";
+ use_status_window = "no";
+ use_msgs_window = "yes";
+ autolog = "yes";
+ autolog_path = "~/.irssi/irclogs/$tag/$0.log";
+ emphasis_multiword = "on";
+ emphasis_replace = "on";
+ autoclose_windows = "on";
+ hide_server_tags = "on";
+ show_own_nickchange_once = "on";
+ bell_beeps = "yes";
+ beep_msg_level = "MSGS NOTICES INVITES DCC DCCMSGS HILIGHT";
+ #not working, wtf?
+ #recode_fallback = "cp1250";
+ #term_charset = "utf-8";
+ };
+
+ "irc/core" = {
+ alternate_nick = "aic";
+ ctcp_version_reply = "irssi v$J ($sysname)";
+ ctcp_userinfo_reply = "$Y ($X)";
+ };
+
+ "fe-text" = { term_force_colors = "on"; actlist_sort = "refnum"; };
+
+ proxy = {
+ irssiproxy_password = "xxxxxx";
+ irssiproxy_ports = "fnode=25000 oftc=25001";
+ };
+
+ "perl/core/scripts" = {
+ autorejoin_channels = "#sysphere #slackware-hr";
+ awl_display_key = "$Q%G:%n$H$C$S";
+ nact_devices = "eth0";
+ neat_maxlength = "8";
+ neat_right_mode = "no";
+ neat_left_actions = "no";
+ nicklist_automode = "SCREEN";
+ usercount_show_zero = "no";
+ usercount_show_halfops = "no";
+ mail_mailboxes = "inbox=~/Mail/INBOX,";
+ mail_format = "%u/%t";
+ crapbuster_levels = "JOINS PARTS QUITS NICKS CLIENTCRAP CRAP MODE TOPICS KICKS";
+ neat_colorize = "yes";
+ };
+};
+
+hilights = (
+ { text = "anrxc"; nick = "yes"; word = "yes"; },
+ { text = "vicious"; nick = "no"; word = "yes"; }
+);
+
+logs = { };
+
+ignores = (
+ { mask = "rilix"; level = "ALL"; },
+ { mask = "sysms"; level = "ALL"; },
+ { mask = "rico"; level = "ALL"; }
+ # Also see hideclear and ignoreall aliases
+ { level = "JOINS PARTS QUITS"; channels = ( "#archlinux" ); }
+);
+
+windows = {
+ 1 = {
+ immortal = "yes";
+ name = "(status)";
+ level = "ALL";
+ sticky = "yes";
+ parent = "2";
+ };
+
+ 2 = {
+ items = (
+ {
+ type = "CHANNEL";
+ chat_type = "IRC";
+ name = "#awesome";
+ tag = "oftc";
+ }
+ );
+ };
+
+ 3 = {
+ items = (
+ {
+ type = "CHANNEL";
+ chat_type = "IRC";
+ name = "#ecryptfs";
+ tag = "oftc";
+ }
+ );
+ };
+
+ 4 = {
+ items = (
+ {
+ type = "CHANNEL";
+ chat_type = "IRC";
+ name = "#archlinux";
+ tag = "fnode";
+ }
+ );
+ };
+
+ 5 = {
+ items = (
+ {
+ type = "CHANNEL";
+ chat_type = "IRC";
+ name = "##slackware";
+ tag = "fnode";
+ }
+ );
+ };
+
+ 6 = { name = "hilight"; sticky = "yes"; };
+};
+
+mainwindows = {
+ 2 = { first_line = "7"; lines = "22"; };
+ 4 = { first_line = "1"; lines = "5"; };
+};
diff --git a/irssi/zenbarn.theme b/irssi/zenbarn.theme
new file mode 100644
index 0000000..994ec42
--- /dev/null
+++ b/irssi/zenbarn.theme
@@ -0,0 +1,271 @@
+###
+# irssi theme file, using irssi 0.8.14
+# - anrxc.sysphere.org
+#
+###############################################
+
+# Zenbarn irssi theme
+#
+# This theme makes sense only in the context of Zenburn color
+# pallete. You can find color schemes for all popular terminal
+# emulators on the Zenburn homepage:
+# - http://slinky.imukuppi.org/zenburnpage/
+#
+# I personally use nm.pl for aligning nicknames, which also provides
+# complete coloring for them. Again, this theme was written with that
+# in mind, without it it could or would not look like crap.
+#
+# This theme is not complete. I use it daily and when I come across
+# something I don't like...
+
+
+# default foreground color (%N) - -1 is the "default terminal color"
+default_color = "-1";
+
+# print timestamp/servertag at the end of line, not at beginning
+info_eol = "false";
+
+# these characters are automatically replaced with specified color
+replaces = { "[]=" = "%K$*%n"; };
+
+abstracts = {
+ # Generic
+ #
+ # reserved spaces for nickname alignment
+ spacer = "$[-7]0";
+ # text to insert at the beginning of each non-message line
+ line_start = " ";
+ # timestamp styling
+ timestamp = "%Y$*%N|";
+ # any kind of text that needs hilighting
+ hilight = "%_$*%_";
+
+ # any kind of error message
+ error = "%Y$*%n";
+ # channel name is printed
+ channel = "%B%_$*%_%n";
+ # nick is printed
+ nick = "%W%_$*%_";
+ # nick host is printed
+ nickhost = "%b(%b$0-%b)%b";
+ # server name is printed
+ server = "%R%_$*%_";
+ # some kind of comment is printed
+ comment = "[%Y$*%n]";
+ # reason for something is printed (part, quit, kick, ..)
+ reason = "{comment $*}";
+ # mode change is printed ([+o nick])
+ mode = "{comment $*}";
+
+
+ # Channel specific
+ #
+ # highlighted nick/host is printed (joins)
+ channick_hilight = "%K$*%n";
+ chanhost_hilight = "{nickhost %R$*%n}";
+ # nick/host is printed (parts, quits, etc.)
+ channick = "%c$*%n";
+ chanhost = "{nickhost $*}";
+ # highlighted channel name is printed
+ channelhilight = "%B$*%n";
+ # ban/ban exception/invite list mask is printed
+ ban = "%R$*%n";
+
+
+ # Messages
+ #
+ # the basic styling of how to print message, $0 = nick mode, $1 = nick
+ msgnick = "$0$1-%w|%n %|";
+ # $0 = nick mode, $1 = nick
+ ownmsgnick = "{msgnick $0 $1-%R}%n";
+ ownnick = "%W$*%n";
+ # public message in channel, $0 = nick mode, $1 = nick
+ pubmsgnick = "{msgnick $0 $1-}";
+ pubnick = "%N$*%n";
+ pmsgnick = "%W$0%n$1-%w|%n %|";
+ # public message in channel meant for me, $0 = nick mode, $1 = nick
+ pubmsgmenick = "{msgnick $0 $1-}";
+ menick = "%Y$*%n";
+ # public highlighted message in channel
+ # $0 = highlight color, $1 = nick mode, $2 = nick
+ pubmsghinick = "{msgnick $1 $0$2-%n}";
+ # channel name is printed with message
+ msgchannel = "%K:%R$*%n";
+ # private message, $0 = nick, $1 = host
+ privmsg = "[%c$0%b(%b$1-%b)%n] ";
+ # private message from you, $0 = "msg", $1 = target nick
+ ownprivmsg = "[%b$0%b(%c$1-%b)%n] ";
+ # own private message in query
+ ownprivmsgnick = "{pmsgnick $*}";
+ ownprivnick = "%W$*%n";
+ # private message in query
+ privmsgnick = "{pmsgnick %R$*%n}";
+
+
+ # Actions (/ME)
+ #
+ # used internally by this theme
+ action_core = "{spacer} %R* $*%n";
+ # generic one that's used by most actions
+ action = "{action_core $*} ";
+ # own action, both private/public
+ ownaction = "{action $*}";
+ # own action with target, both private/public
+ ownaction_target = "{action_core $0}%K:%R$1%n ";
+ # private action sent by others
+ pvtaction = "%R* $*%n ";
+ pvtaction_query = "{pvtaction $*}";
+ # public action sent by others
+ pubaction = "{action $*}";
+
+
+ # IRC events
+ #
+ # whois
+ whois = "%# $[8]0 : $1-";
+ # notices
+ ownnotice = "[%R$0%K(%R$1-%K)]%n ";
+ notice = "%K-%M$*%K-%n ";
+ pubnotice_channel = "%K:%m$*";
+ pvtnotice_host = "%K(%m$*%K)";
+ servernotice = "%r!$*%n ";
+
+
+ # CTCPs
+ ownctcp = "[%r$0%K(%R$1-%K)] ";
+ ctcp = "%R$*%n";
+
+
+ # wallops
+ wallop = "%W$*%n: ";
+ wallop_nick = "%n$*";
+ wallop_action = "%W * $*%n ";
+
+
+ # netsplits
+ netsplit = "%W$*%n";
+ netjoin = "%W$*%n";
+
+
+ # /names list
+ names_prefix = "";
+ names_nick = "[%_$0%_$1-] ";
+ names_nick_op = "{names_nick $*}";
+ names_nick_halfop = "{names_nick $*}";
+ names_nick_voice = "{names_nick $*}";
+ names_users = "[%c$*%n]";
+ names_channel = "%B$*%n";
+
+
+ # DCC
+ dcc = "%r$*%n";
+ dccfile = "%_$*%_";
+
+
+ # DCC chat, own msg/action
+ dccownmsg = "[%r$0%K($1-%K)%n] ";
+ dccownnick = "%R$*%n";
+ dccownquerynick = "%W$*%n";
+ dccownaction = "{action $*}";
+ dccownaction_target = "{action_core $0}%K:%c$1%n ";
+
+
+ # DCC chat, others
+ dccmsg = "[%R$1-%K(%r$0%K)%n] ";
+ dccquerynick = "%R$*%n";
+ dccaction = "%W (*dcc*) $*%n %|";
+
+
+ # Statusbar
+ #
+ # default background for all statusbars
+ sb_background = "%0%G";
+ # background for prompt / input line
+ sb_prompt_bg = "%n";
+ # background for info statusbar
+ sb_info_bg = "%7";
+
+ # text at the beginning of statusbars
+ sbstart = "";
+ # text at the end of statusbars
+ sbend = "";
+ #
+ topicsbstart = "";
+ topicsbend = "";
+
+ # entry prompt
+ prompt = "%Y>%n ";
+
+ # statusbar items
+ sb = "%n$* | %n";
+ # user mode
+ sbmode = "(%n+%n$*)";
+ # away display
+ sbaway = " (%Yaway%n)";
+ # server display
+ sbservertag = ":$0";
+ # mode display
+ sbnickmode = "$0";
+
+ # Statusbar activity
+ #
+ # ',' separator
+ sb_act_sep = "%G$*";
+ # normal text
+ sb_act_text = "%Y$*";
+ # public message
+ sb_act_msg = "%Y$*";
+ # hilight
+ sb_act_hilight = "%Y$*";
+ # hilight with specified color, $0 = color, $1 = text
+ sb_act_hilight_color = "$0$1-%n";
+
+
+ # Scripts
+ #
+ # user count
+ sb_usercount = "{sb %_$0%_ (%n$1-)%n}";
+ # operators are printed
+ sb_uc_ircops = "%_*%_$*";
+ # channel operators are printed
+ sb_uc_ops = "%_@%_$*";
+ # half operators are printed
+ sb_uc_halfops = "%_%%%_$*";
+ # voiced users are printed
+ sb_uc_voices = "%_+%_$*";
+ # normal users are printed
+ sb_uc_normal = "$*";
+ # separator
+ sb_uc_space = " ";
+
+ # Nact network usage
+ nact_display = "Network: %n$2%_/%n$0%_/%n$5";
+};
+
+
+# Override irssi core settings
+formats = {
+ "fe-common/core" = {
+ # Weechat-like notices
+ #
+ # channels joins
+ join = "{spacer}%Y--> {channick $0} {chanhost $1} %Nhas joined";
+ # channel parts
+ part = "{spacer}%G<-- {channick $0} %Nhas left";
+ # channel kicks
+ kick = "{spacer}%G<-- {channick $2} %Nkicked {channick $0} ($3)";
+ # channels quits
+ quit = "{spacer}%G<-- {channick $0} %Nhas quit irc";
+ # channels nick changes
+ nick_changed = "{spacer}%Y-!-%Y {channick $0} %Nis now known as {channick $1}";
+ # channel topic changes
+ new_topic = "{nick $0} %Ntopic change -> {channel $1} to: $2";
+
+ # text to insert at the beginning of each non-message line
+ line_start_irssi = "";
+ # timestamp styling
+ timestamp = "{timestamp %%H:%%M} ";
+ };
+ "fe-common/irc" = {
+ };
+};