# ~/.irssi/default.theme # /usr/share/irssi/themes/default.theme # 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 the /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 the abstract blocks 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 # # i.e. 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. (Yeah? -- EB) # B - blue. Y - yellow, R - red (lowercase for not bright) # 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 the 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. # default foreground color (%N) # -1 is the "default terminal color" # note: %B etc doesn't work # 0 = black # 1 = red (etc.) default_color = "3"; # print timestamp/servertag at the end of line, not at beginning info_eol = "false"; # these characters are automatically replaced with specified color # %K is dark grey; %c, cyan # $* is the colorized char replaces = { "[]=" = "%K$*%n"; }; abstracts = { line_start = ""; timestamp = ""; hilight = "%y$*%n"; error = "%R$*%n"; channel = "%g$*%n"; nick = "$*"; nickhost = "[$*]"; server = "$*"; comment = "[$*]"; reason = "{comment $*}"; # why something is printed (part, quit, ...) mode = "{comment $*}"; # mode change is printed ([+o nick]) ## channel specific messages # highlighted nick/host is printed (joins) channick_hilight = "%C$*%n"; chanhost_hilight = "{nickhost %c$*%n}"; # nick/host is printed (parts, quits, etc.) channick = "%c$*%n"; chanhost = "{nickhost $*}"; # highlighted channel name is printed channelhilight = "%c$*%n"; # ban/ban exception/invite list mask is printed ban = "%c$*%n"; ## messages # the basic styling of how to print messages: # $0 = nick mode # $1 = nick msgnick = "%K<%G$1%K>%n %|"; # "msgownnick" specifies the nick styling ($0 part in msgnick); # "ownmsgnick" specifies the styling of the whole line: # 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"; ownmsgnick = "{msgnick $0 $1-}%g"; ownnick = "$*%n"; # public message in channel pubmsgnick = "{msgnick $0 $1-}"; pubnick = "%B$*%n"; # public message in channel meant for me pubmsgmenick = "{msgnick $0 $1-}%G"; menick = "%B$*%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:%c$*%n"; # private message # $0 = nick, $1 = host privmsg = "[%R$0%K(%r$1-%K)%n] "; # private message from you # $0 = "msg", $1 = target nick ownprivmsg = "[%r$0%K(%R$1-%K)%n] "; # own private message in query ownprivmsgnick = "{msgnick $*}"; ownprivnick = "$*%n"; # private message in query privmsgnick = "{msgnick %R$*%n}"; ## Actions (/ME stuff) # used internally by this theme action_core = "%B* $*%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:%c$1%n "; # private action sent by others pvtaction = " (*) $*%n "; pvtaction_query = "{action $*}"; # public action sent by others pubaction = "{action $*}"; ## other IRC events # whois whois = " %M$[8]0 %g$1-%n"; # notices ownnotice = "[%r$0%K(%R$1-%K)]%n "; notice = "%K-%M$*%K-%n "; pubnotice_channel = "%K:%m$*"; pvtnotice_host = "%K(%m$*%K)"; servernotice = "%g!$*%n "; # CTCPs ownctcp = "[%r$0%K(%R$1-%K)] "; ctcp = "%g$*%n"; # wallops wallop = "$*%n: "; wallop_nick = "%n$*"; wallop_action = " * $*%n "; # netsplits netsplit = "%R$*%n"; netjoin = "%C$*%n"; ## /names list names_prefix = ""; names_nick = "[%c$0%B$1-%n] "; names_nick_op = "{names_nick $*}"; names_nick_halfop = "{names_nick $*}"; names_nick_voice = "{names_nick $*}"; # [Users #channel] names_users = "[%y$*%n]"; names_channel = "%g$*%n"; # DCC dcc = "%g$*%n"; dccfile = "$*"; # DCC chat, own msg/action dccownmsg = "[%r$0%K($1-%K)%n] "; dccownnick = "%R$*%n"; dccownquerynick = "$*%n"; dccownaction = "{action $*}"; dccownaction_target = "{action_core $0}%K:%c$1%n "; # DCC chat, others dccmsg = "[%G$1-%K(%g$0%K)%n] "; dccquerynick = "%G$*%n"; dccaction = " (*dcc*) $*%n %|"; ## statusbar sbstart = " "; sbend = " "; sb_background = "%1%w"; # ... and foreground # activity sb_act_sep = " "; sb_act_text = "$*"; sb_act_msg = "%W$*%n"; sb_act_hilight = "%Y$*%n"; # e.g., /msg sb_act_hilight_color = "$0$1-%n"; # $0 = color, $1 = text # contents sb = " $*"; sbmode = " (+$*)"; sbaway = " (%GzZzZ%n)"; sbservertag = " $0 "; sbnickmode = " $0 "; # sb_default_bg = "%6"; # ? # sb_info_bg = "%8"; # ? ## prompt sb_prompt_bg = "%n"; prompt = " [$*]"; ## topic bar topicsbstart = " {sbstart $*}"; topicsbend = "{sbend $*}"; sb_topic_bg = "%4%w"; }; formats = { "fe-common/irc" = { channel_created = ""; channel_synced = ""; topic = "$1"; topic_info = " - [{nick $0}]"; names = ""; endofnames = ""; }; "fe-common/core" = { names = ""; endofnames = ""; }; };