# vim: set expandtab:
# vim: filetype=perl
# (Adapted from solarized-universal theme by Huy Z: https://github.com/huyz/irssi-colors-solarized)
# Adaped by: Paul Saunders https://github.com/darac/irssi-powerline
# later adapted by: terminaldweller(https://terminaldweller.com)
# 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 = { "[]=" = "%Z0087ff$*%n"; };

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$*%N%Z005f87%n";

  # any kind of text that needs hilighting, default is to bold
  hilight = "$*";

  # any kind of error message
  error = "%Zff8700$*%n";

  # channel name is printed
  channel = "%Z00af00$*%n";

  # nick is printed
  # nick = "%z005f87%Zeeeeee{nickcolor $*}";
  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 = "%Zeeeeee%z00af00$*%n";

  # some kind of comment is printed
  comment = "%Zff8700  %N $*";

  # 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 = "%zff5f00$*%0%Zff5f00%n";


  ##
  ## messages
  ##

  # the basic styling of how to print message, $0 = nick mode, $1 = nick
  msgnick = "%Z005f00%Zeeeeee{nick $0$1-}%N%Z005f00%0%Z005f5f";

  # 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 $0$1-}%N%0%Z5f5fff %Z005f5f";
  ownmsgnick = "%z005f5f%k%Zeeeeee%k$chatnet%Z005f5f%z5f8787%k$C%z5f5fff%Z5f8787%Zeeeeee%9{%Zeeeeee%z5f5fffmsgnick $0$1-}%N%Z5f5fff%z5f8787%Z5f8787%z005f5f%Z005f5f%0%N %Z005f5f";
  ownnick = "%Zeeeeee$* %Z005f5f";

  # public message in channel, $0 = nick mode, $1 = nick
  pubmsgnick = "%z005f5f%k%Zeeeeee%k$chatnet%Z005f5f%z5f8787%k$C%z005f87%Z5f8787%Zeeeeee{%Zeeeeee%z005f87msgnick $0$1-}%N%Z005f87%z5f8787%Z5f8787%z005f5f%Z005f5f%0%N %Z005f5f";
  pubnick = "%Zeeeeee$* %Z005f5f";

  # public message in channel meant for me, $0 = nick mode, $1 = nick
  # %5 = magenta
  # pubmsgmenick = "%Z005f00%z005f00%k$chatnet$C{msgnick $0$1-}%N%Z005f00 %Z005f5f";
  pubmsgmenick = "%z005f5f%k%Zeeeeee%k$chatnet%Z005f5f%z5f8787%k$C%z005f00%Z5f8787%Zeeeeee%9$0$1%Z005f00%z5f8787%N%Z5f8787%z005f5f%Z005f5f%0%N %Z005f5f";
  menick = "%Zeeeeee$* %Z005f5f";

  # public highlighted message in channel
  # $0 = highlight color, $1 = nick mode, $2 = nick
  # pubmsghinick = " %z005f87%k%z005f87$chatnet/$C/{%Zeeeeee%z005f87msgnick$1 %Zeeeeee$2-}%N%Z005f87 %Z005f5f";
  pubmsghinick = " %z005f5f%k%Zeeeeee%k$chatnet%Z005f5f%z5f8787%k$C%z005f87%Z5f8787%Zeeeeee{%Zeeeeee%z005f87msgnick $0$1 %Zeeeeee$2-}%N%Z005f87%z5f8787%Z5f8787%z005f5f%Z005f5f%0%N %Z005f5f";

  # 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 = " %Z005f00$0%G<%n$1-%G>%n %Z005f87";

  # private message from you, $0 = "msg", $1 = target nick
  # TODO: To test for Solarized
  ownprivmsg = " %Z005f87$0%G<%Z005f87$1-%G>%n %Z005f87";

  # own private message in query
  ownprivmsgnick = "%z5f5fff%k{%z5f5fff $*}%N%Z5f5fff %Z005f87";
  ownprivnick = "%k$*";

  # private message in query
  # NOTE: for some reason, we gotta handle both the nick & msg on in this line
  # privmsgnick = "%5%k{ %5%k msgnick %m%0%N  $*}%N%m %n";
  privmsgnick = "%z005f00%k{%z005f00%k %z005f00%k $*}%N%Z005f00 %n %Z005f87";

  ##
  ## Actions (/ME stuff)
  ##

  # used internally by this theme
  action_core = "%N%k%z5f8787 %9$*%Z5f8787";

  # generic one that's used by most actions
  action = "{action_core $*%n} ";

  # own action, both private/public
  ownaction = "%N%k%z5f8787 %9{mynick $0}%N%Z5f8787%N$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 = "%Z5f875f (*) $*%N ";
  pvtaction_query = "{action $*}";

  # public action sent by others
  pubaction = "%N%Z5f875f {nick $0}%N%Z5f875f $1-";


  ##
  ## other IRC events
  ##

  # whois
  whois = "%k%z005f87WHOIS %0%Z005f87%N%#%N $[8]0  %Y$1-";

  # notices
  ownnotice = "%z5f87af%k %k$0 %k%z5f87af%8%0%9 {ichannelhilight $1-} %k%Z00af5f ";
  notice = "%z5f87af%k %k$0- %Z5f87af%0%N ";
  # notice = "%1%w %W$* %k%8%n ";
  # pubnotice_channel = "{ichannelhighlight $*}";
  pubnotice_channel = "%G%n$*";
  # the typo is intentional
  pvtnotice_host = " %k%n %9{hickhost $*} ";
  servernotice = "%z5f87af%k %9%k!$* %k%8%n ";

  # CTCPs
  ownctcp = "%k%z005f87 %k$0%G %N%Z005f87 %Z005f87$1-%G  ";
  ctcp = "%N%k%z5f5f00%Z5f5f00%0%n %Zeeeeee$*%z5f5f00%k%Z5f5f00%0%n";

  # wallops
  wallop = "%k%4%9 $*%0%b%N ";
  wallop_nick = "%z00afff%b%9%k$* %4%Z00afff ";
  wallop_action = "%Z005f00%Z00afff * $*%N ";

  # netsplits
  netsplit = "%z5f5fd7$*%n";
  netjoin = "%g$*%n";

  # /names list
  names_prefix = "%N%k%n";
  names_nick = " %G$0$1-%N  ";
  names_nick_op = " %g$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";
  # text at the end of statusbars. Use space so that it's never
  # used for anything.
  sbend = "%n";

  topicsbstart = "{sbstart $*}";
  topicsbend = "{sbend $*}";

  prompt = "%k%z005f87%9$c $*%w%k$R%w%k$S%w%k$N%w%k$T %N%Z005f87%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 = "%Z5f5fff$*%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%9/";
  # sb_act_sep = "%Z005f00";
  # 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 = "%N%Z5f5fff%9$*%N";
  # hilight with specified color, $0 = color, $1 = text
  sb_act_hilight_color = "%N$0$1-%N";

  # For usercount.pl script
  sb_usercount = "%Z000000%z005faf%Z000000%z005faf{sb $0 nicks %Zeeeeee %Z000000$1-%Z005faf%z000000}%N";
  sb_uc_ircops = "%Z000000%z005faf*$*";
  sb_uc_ops = "%Z000000%z005faf@$*";
  sb_uc_halfops = "%Z000000%z005faf%%$*";
  sb_uc_voices = "%Z000000%z005faf+$*";
  sb_uc_normal = "$*";
  sb_uc_space = " ";

  # For adv_windowlist.pl script
  # Mentioned in adv_windowlist but not default_theme
  sb_act_none = "%K$*";

  # for dcc stats
  # $0 = sb_ds_short(_waiting)/sb_ds_normal(_waiting)
  sb_dccstat = "{sb $0-}";
  # $0 = G/S
  # $1 = filename
  # $2 = transfer speed
  # $3 = percent
  # $4 = progressbar
  sb_ds_short = "$0%G:%n$1%Y@%n$2kB/s%G:%n$4%G:%n$3";
  # $0 = G/S
  # $1 = filename
  # $2 = to/from
  # $3 = nick
  sb_ds_short_waiting = "$0%G:%n$1 $2 $3 waiting";
  # $0 = GET/SEND
  # $1 = nick
  # $2 = filename
  # $3 = transferred amount
  # $4 = full filesize
  # $5 = percent
  # $6 = speed
  # $7 = ETA
  # $8 = progressbar
  # $9 = rotator thingy :)
  sb_ds_normal = "$0 $1: '$2' $3 of $4 [$8] $9 ($5) $6kB/s ETA: $7";
  # $0 = GET/SEND
  # $1 = nick
  # $2 = filename
  # $3 = full filesize
  # $4 = to/from
  # $5 = nick
  sb_ds_normal_waiting = "$0 $1: '$2' $3 $4 $5 waiting";
  sb_ds_separator = "  ";
};

formats = {
  "fe-text" = {
    lastlog_start = "%Zaf5f5f%zaf5f5f%k%9Lastlog%9%Zaf5f5f%0";
    lastlog_end = "%Zaf5f5f%0%zaf5f5f%k%9Lastlog%9%0%Zaf5f5f";
    lastlog_separator = "%Zaf5f5f%zaf5f5f%k%Zaf5f5f%0";
    lastlog_date = "%g<<%%F>> ";
  };
  "fe-common/core" = {
    daychange = "           %Zd7ff5f%0%zd7ff5f%k%Zd7ff5f%0%k%zd7ff5f %9 Day changed to %%D %9 %Zd7ff5f%0%zd7ff5f%k%Zd7ff5f%0";
    join = "%k%z00af5fJOIN %8 {ichannelhilight $2} %0%Z00d700%0 {inick $0}%0 %N {chanhost_hilight $1}";
    line_start_irssi = "%k%z5f5fd7IRSSI%N%Z5f5fd7 %N";
    new_topic = "%k%z00afffTOPIC %8 {ichannelhilight $1} %wby {inick $0} %N%9%Z5f5fd7  $2";
    nick_changed = "%k%z00d700RENAME %Z00d700%0 %k%z005f87{nick $0} %Zff8700 {nick $1}%Z005f87%0%N";
    part = "%K%Z00d700%k%z00d700PART %8 {ichannelhilight $2}%N %0%Z005f87 %N{inick $0}%0 %Z005f87%Zeeeeee {reason $3}";
    quit = "%0%Z005f00%k%z005f00QUIT %N {inick $0}%0%Z005f87 %N%n%k%N {reason $2}";
    your_nick_changed = "%k%z00d700RENAME %Z00d700%0 %k%z005f87{mynick $0} %Zff8700 {mynick $1}%Z005f87%0%N";
    own_msg = "$nickcolor$nickalign{ownmsgnick $2 {ownnick $[.15]0}}$1";
    own_msg_channel = "$nickcolor$nickalign{ownmsgnick $3 {ownnick $[.15]0}{msgchannel $1}}$2";
    own_msg_private_query = "$nickcolor$nickalign{ownprivmsgnick {ownprivnick $2}}$1";
    pubmsg_me = "$nickalign{pubmsgmenick $2 {menick $[.15]0}}$1";
    pubmsg_me_channel = "$nickalign{pubmsgmenick $3 {menick $[.15]0}{msgchannel $1}}$2";
    pubmsg_hilight = "$nickalign{pubmsghinick $0 $3 $[.15]1}$2";
    pubmsg_hilight_channel = "$nickalign{pubmsghinick $0 $4 $[.15]1{msgchannel $2}}$3";
    pubmsg = "{pubmsgnick $2 {pubnick \00309$[0]0}}$1";
    pubmsg_channel = "$nickcolor$nickalign{pubmsgnick $3 {pubnick $[.15]0}{msgchannel $1}}$2";
    msg_private_query = "$nickcolor$nickalign{privmsgnick $0}$2";
    servertag = "%k%z008787%9$0%0%Z008787%N ";
    tls_ephemeral_key = "EDH Key:%Z5f87ff {hilight $0} bit {hilight $1}";
    tls_ephemeral_key_unavailable = "EDH Key: %Z5f87ff{error N/A}";
    tls_pubkey = "Public Key: %Z5f87ff{hilight $0} bit {hilight $1}, valid from {hilight $2} to {hilight $3}";
    tls_cert_header = "Certificate Chain:";
    tls_cert_subject = "  Subject: %Z5f87ff{hilight $0}";
    tls_cert_issuer = "  Issuer: %Z5f87ff {hilight $0}";
    tls_pubkey_fingerprint = "Public Key Fingerprint: %Z5f87ff {hilight $0} ({hilight $1})";
    tls_cert_fingerprint = "Certificate Fingerprint: %Z5f87ff{hilight $0} ({hilight $1})";
    tls_protocol_version = "Protocol: %Z5f87ff{hilight $0} ({hilight $1} bit, {hilight $2})";
  };
  "fe-common/irc" = {
    away = "%k%z00d700AWAY %Z00d700%0%N";
    banlist = "%k%z005f00BANS %z005f00 $[-3]0 %8 %z005f00{ichannelhilight $1} %k%N {ban $2}";
    banlist_long = "%k%z005f00BANS %z005f00 $[-3]0 %8 %z005f00{ichannelhilight $1} {comment by {inick $3}%0%k,%Z005f00 $4 secs ago} %N {ban $2}";
    chanmode_change = "%k%z00af87MODE %N%Z00af87%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 = "%k%z005f00BANS %k exception %8 %z005f00{ichannelhilight $0} %N {ban $1}";
    ebanlist_long = "%k%z005f00BANS %k exception %8 {ichannelhilight $0} %z005f00{comment by {inick $2}%0%k, $3 secs ago} %N {ban $1}";
    end_of_who = "%z00d700%kWHO %Z00d700%0%N END";
    end_of_whois = "%z00d700%kWHOIS %Z00d700%0%N END";
    end_of_whowas = "%z00d700%kWHOWAS %Z00d700%0%N END";
    netsplit = "%0%Z8787ff%z8787ff%k NETSPLIT %z8787ff%Z00af00%z00af00%k {iserver $0}  {iserver $1} %Z00af00%0%Z8787ff Quits: $2";
    netsplit_join = "%k%z8787ff NETSPLIT %k%8%N Joins: $0";
    netsplit_join_more = "%k%z8787ff NETSPLIT %k%8%N Joins: $0 (+$1 more)";
    netsplit_more = "%0%Z8787ff%z8787ff%k NETSPLIT %z8787ff%Z00af00%z00af00%k {iserver $0}  {iserver $1} %Z00af00%0%Z8787ff 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%z8787ff SERVERMODE %k%8%N%g {channelhilight $0} %g {mode $1} by {nick $2}";
    topic = "%k%z00d700TOPIC %Z00d700%0%N {channel $0}%N  $1";
    topic_info = "%k%z00d700TOPIC %Z00d700%0%N {nick $0}%N {nickhost $2}  $1";
    unaway = "%k%z00d700AWAY %Z00d700%0%N END";
    usermode_change = "%k%z5fafd7%ZeeeeeeMODE %N%Z5fafd7%N {mode $0}%N for %0{mynick $1}%N";
    who = "%z00d700%kWHO %Z00d700%z005f87 %z005f87%k{inick $[!9]1} %Z005f87%2 %k$0 %0%g Status: $[!3]2  $[-2]3 hops %N%g%N {nickhost $4@$5} {comment $6}";
    whois = "%z00d700%kWHOIS %Z00d700%z005f87 {nick $0} %Z005f87%0 {nickhost $1@$2}%:{whois ircname $3}";
    whowas = "%z00d700%kWHOWAS %Z00d700%z005f87 {nick $0} %Z005f87%0 {nickhost $1@$2}%:{whois was $3}";
    own_action = "$nickalign{ownaction $0$nicktrunc}$1";
    action_private = "$nickalign{pvtaction $[.15]0$nicktrunc}$2";
    action_private_query = "$nickalign{pvtaction_query $[.15]0$nicktrunc}$2";
    action_public = "$nickalign{pubaction $[.15]0$nicktrunc}$1";
    notice_server = "{servernotice $0}$1";
    notice_public = "{notice $0{pubnotice_channel $1}}$2";
    notice_private = "{notice $0{pvtnotice_host $1}}%Z00af87$2%N";
  };
  "Irssi::Script::adv_windowlist" = {
    awl_display_header = "";
    awl_display_key = "%0%Z005fff$N  $H[$Q]$C$S %N";
    awl_display_key_active = "%9%k%z005f00 $N $H[$Q]$C$S %N%Z005f00%N";
    awl_display_key_visible = "%k%z005fff $N  $H[$Q]$C$S %N%Z005fff%N";
    awl_display_nokey = "%0%Z005faf$N  $H[$Q]$C$S %N";
    awl_display_nokey_active = "%9%k%z005f87 $N $H[$Q]$C$S %N%Z005f87%N";
    awl_display_nokey_visible = "%k%z005fff $N  $H[$Q]$C$S %N%Z005fff%N";
    awl_separator = "";
  };
  "Irssi::Script::usercount" = {
    sb_usercount = "%9%z00af5f{sb $0 nicks ($1-)}";
    sb_uc_ircops = "%9%z00d787*$*";
    sb_uc_ops = "%9%z00d787@$*";
    sb_uc_halfops = "%9%z00d787%%$*";
    sb_uc_voices = "%9%z00af5f+$*";
    sb_uc_normal = "$*";
    sb_uc_space = " ";
  };
  "Irssi::Script::nm2" = {
    neat_pad_char = " ";
    neat_style = ",cpt,,,,,,,";
    neat_custom_modes = "&%B&%n%Zeeeeee | @%g@%n%Zeeeeee | +%y+%n%Zeeeeee";
    neat_truncate_char = "~";
    neat_notruncate_char = "";
  };
  "Irssi::Script::mh_sbsplitmode" = {
    mh_sbsplitmode_line = "%Zaf5f87{server $0}: $1 {comment $2}";
    mh_sbsplitmode_line_no_detail = "%Zaf5f87{server $0}: %Zaf5f87 {error $1}";
    mh_sbsplitmode_info = "%Zaf5f87{server $0} $1 {hilight splitmode}";
    mh_sbsplitmode_info_details = "%Zaf5f87{server $0} $1 {hilight splitmode} {comment $2}";
    mh_sbsplitmode_error = "%Zaf5f87{error $0}";
  };
  "otr/core" = {
    otr_stb_plaintext = "{sb %yplaintext%N}";
    otr_stb_finished = "{sb %yfinished%n}";
    otr_stb_unknown = "{sb {hilight state unknown (BUG!)}}";
    otr_stb_untrusted = "{sb %pOTR%n (%runverified%n)}";
    otr_stb_trust = "{sb %GOTR%n}";
  };
};
