aboutsummaryrefslogtreecommitdiffstats
path: root/.irssi/solarized-universal.theme
blob: d7fcdcd689d3f913b77e5768f65936616930cb6e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# irssi theme for the Solarized color palette
# (Adapted from default theme distributed with irssi 0.8.15 circa 2011-04-25)
#
# Adaptation by: Huy Z
# Source: https://github.com/huyz/irssi-colors-solarized
#

# 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.

#############################################################################

# 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
  # %G = brightgreen (Solarized: base01, i.e. darkest gray)
  # %| probably right-aligns
  line_start = " %G-!- ";

  # timestamp styling, nothing by default
  # %Y = brightyellow (Solarized: base00, i.e. 2nd darkest gray)
  timestamp = "%Y$*%n";

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

  # any kind of error message, default is bright red
  # %r = red
  error = "%r$*%n";

  # channel name is printed
  channel = "%_$*%_";

  # nick is printed
  nick = "%_$*%_";

  # nick host is printed
  # (that's the "email" address of a user)
  nickhost = "<$*>";

  # server name is printed
  server = "%_$*%_";

  # some kind of comment is printed
  comment = "($*)";

  # reason for something is printed (part, quit, kick, ..)
  reason = "{comment $*}";

  # mode change is printed ([+o nick])
  mode = "{comment $*}";

  ##
  ## channel specific messages
  ##

  # highlighted nick/host is printed (joins)
  # %c = cyan
  # 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 = "%C$*%n";
  channick_hilight = "%c$*%G";
  chanhost_hilight = "{nickhost $*}";

  # nick/host is printed (parts, quits, etc.)
  #channick = "%c$*%n";
  channick = "$*";
  chanhost = "{nickhost $*}";

  # highlighted channel name is printed
  channelhilight = "%c$*%n";

  # ban/ban exception/invite list mask is printed
  # %R = brightred (Solarized: orange)
  ban = "%R$*%n";

  ##
  ## messages
  ##

  # the basic styling of how to print message, $0 = nick mode, $1 = nick
  msgnick = "%_<%_$0$1-%_>%_ %|";

  # 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
  ownmsgnick = "{msgnick $0 $1-}%b";
  ownnick = "%b$*%n";

  # public message in channel, $0 = nick mode, $1 = nick
  pubmsgnick = "{msgnick $0 $1-}";
  pubnick = "%N%_$*%_%n";

  # public message in channel meant for me, $0 = nick mode, $1 = nick
  pubmsgmenick = "{msgnick $0 $1-}";
  # %m = magenta
  menick = "%m$*%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
  # 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 = "%G:%c$*%n";

  # private message, $0 = nick, $1 = host
  # TODO: To test for Solarized
  #privmsg = "[%m$0%K<%M$1-%K>%n] ";
  privmsg = "[%m$0%G<%n$1-%G>%n] ";

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

  # own private message in query
  ownprivmsgnick = "{msgnick  $*}%b";
  ownprivnick = "%b$*%n";

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

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

  # used internally by this theme
  action_core = "%_*%n $*";

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

  # own action, both private/public
  ownaction = "{action_core %b$*%n} ";

  # 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
  # TODO: To test for Solarized
  ownaction_target = "{action_core $0}%G:%b$1%n ";

  # private action sent by others
  # TODO: To test for Solarized
  # %M = brightmagenta (Solarized: violet)
  pvtaction = "%M (*) $*%n ";
  pvtaction_query = "{action $*}";

  # public action sent by others
  pubaction = "{action $*}";


  ##
  ## other IRC events
  ##

  # whois
  whois = "%# $[8]0 : $1-";

  # notices
  # TODO: To adapt for Solarized
  ownnotice = "[%b$0%G(%b$1-%G)]%n ";
  notice = "%G-%M$*%G-%n ";
  pubnotice_channel = "%G:%m$*";
  pvtnotice_host = "%G(%m$*%G)";
  servernotice = "%g!$*%n ";

  # CTCPs
  # TODO: To adapt for Solarized
  ownctcp = "[%b$0%G(%b$1-%G)] ";
  ctcp = "%g$*%n";

  # wallops
  wallop = "%c$*%n: ";
  wallop_nick = "%n$*";
  wallop_action = "%c * $*%n ";

  # netsplits
  netsplit = "%r$*%n";
  netjoin = "%g$*%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 = "[%g$*%n]";
  names_channel = "%c$*%n";

  # DCC
  dcc = "%g$*%n";
  dccfile = "%_$*%_";

  # DCC chat, own msg/action
  #dccownmsg = "[%r$0%K($1-%K)%n] ";
  dccownmsg = "[%b$0%G($1-%G)%n] ";
  dccownnick = "%b$*%n";
  dccownquerynick = "%c$*%n";
  dccownaction = "{action $*}";
  dccownaction_target = "{action_core $0}%G:%c$1%n ";

  # DCC chat, others
  #dccmsg = "[%G$1-%K(%g$0%K)%n] ";
  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
  # %4 = blue
  sb_background = "%k%6";

  # 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 = "%k%7";

  # 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%2";

  # background for prompt / input line
  sb_prompt_bg = "%n";
  # background for info statusbar
  # %8 = reverse window
  # TODO: To test for Solarized
  sb_info_bg = "%8";

  # text at the beginning of statusbars. sb-item already puts
  # space there,so we don't use anything by default.
  sbstart = "";
  # text at the end of statusbars. Use space so that it's never
  # used for anything.
  sbend = " ";

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

  prompt = "$c$*%n> ";

  # This controls each part of a statusbor, including the outer brackets of adv_windowlist
  sb = " $* %M|%n";
  # The mode is next to your NICK and the channel
  # %Y = brightyellow (Solarized: base00, i.e. 2nd darkest gray)
  sbmode = "%b(%n+$*%b)%n";
  sbaway = " (%GzZzZ%n)";
  # %Y = brightyellow (Solarized: base00, i.e. 2nd darkest gray)
  sbservertag = ":$0 %b(change with ^X)%n";
  sbnickmode = "$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 = "%g$*";
  # normal text
  # This also affects the color of the window with activity in adv_windowlist
  sb_act_text = "%w$*";
  # public message (ordinary messages)
  sb_act_msg = "%R$*";
  # 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 = "$0$1-%n";

  ### For usercount.pl script

  #sb_usercount = "{sb %_$0%_ nicks ($1-)}";
  sb_usercount = "{sb %_$0%_ users %Y(%n$1-%Y)%n}";
  sb_uc_ircops = "%k*%n$*";
  sb_uc_ops = "%k@%n$*";
  sb_uc_halfops = "%k%%%n$*";
  sb_uc_voices = "%k+%n$*";
  sb_uc_normal = "$*";
  #  sb_uc_space = " ";

  ### For adv_windowlist.pl script

  # Mentioned in adv_windowlist but not default_theme
  #sb_act_none = "%0%W";
};

formats = {
  "fe-common/core" = {
    daychange = "           %g-----%w-%W-%n Day changed to %%D %W-%w-%g-----%n";
  };
};