servers = ( { address = "irc.dal.net"; chatnet = "DALnet"; port = "6667"; }, { address = "irc.efnet.org"; chatnet = "EFNet"; port = "6667"; }, { address = "irc.esper.net"; chatnet = "EsperNet"; port = "6667"; }, { address = "chat.freenode.net"; chatnet = "Freenode"; port = "6667"; }, { address = "irc.gamesurge.net"; chatnet = "GameSurge"; port = "6667"; }, { address = "eu.irc6.net"; chatnet = "IRCnet"; port = "6667"; }, { address = "open.ircnet.net"; chatnet = "IRCnet"; port = "6667"; }, { address = "irc.ircsource.net"; chatnet = "IRCSource"; port = "6667"; }, { address = "irc.netfuze.net"; chatnet = "NetFuze"; port = "6667"; }, { address = "irc.oftc.net"; chatnet = "OFTC"; port = "6667"; }, { address = "irc.quakenet.org"; chatnet = "QuakeNet"; port = "6667"; }, { address = "irc.rizon.net"; chatnet = "Rizon"; port = "6667"; }, { address = "silc.silcnet.org"; chatnet = "SILC"; port = "706"; } ); chatnets = { DALnet = { type = "IRC"; max_kicks = "4"; max_msgs = "20"; max_whois = "30"; }; EFNet = { type = "IRC"; max_kicks = "1"; max_msgs = "4"; max_whois = "1"; }; EsperNet = { type = "IRC"; max_kicks = "1"; max_msgs = "4"; max_whois = "1"; }; Freenode = { type = "IRC"; max_kicks = "1"; max_msgs = "4"; max_whois = "1"; }; GameSurge = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; IRCnet = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; IRCSource = { type = "IRC"; max_kicks = "1"; max_msgs = "4"; max_whois = "1"; }; NetFuze = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; OFTC = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; QuakeNet = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; Rizon = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; SILC = { type = "SILC"; }; Undernet = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; }; channels = ( { name = "#lobby"; chatnet = "EsperNet"; autojoin = "No"; }, { name = "#freenode"; chatnet = "Freenode"; autojoin = "No"; }, { name = "#irssi"; chatnet = "Freenode"; autojoin = "No"; }, { name = "#gamesurge"; chatnet = "GameSurge"; autojoin = "No"; }, { name = "#irssi"; chatnet = "IRCNet"; autojoin = "No"; }, { name = "#ircsource"; chatnet = "IRCSource"; autojoin = "No"; }, { name = "#netfuze"; chatnet = "NetFuze"; autojoin = "No"; }, { name = "#oftc"; chatnet = "OFTC"; autojoin = "No"; }, { name = "silc"; chatnet = "SILC"; autojoin = "No"; }, { name = "#go-nuts"; chatnet = "freenode"; autojoin = "yes"; }, { name = "#docker"; chatnet = "freenode"; autojoin = "yes"; } ); aliases = { ATAG = "WINDOW SERVER"; ADDALLCHANS = "SCRIPT EXEC foreach my \\$channel (Irssi::channels()) { Irssi::command(\"CHANNEL ADD -auto \\$channel->{name} \\$channel->{server}->{tag} \\$channel->{key}\")\\;}"; B = "BAN"; BACK = "AWAY"; BANS = "BAN"; BYE = "QUIT"; C = "CLEAR"; CALC = "EXEC - if command -v bc >/dev/null 2>&1\\; then printf '%s=' '$*'\\; echo '$*' | bc -l\\; else echo bc was not found\\; fi"; CHAT = "DCC CHAT"; CUBES = "SCRIPT EXEC Irssi::active_win->print(\"%_bases\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x0\\${_}0\\$_\" } '0'..'9','A'..'F' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_cubes\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { my \\$y = \\$_*6 \\; join '', map { my \\$x = \\$_ \\; map { \"%x\\$x\\$_\\$x\\$_\" } @{['0'..'9','A'..'Z']}[\\$y .. \\$y+5] } 1..6 }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) for 0..5 \\; Irssi::active_win->print(\"%_grays\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x7\\${_}7\\$_\" } 'A'..'X' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_mIRC extended colours\", MSGLEVEL_CLIENTCRAP) \\; my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 0..15 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; for my \\$z (0..6) { my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 16+(\\$z*12)..16+(\\$z*12)+11 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) }"; DATE = "TIME"; DEHIGHLIGHT = "DEHILIGHT"; DESCRIBE = "ACTION"; DHL = "DEHILIGHT"; EXEMPTLIST = "MODE $C +e"; EXIT = "QUIT"; GOTO = "SCROLLBACK GOTO"; HIGHLIGHT = "HILIGHT"; HL = "HILIGHT"; HOST = "USERHOST"; INVITELIST = "MODE $C +I"; J = "JOIN"; K = "KICK"; KB = "KICKBAN"; KN = "KNOCKOUT"; LAST = "LASTLOG"; LEAVE = "PART"; M = "MSG"; MUB = "UNBAN *"; N = "NAMES"; NMSG = "^MSG"; P = "PART"; Q = "QUERY"; RESET = "SET -default"; RUN = "SCRIPT LOAD"; SAY = "MSG *"; SB = "SCROLLBACK"; SBAR = "STATUSBAR"; SIGNOFF = "QUIT"; SV = "MSG * Irssi $J ($V) - http://www.irssi.org"; T = "TOPIC"; UB = "UNBAN"; UMODE = "MODE $N"; UNSET = "SET -clear"; W = "WHO"; WC = "WINDOW CLOSE"; WG = "WINDOW GOTO"; WJOIN = "JOIN -window"; WI = "WHOIS"; WII = "WHOIS $0 $0"; WL = "WINDOW LIST"; WN = "WINDOW NEW HIDDEN"; WQUERY = "QUERY -window"; WW = "WHOWAS"; 1 = "WINDOW GOTO 1"; 2 = "WINDOW GOTO 2"; 3 = "WINDOW GOTO 3"; 4 = "WINDOW GOTO 4"; 5 = "WINDOW GOTO 5"; 6 = "WINDOW GOTO 6"; 7 = "WINDOW GOTO 7"; 8 = "WINDOW GOTO 8"; 9 = "WINDOW GOTO 9"; 10 = "WINDOW GOTO 10"; 11 = "WINDOW GOTO 11"; 12 = "WINDOW GOTO 12"; 13 = "WINDOW GOTO 13"; 14 = "WINDOW GOTO 14"; 15 = "WINDOW GOTO 15"; 16 = "WINDOW GOTO 16"; 17 = "WINDOW GOTO 17"; 18 = "WINDOW GOTO 18"; 19 = "WINDOW GOTO 19"; 20 = "WINDOW GOTO 20"; 21 = "WINDOW GOTO 21"; 22 = "WINDOW GOTO 22"; 23 = "WINDOW GOTO 23"; 24 = "WINDOW GOTO 24"; 25 = "WINDOW GOTO 25"; 26 = "WINDOW GOTO 26"; 27 = "WINDOW GOTO 27"; 28 = "WINDOW GOTO 28"; 29 = "WINDOW GOTO 29"; 30 = "WINDOW GOTO 30"; 31 = "WINDOW GOTO 31"; 32 = "WINDOW GOTO 32"; 33 = "WINDOW GOTO 33"; 34 = "WINDOW GOTO 34"; 35 = "WINDOW GOTO 35"; 36 = "WINDOW GOTO 36"; 37 = "WINDOW GOTO 37"; 38 = "WINDOW GOTO 38"; 39 = "WINDOW GOTO 39"; 40 = "WINDOW GOTO 40"; 41 = "WINDOW GOTO 41"; 42 = "WINDOW GOTO 42"; 43 = "WINDOW GOTO 43"; 44 = "WINDOW GOTO 44"; 45 = "WINDOW GOTO 45"; 46 = "WINDOW GOTO 46"; 47 = "WINDOW GOTO 47"; 48 = "WINDOW GOTO 48"; 49 = "WINDOW GOTO 49"; 50 = "WINDOW GOTO 50"; 51 = "WINDOW GOTO 51"; 52 = "WINDOW GOTO 52"; 53 = "WINDOW GOTO 53"; 54 = "WINDOW GOTO 54"; 55 = "WINDOW GOTO 55"; 56 = "WINDOW GOTO 56"; 57 = "WINDOW GOTO 57"; 58 = "WINDOW GOTO 58"; 59 = "WINDOW GOTO 59"; 60 = "WINDOW GOTO 60"; 61 = "WINDOW GOTO 61"; 62 = "WINDOW GOTO 62"; 63 = "WINDOW GOTO 63"; 64 = "WINDOW GOTO 64"; 65 = "WINDOW GOTO 65"; 66 = "WINDOW GOTO 66"; 67 = "WINDOW GOTO 67"; 68 = "WINDOW GOTO 68"; 69 = "WINDOW GOTO 69"; 70 = "WINDOW GOTO 70"; 71 = "WINDOW GOTO 71"; 72 = "WINDOW GOTO 72"; 73 = "WINDOW GOTO 73"; 74 = "WINDOW GOTO 74"; 75 = "WINDOW GOTO 75"; 76 = "WINDOW GOTO 76"; 77 = "WINDOW GOTO 77"; 78 = "WINDOW GOTO 78"; 79 = "WINDOW GOTO 79"; 80 = "WINDOW GOTO 80"; 81 = "WINDOW GOTO 81"; 82 = "WINDOW GOTO 82"; 83 = "WINDOW GOTO 83"; 84 = "WINDOW GOTO 84"; 85 = "WINDOW GOTO 85"; 86 = "WINDOW GOTO 86"; 87 = "WINDOW GOTO 87"; 88 = "WINDOW GOTO 88"; 89 = "WINDOW GOTO 89"; 90 = "WINDOW GOTO 90"; 91 = "WINDOW GOTO 91"; 92 = "WINDOW GOTO 92"; 93 = "WINDOW GOTO 93"; 94 = "WINDOW GOTO 94"; 95 = "WINDOW GOTO 95"; 96 = "WINDOW GOTO 96"; 97 = "WINDOW GOTO 97"; 98 = "WINDOW GOTO 98"; 99 = "WINDOW GOTO 99"; }; 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 = "%9%z005fff{sb {sbnickmode $[-2]cumode}%k$N %Zeeeeee {sbumode %K$usermode} %Z005fff%0%z005f00{sbaway $A}}%9%N"; # treated specially .. window is printed with non-empty windows, # window_empty is printed with empty windows window = " %Z00af00{sb $tag/{channel $itemname} %C {sbmode $M}} %C%n "; window_empty = "{sb {sbservertag $tag}}"; prompt = "{prompt $[.15]itemname}"; prompt_empty = "{prompt $winname}"; topic = " $topic"; topic_empty = " Irssi v$J - http://www.irssi.org"; # all of these treated specially, they're only displayed when needed # Powerline lag = "{sb %r%k%1 ⌚ $0 %r%0%n}"; act = "{sb %Zeeeeee%0%n%z005fff %F$0%F %n}"; more = "%c%0%n%z00af00 more ⬇ %c%0%n"; }; # 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"; }; user = { }; window = { }; window_empty = { }; lag = { priority = "-1"; }; more = { priority = "-1"; alignment = "right"; }; barend = { priority = "100"; alignment = "right"; }; otr = { }; usercount = { }; }; }; # 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"; }; topicbarend = { priority = "100"; alignment = "right"; }; topic = { }; topicempty = { }; }; }; awl_0 = { items = { barstart = { priority = "100"; }; awl_0 = { }; barend = { priority = "100"; alignment = "right"; }; }; }; }; }; settings = { core = { real_name = ""; user_name = "devi"; nick = "bloodstalker"; use_proxy = "yes"; proxy_address = "192.168.1.108"; proxy_port = "3128"; proxy_string = "CONNECT %s:%d HTTP/1.0\012\012"; proxy_string_after = "conn %s %d"; proxy_password = ""; }; "fe-common/core" = { theme = "solarized-powerline"; hilight_color = "%R"; }; "fe-text" = { actlist_sort = "refnum"; }; "perl/core/scripts" = { ### For Solarized adv_windowlist.pl script awl_block = "-20"; awl_sbar_maxlength = "off"; awl_hide_empty = "yes"; awl_mouse = "yes"; awl_viewer = "no"; awl_maxlines = "0"; #fancy_abbrev = "head"; ### For Solarized trackbar.pl script trackbar_style = "%B"; title_screen_window = "yes"; awl_shared_sbar = "OFF"; }; }; keyboard = ( { key = "meta-[M"; id = "command"; data = "mouse_xterm"; } ); ignores = ( { level = "JOINS PARTS QUITS NICKS"; channels = ( "#go-nuts" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#docker" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#node.js" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#vagrant" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#ansible" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#dpdk" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#fdio-vpp" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#alacritty" ); }, { level = "JOINS PARTS QUITS NICKS"; channels = ( "#osm" ); } );