diff options
Diffstat (limited to '')
| -rw-r--r-- | irssi/config | 449 | ||||
| -rwxr-xr-x | irssi/irssi.sh | 21 | ||||
| -rw-r--r-- | irssi/solarized-powerline.theme | 419 | ||||
| -rw-r--r-- | irssi/startup | 11 | 
4 files changed, 900 insertions, 0 deletions
| diff --git a/irssi/config b/irssi/config new file mode 100644 index 0000000..cfb392d --- /dev/null +++ b/irssi/config @@ -0,0 +1,449 @@ +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" ); } +); diff --git a/irssi/irssi.sh b/irssi/irssi.sh new file mode 100755 index 0000000..7881d46 --- /dev/null +++ b/irssi/irssi.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env sh + +mkdir -p ~/.irssi/scripts/autorun +cd ~/.irssi/scripts/autorun +wget https://scripts.irssi.org/scripts/nickcolor.pl +wget https://scripts.irssi.org/scripts/adv_windowlist.pl +wget https://scripts.irssi.org/scripts/timezones.pl +wget https://scripts.irssi.org/scripts/seen.pl +wget https://scripts.irssi.org/scripts/colorize_nicks.pl +wget https://scripts.irssi.org/scripts/cubes.pl +wget https://scripts.irssi.org/scripts/dim_nicks.pl +wget https://scripts.irssi.org/scripts/hilite_url.pl +wget https://scripts.irssi.org/scripts/messages_bottom.pl +wget https://scripts.irssi.org/scripts/nm2.pl +wget https://scripts.irssi.org/scripts/savecmdhist.pl +wget https://scripts.irssi.org/scripts/sb_position.pl +wget https://scripts.irssi.org/scripts/trackbar.pl + +cp ./config ~/.irssi/config +cp ./solarized-powerline.theme ~/.irssi/solarized-powerline.theme +cp ./startup ~/.irssi/startup diff --git a/irssi/solarized-powerline.theme b/irssi/solarized-powerline.theme new file mode 100644 index 0000000..c214262 --- /dev/null +++ b/irssi/solarized-powerline.theme @@ -0,0 +1,419 @@ +# vim: set expandtab: +# (Adapted from solarized-universal theme by Huy Z: https://github.com/huyz/irssi-colors-solarized) +# Adaped by: Paul Saunders +# later adapted by: Farzad Sadeghi https://github.com/terminaldweller +# When testing changes, the easiest way to reload the theme is with /RELOAD. +# This reloads the configuration file too, so if you did any changes remember +# to /SAVE it first. Remember also that /SAVE overwrites the theme file with +# old data so keep backups. + +# TEMPLATES: + +# The real text formats that irssi uses are the ones you can find with +# /FORMAT command. Back in the old days all the colors and texts were mixed +# up in those formats, and it was really hard to change the colors since you +# might have had to change them in tens of different places. So, then came +# this templating system. + +# Now the /FORMATs don't have any colors in them, and they also have very +# little other styling. Most of the stuff you need to change is in this +# theme file. If you can't change something here, you can always go back +# to change the /FORMATs directly, they're also saved in these .theme files. + +# So .. the templates. They're those {blahblah} parts you see all over the +# /FORMATs and here. Their usage is simply {name parameter1 parameter2}. +# When irssi sees this kind of text, it goes to find "name" from abstracts +# block below and sets "parameter1" into $0 and "parameter2" into $1 (you +# can have more parameters of course). Templates can have subtemplates. +# Here's a small example: +#   /FORMAT format hello {colorify {underline world}} +#   abstracts = { colorify = "%G$0-%n"; underline = "%U$0-%U"; } +# When irssi expands the templates in "format", the final string would be: +#   hello %G%Uworld%U%n +# ie. underlined bright green "world" text. +# and why "$0-", why not "$0"? $0 would only mean the first parameter, +# $0- means all the parameters. With {underline hello world} you'd really +# want to underline both of the words, not just the hello (and world would +# actually be removed entirely). + +# COLORS: + +# You can find definitions for the color format codes in docs/formats.txt. + +# There's one difference here though. %n format. Normally it means the +# default color of the terminal (white mostly), but here it means the +# "reset color back to the one it was in higher template". For example +# if there was /FORMAT test %g{foo}bar, and foo = "%Y$0%n", irssi would +# print yellow "foo" (as set with %Y) but "bar" would be green, which was +# set at the beginning before the {foo} template. If there wasn't the %g +# at start, the normal behaviour of %n would occur. If you _really_ want +# to use the terminal's default color, use %N. + +############################################################################# +# https://irssi.org/documentation/settings/#a_d + +# 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 +# (dark grey by default) +replaces = { "[]=" = "%_$*%_"; }; + +abstracts = { +  ## +  ## generic +  ## + +  # text to insert at the beginning of each non-message line +  # %N = terminal default (e.g. white on transparent) +  # %G = brightgreen (Solarized: base01, i.e. darkest gray) +  #line_start = "%N%W %N"; +  line_start = "%N"; + +  # timestamp styling, nothing by default +  # %N%8 = reverse normal (to match line_start) +  timestamp = "%N%k%z005f87%9$*%9%N%Z005f87%n"; + +  # any kind of text that needs hilighting, default is to bold +  hilight = "%_$*%_"; + +  # any kind of error message +  error = "%r$*%n"; + +  # channel name is printed +  channel = "%Z00af00$*%n"; + +  # nick is printed +  nick = "%Zeeeeee{nickcolor $*}"; +  mynick = "%Zeeeeee{nickcolor $*}"; +  inick = "%Zeeeeee{nickcolor $*}";     # Inverted +  imynick = "%Zeeeeee{nickcolor $*}";   # Inverted + +  # nick host is printed +  # (that's the "email" address of a user) +  nickhost = "%Z005f5f$*"; + +  # server name is printed +  server = "%Z00af00$*"; +  iserver = "%9%Zeeeeee%z00af00$*%9%n"; + +  # some kind of comment is printed +  comment = " $*"; + +  # reason for something is printed (part, quit, kick, ..) +  reason = "$*"; + +  # mode change is printed ([+o nick]) +  mode = "%N%0%p$*%n"; + +  ## +  ## channel specific messages +  ## + +  # highlighted nick/host is printed (joins) +  # %c = cyan (Solarized: cyan) +  # %G = brightgreen (Solarized: base01) +  # NOTE: %n doesn't work in irssi v0.8.15 for some reason.  So we have to end with the same color as line_start +  channick_hilight = "%Z00af00$*%G"; +  chanhost_hilight = "%Z00af00{nickhost $*}%N"; + +  # nick/host is printed (parts, quits, etc.) +  channick = "%Z00af00$*%G"; +  chanhost = "%Z00af5f{nickhost $*}%N"; + +  # highlighted channel name is printed +  # SOLARIZED: Channels are Green +  channelhilight = "%N%0%g$*%N"; +  ichannelhilight = "%z005f87$*%n%0"; + +  # ban/ban exception/invite list mask is printed +  # %R = brightred (Solarized: orange) +  # %n = return +  ban = "%R$*%n"; + + +  ## +  ## messages +  ## + +  # the basic styling of how to print message, $0 = nick mode, $1 = nick +  msgnick = "%z005f87%Zeeeeee $0%Zeeeeee{nick $1-} %Zeeeeee"; + +  # message from you is printed. "msgownnick" specifies the styling of the +  # nick ($0 part in msgnick) and "ownmsgnick" specifies the styling of the +  # whole line. + +  # Example1: You want the message text to be green: +  #  ownmsgnick = "{msgnick $0 $1-}%g"; +  # Example2.1: You want < and > chars to be yellow: +  #  ownmsgnick = "%Y{msgnick $0 $1-%Y}%n"; +  #  (you'll also have to remove <> from replaces list above) +  # Example2.2: But you still want to keep <> grey for other messages: +  #  pubmsgnick = "%K{msgnick $0 $1-%K}%n"; +  #  pubmsgmenick = "%K{msgnick $0 $1-%K}%n"; +  #  pubmsghinick = "%K{msgnick $1 $0$2-%n%K}%n"; +  #  ownprivmsgnick = "%K{msgnick  $*%K}%n"; +  #  privmsgnick = "%K{msgnick  %R$*%K}%n"; + +  # $0 = nick mode, $1 = nick +  # %3 = yellow +  ownmsgnick = "%z5f5fff%k{%z5f5fff%9 $0$1-%9}%N%0%Z5f5fff %Zeeeeee"; +  ownnick = "%Zeeeeee$*"; + +  # public message in channel, $0 = nick mode, $1 = nick +  pubmsgnick = "%z005f87%k%Zeeeeee{%Zeeeeee%z005f87msgnick $0$1-}%N%Z005f87 %n"; +  pubnick = "%Zeeeeee$*"; + +  # public message in channel meant for me, $0 = nick mode, $1 = nick +  # %5 = magenta +  pubmsgmenick = "%5%k%Z0087ff{msgnick $0$1-}%N%m %n"; +  menick = "%Zeeeeee$*"; + +  # public highlighted message in channel +  # $0 = highlight color, $1 = nick mode, $2 = nick +  pubmsghinick = " %z005f87%k%z005f87{%Zeeeeee%z005f87msgnick $1 %Zeeeeee$2-}%N%Z005f87 %n"; + +  # channel name is printed with message +  # This is printed whenever the channel name is printed for disambiguation, e.g. +  # while there is a query in the same window.  Example: <+funnyuser:#test> hello +  msgchannel = "%z005f5f%k:$*%n"; + +  # private message, $0 = nick, $1 = host +  # TODO: To test for Solarized +  privmsg = " %m$0%G<%n$1-%G>%n "; + +  # private message from you, $0 = "msg", $1 = target nick +  # TODO: To test for Solarized +  ownprivmsg = " %Z005f87$0%G<%Z005f87$1-%G>%n "; + +  # own private message in query +  ownprivmsgnick = "%z5f5fff%k{%z5f5fff%9 $*%9}%N%Z5f5fff %C"; +  ownprivnick = "%k$*"; + +  # private message in query +  # NOTE: for some reason, we gotta handle both the nick & msg on in this line +  privmsgnick = "%5%k{msgnick $*}%N%m %n"; + +  ## +  ## Actions (/ME stuff) +  ## + +  # used internally by this theme +  action_core = "%N%k %n$*"; + +  # generic one that's used by most actions +  action = "{action_core %_$*%n} "; + +  # own action, both private/public +  ownaction = "%N%k {mynick $0}%N%C $1-"; + +  # own action with target, both private/public +  # NOTE: to test: /action NICK farted.  (This will tell NICK that you farted) +  #   This is like a /me but only you and NICK will see +  ownaction_target = "{action_core $0}%G:%y$1%n "; + +  # private action sent by others +  # %M = brightmagenta (Solarized: violet) +  pvtaction = "%m (*) $*%n "; +  pvtaction_query = "{action $*}"; + +  # public action sent by others +  pubaction = "%N%k {nick $0}%N $1-"; + + +  ## +  ## other IRC events +  ## + +  # whois +  whois = "%k%z005f87WHOIS %N%k%#%N $[8]0  %Y$1-"; + +  # notices +  ownnotice = "%1%k %k$0 %k%1%8%0 {ichannelhilight $1-} %k%z00af5f%N "; +  notice = "%1%k %k$0- %r%0%N "; +  #notice = "%1%w %W$* %k%8%n "; +  pubnotice_channel = "{ichannelhighlight $*}"; +  #pubnotice_channel = "%G%n$*"; +  pvtnotice_host = " %k%n {hickhost $*}"; +  servernotice = "%1%k %k!$* %k%8%n "; + +  # CTCPs +  ownctcp = "%k%z005f87 %k$0%G %N%Z005f87 %Z005f87$1-%G  "; +  ctcp = "%N%k%n %Zeeeeee$*%n"; + +  # wallops +  wallop = "%c$*%n: "; +  wallop_nick = "%n$*"; +  wallop_action = "%c * $*%n "; + +  # netsplits +  netsplit = "%r$*%n"; +  netjoin = "%g$*%n"; + +  # /names list +  names_prefix = "%N%k%n"; +  names_nick = " %G%_$0%_$1-%N  "; +  names_nick_op = " %k%_$0$_$1-%n  "; +  names_nick_halfop = " %Y$_$0$_$1-%n  "; +  names_nick_voice = " %C$_$0$_$1-%n  "; +  names_users = "%k%z005f87 $* %Z005f87%0%n"; +  names_channel = " %k$*"; + +  # DCC +  dcc = "%N%k%n %g$*%n"; +  dccfile = "%_$*%_"; + +  # DCC chat, own msg/action +  dccownmsg = "[%Z005f87$0%G($1-%G)%n] "; +  dccownnick = "%Z005f87$*%n"; +  dccownquerynick = "%c$*%n"; +  dccownaction = "{action $*}"; +  dccownaction_target = "{action_core $0}%G:%c$1%n "; + +  # DCC chat, others +  dccmsg = " %g$1-%G($0%G)%n "; +  dccquerynick = "%g$*%n"; +  dccaction = "%c (*dcc*) $*%n %|"; + +  ## +  ## statusbar +  ## + +  # default background for all statusbars. You can also give +  # the default foreground color for statusbar items. +  # NOTE: if all the other overriding settings below are set, this only seems to affect +  #   the content parts of the adv_windowlist.  Default seems to be blue +  # NOTE: if not set, the default background seems to be %w%4 = white on blue +  sb_background = "%k%z1c1c1c"; + +  # default backround for "default" statusbar group +  # NOTE: this impacts the statusbar of an inactive window and the edges of adv_windowlist +  # %7 = white (wich looks gray on a regular terminal with white bg) +  sb_default_bg = "%Z005fff"; + +  # background for topicbar at the top (defaults to sb_default_bg) +  sb_topic_bg = "%W%0"; + +  # background for the statusbar of active window. You can also give +  # the foreground color. +  # %2 = green +  sb_window_bg = "%k%0"; + +  # background for prompt / input line +  sb_prompt_bg = "%k"; +  # background for info statusbar +  # %8 = reverse window +  # TODO: To test for Solarized +  sb_info_bg = "%z1c1c1c"; + +  # text at the beginning of statusbars. sb-item already puts +  # space there,so we don't use anything by default. +  sbstart = "%z005f00%9"; +  # text at the end of statusbars. Use space so that it's never +  # used for anything. +  sbend = "%9%n"; + +  topicsbstart = "{sbstart $*}"; +  topicsbend = "{sbend $*}"; + +  prompt = "%9%k%z005f87$c $* %N%Z005f87%9%n "; + +  # This controls each part of a statusbar, including the outer brackets of adv_windowlist +  sb = "$*"; +  # The mode is next to your NICK and the channel +  sbmode = "%p$*%k"; +  sbaway = "%Z00af00%k%z00af00 zZzZzZzZ %Z00af00%0"; +  sbservertag = "%Z00af00 $0 %Z005f87(change with ^X)%n"; +  sbnickmode = "%Zeeeeee$0"; + +  # activity in statusbar + +  # ',' separator between the window numbers +  # %g = green (same color as the active statusbar so we dont' see it) +  sb_act_sep = "%Z005fff+"; +  # normal text +  # This also affects the color of the window with activity in adv_windowlist +  sb_act_text = "%C$*"; +  # public message (ordinary messages) +  sb_act_msg = "%c$*"; +  # hilight (when people actually chat) +  # This also affects the color of the window with direct message in adv_windowlist +  sb_act_hilight = "%m$*"; +  # hilight with specified color, $0 = color, $1 = text +  sb_act_hilight_color = "%R$1-"; + +  ### For usercount.pl script + +  sb_usercount = "{sb $0 users %Z005f87(%n$1-%Z005f87)}"; +  sb_uc_ircops = "%k*%n$*"; +  sb_uc_ops = "%y@%n$*"; +  sb_uc_halfops = "%p%%%n$*"; +  sb_uc_voices = "%Z005f87+%n$*"; +  sb_uc_normal = "%k %n$*"; +  sb_uc_space = "%K·%n"; + +  ### For adv_windowlist.pl script + +  # Mentioned in adv_windowlist but not default_theme +  sb_act_none = "$*"; +}; + +formats = { +  "fe-common/core" = { +    daychange         = "           %g-----%k-%W-%n Day changed to %%D %W-%k-%g-----%n"; +    join              = "%k%z00af5fJOIN %8 {ichannelhilight $2} %0%Z00d700%0 {inick $0}%0 %N%8%n%k%N {chanhost_hilight $1}"; +    line_start_irssi  = "%k%zff0000IRSSI%N%Zff0000 %N"; +    new_topic         = "%k%z00d700TOPIC %8 {ichannelhilight $1} by {inick $0}%8  $2"; +    nick_changed      = "%k%z00d700RENAME %Z00d700%0 {nick $0} %Zff8700 {nick $1} %N%8%n%k%N"; +    part              = "%k%z00d700PART %8 {ichannelhilight $2}%N %0%Z005f87 %N{inick $0}%0 %k%Zeeeeee {reason $3}"; +    quit              = "%0%Z005f00%k%z005f00QUIT %N {inick $0}%0 %Zeeeeee %N%n%k%N {reason $2}"; +    your_nick_changed = "%k%z00d700RENAME %Z00d700%0 {mynick $0} %Zff8700 {mynick $1} %N%8%n%k%N"; +  }; +  "fe-common/irc" = { +    away                 = "%k%z00d700AWAY %N%k%N"; +    banlist              = "%p%z00d700BANS %z00d700 $[-3]0 %8 {ichannelhilight $1} %N%8%n%k%N {ban $2}"; +    banlist_long         = "%p%z00d700BANS %z00d700 $[-3]0 %8 {ichannelhilight $1} {comment by {inick $3}%0%k, $4 secs ago} %N%8%n%k%N {ban $2}"; +    chanmode_change      = "%k%z008700MODE %N%Z008700%N {channelhilight $0} %Zeeeeee%n {mode $1}%n by {nick $2}"; +    channel_created      = "%k%N Channel {channelhilight $0} created $1"; +    channel_mode         = "%k%N mode/{channelhilight $0} {mode $1}"; +    ctcp_default_reply   = "%W%0%N $0- "; +    ctcp_ping_reply      = "%k%z005f87 CTCP {hilight PING} reply %n%Z005f87%N {nick $0} %y%N%n $1.$[-3.0]2 seconds "; +    ctcp_reply           = "%k%z005f87 CTCP {hilight $0} reply %n%Z005f87%N {nick $1} %y%N $2 "; +    ctcp_reply_channel   = "%k%z005f87 CTCP {hilight $0} reply %n%Z005f87%N {nick $1} %y%N {channel $3} %y%N $2"; +    ctcp_requested       = "%k%z005f87%8%8 CTCP {hilight $2} from {mynick $4} %n%Z005f87%N by {hilight $0} {comment $1} %y%N $3"; +    default_event        = "%N%k %N%n$1"; +    default_event_server = "%k%z00d700$0 %N%k %N%n$1"; +    ebanlist             = "%p%z00d700BANS %k exception %8 {ichannelhilight $0} %N%8%n%k%N {ban $1}"; +    ebanlist_long        = "%p%z00d700BANS %k exception %8 {ichannelhilight $0} {comment by {inick $2}%0%k, $3 secs ago} %N%8%n%k%N {ban $1}"; +    end_of_who           = "%z00d700%kWHO %N%k%N END"; +    end_of_whois         = "%z00d700%kWHOIS %N%k%N END"; +    end_of_whowas        = "%z00d700%kWHOWAS %N%k%N END"; +    netsplit             = "%k%1%8%8 NETSPLIT %k%0%8 {iserver $0} %z00d700%8 {iserver $1}%8 %N%8%n%k%N Quits: $2"; +    netsplit_join        = "%k%1 NETSPLIT %k%8%N Joins: $0"; +    netsplit_join_more   = "%k%1 NETSPLIT %k%8%N Joins: $0 (+$1 more)"; +    netsplit_more        = "%k%1%8%8 NETSPLIT %k%0%8 {iserver $0} %z00d700%8 {iserver $1}%8 %N%8%n%k%N Quits: $2 (+$3 more, use /NETSPLIT to show all of them)"; +    no_topic             = "%k%N No topic set for {channelhilight $0}"; +    own_ctcp             = "%k%z005f87 CTCP {hilight $2-}  {inick $0} %n%Z005f87%N"; +    server_chanmode_change = "%k%1 SERVERMODE %k%8 {channelhilight $0} {mode $1} by {nick $2}"; +    topic                = "%k%z00d700TOPIC %Z00d700%0%N {channel $0}%N  $1"; +    topic_info           = "%k%z00d700TOPIC %Z00d700%0%N {nick $0}%N {nickhost $2}  $1"; +    unaway               = "%k%z00d700AWAY %N%k%N END"; +    usermode_change      = "%z008700%ZeeeeeeMODE %N%Z008700%N {mode $0}%N for %0{mynick $1}%N"; +    who                  = "%z00d700%kWHO %z005f87%k {inick $[!9]1} %Z005f87 %k$0 %0%g Status: $[!3]2  $[-2]3 hops %N%k%N {nickhost $4@$5} {comment $6}"; +    whois                = "%z00d700%kWHOIS %N%k%n {nick $0} {nickhost $1@$2}%:{whois ircname $3}"; +    whowas               = "%z00d700%kWHOWAS %N%k%n {nick $0} {nickhost $1@$2}%:{whois was $3}"; +  }; +  "Irssi::Script::adv_windowlist" = { +    awl_display_header        = ""; +    awl_display_key           = "  %0$N  $H$C$S  %n"; +    awl_display_key_active    = "%9%W%Z008700%0%8 %zeeeeee$N  $H$C$S%8 %0%8%8%9%n"; +    awl_display_key_visible   = "%Z005fff %m$N %k $H$C$S %8%8%n"; +    awl_display_nokey         = "  %0$N  %U$C%U  %n"; +    awl_display_nokey_active  = "%k%z005f87 %k$N %k %U$C%U %8%8%n"; +    awl_display_nokey_visible = "%k%z5f5fff %m$N %k %U$C%U %8%8%n"; +    awl_separator             = ""; +  }; +}; diff --git a/irssi/startup b/irssi/startup new file mode 100644 index 0000000..e18f450 --- /dev/null +++ b/irssi/startup @@ -0,0 +1,11 @@ +/load proxy +/SET use_proxy ON +/SET proxy_address 192.168.1.108 +/SET proxy_port 3128 +/SET -clear proxy_string +/SET proxy_string_after conn %s %d +/EVAL SET proxy_string CONNECT %s:%d HTTP/1.0\n\n +/SET -clear proxy_password + +/connect irc.freenode.net +/connect OFTC | 
