From: Huy Zing Date: Mon, 30 May 2011 12:02:08 +0000 (-0700) Subject: First real check-in of irssi theme X-Git-Url: https://v.licheni.net/stack/conf/irssi-colors-solarized.git/commitdiff_plain/cf11022c98ab6035d9d76738cbd8484a542e6fdc?ds=inline First real check-in of irssi theme Added the irssi theme, the README, and the screenshots. --- diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..93fb363 --- /dev/null +++ b/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2011 Huy Z + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/README.md b/README.md deleted file mode 100644 index e69de29..0000000 diff --git a/README.mkd b/README.mkd new file mode 100644 index 0000000..eea7a3e --- /dev/null +++ b/README.mkd @@ -0,0 +1,304 @@ +Solarized Color Theme for irsii +=============================== + +Initially created by Huy Z , this is a +repository of themes for the [irssi] IRC chat client that support the +[Solarized] color scheme. + +[irssi]: http://www.irssi.org/ +[Solarized]: http://ethanschoonover.com/solarized + +Visit the Solarized homepage +---------------------------- + +See the [Solarized] homepage for screenshots, details and color theme +implementations for terminal emulators and other applications, such as Vim, +Emacs, and Mutt. + +Understanding Solarized Colors in Terminals +------------------------------------------- + +### Solarized Colors vs. ANSI Colors ### + +8-color terminal programs such as irssi use color codes that correspond to the +expected 8 normal ANSI colors. irssi additionally supports bold, which +terminal emulators will usually display by using the *bright* versions of the 8 +ANSI colors and/or by using a bold typeface with a heavier weight. (Note that +different terminal emulators may have slightly different ideas of what color +values to use when displaying the 16 [ANSI color escape +codes](http://en.wikipedia.org/wiki/ANSI_escape_code#Colors)].) + +In order to be displayed by 8-color terminal programs, which cannot specify RGB +values, Solarized must replace the default ANSI colors. Since the Solarized +palette uses 16 colors, not only must this color scheme replace the 8 normal +colors but must also take over the 8 bright colors, for a total of 16 colors. +This means that a Solarized terminal application loses the ability to bold text +but gains 8 more Solarized colors. + +About half of the Solarized palette is reminiscent of the original ANSI +colors, e.g. Solarized red is close to ANSI red (or more precisley, the +general consensus of what ANSI red should look like). But the rest of the +Solarized colors do not correspond to any ANSI colors, e.g. there is no ANSI +color that corresponds to Solarized orange or purple. + +This means that, for example, if the irssi theme wants to display "green", a +Solarized terminal will display something close to green, but if the theme +wants to display "bold yellow" or "bright yellow", a Solarized terminal will +not be able to display it. However, a Solarized theme will be able to display +the new colors orange and purple and also several shades of gray. This is +again thanks to the replacement of the ANSI **bright** colors; e.g. ANSI "bold +red", which is usually displayed as "bright red", will now show as Solarized +orange, while ANSI "bold blue", which is usually displayed as "bright blue", +will now be a shade of gray. + +### Terminal Emulator ### + +Because irssi is an ANSI 8-color terminal program, it is entirely dependent on +the terminal emulator for the display of its colors. You cannot directly tell +an irssi theme to display Solarized orange, e.g. by specifying an RGB value. +Instead, the theme's colors must be chosen using the ANSI color codes with the +expectation that the terminal emulator will display them as appropriate +Solarized colors. For example, the irssi color format `%R` which normally +would be "bold red" is expected to be displayed by the terminal emulator as +Solarized orange. + +So in order for irssi to display the Solarized palette, you have to set your +Terminal emulator's color settings to the Solarized palette. The [Solarized +repository] includes theme settings for some popular terminal emulators as +well as Xdefaults; or you can download them from the official [Solarized +homepage]. If you use the irssi themes *without* having changed your +emulator's palette, you will get a strange selection of colors that may be +hard to read. + +Yes, this means that, to use the Solarized theme for irssi, you need to change +color settings for not one but two different programs: your terminal emulator +and irssi. The two sets of settings will work in concert to display Solarized +colors appropriately. + +### Bold Settings ### + +Historically, there has been a one-to-one correspondence between the bolded +versions of the 8 default ANSI colors and the bright versions of the 8 default +colors. Back in the day, when a color program demanded the display of bold +text, it was probably just easier for terminal emulators to display a brighter +version of whatever color the text was (and expect the user to interpret that +as bold) than to display a typeface with a bold weight + +Nowadays, it is easy for terminal emulators to display bold typefaces, so it +doesn't make sense for bolded text to change color, but the confusing +association remains. In fact, new terminal emulators allow users to break the +correspondence between bold and bright and can simply change the font. + +However, ANSI 8-color terminal applications such as irssi only have a +conception of bold and don't know about the possibility of using up to 16 +colors. So to use all 16 Solarized colors, we change the semantics of "bold" +in the theme to mean that we want to access the 8 new Solarized colors, +including the grays. Recall the example above, where we described that the +irssi color format `%R`, which would have normally displayed bold red, is +expected to show up as Solarized orange. + +This is why it is important to *not* break the association between bold and +bright colors. Many terminal emulators offer an option to disable the use of +bright colors for bold, and you must not do so. Often, new users of Solarized +will be confused when they change their terminal emulator's color palette to +Solarized but haven't yet installed Solarized-specific color themes for all +their terminal applications (e.g. mutt, ls's dircolors, irssi, and their +colorized shell prompts). They will see texts that are hard to read or +disappear entirely. The solution isn't to disable bright colors; the solution +is to install Solarized color themes for all terminal applications and then you +will have all 16 colors. + +Also, because the semantics of "bold" are lost in favor of more colors, it +also makes sense to disable the display of bold text as a bold typeface. It +won't hurt to see bold typefaces wherever the new 8 Solarized colors are +displayed but it doesn't make much sense anymore. + +Universal theme +--------------- + +The first irssi theme, called "universal", was designed to work best with both +Solarized Dark and Light palettes, but also to work under default terminal +colors. In other words, this theme was designed with a "fallback" scenario: if +you happen to find yourself on a terminal where the Solarized palette has not +been set up, you won't have elements become invisible or incrediby hard to +read. + +Thus, this theme has been designed with these 4 palettes in mind: +- Solarized Dark: "universal" works best with this scheme +- Solarized Light: "universal" works almost as well as Solarized Dark (you + probably won't notice the difference, but if you do, it could be optimized + slightly by switching the theme's use of some of the Solarized base colors) +- Default dark-background terminal colors +- Default light-background terminal colors + +This theme was designed to be clean and functional, starting from the default +theme distributed with irssi. Colors are strictly used for functionality and +the number of colors visible is minimized when possible. Colors were selected +based on the characteristics of the text characters to be displayed: +- Visibility generally follows importance, with an attempt to let unimportant + text fade into the background (which is not always possible when supporting + both dark and light backgrounds) +- Loud colors are chosen to call attention to noteworthy messages + +### Supported Scripts ### + +The following third-party scripts are supported: +- [adv\_windowlist.pl](http://anti.teamidiot.de/static/nei/*/Code/Irssi/) +- [usercount.pl](http://scripts.irssi.org/html/usercount.pl.html) +- [trackbar.pl](http://scripts.irssi.org/html/trackbar.pl.html) + +### Screenshots ### + +This is how the "universal" theme for irssi looks under different palettes. +Click images to see screenshots. + +Solarized Dark (this example uses iTerm2 on OS X) +[](https://github.com/huyz/irssi-colors-solarized/raw/master/img/screen-irssi-in-iTerm2-solarized_dark.png) + +Solarized Light (this example uses iTerm2 on OS X) +[](https://github.com/huyz/irssi-colors-solarized/raw/master/img/screen-irssi-in-iTerm2-solarized_light.png) + +Default dark terminal colors (this example uses Apple's Terminal.app on OS X) +[](https://github.com/huyz/irssi-colors-solarized/raw/master/img/screen-irssi-in-Terminal.app-dark.png) + +Default light terminal colors (this example uses iTerm on OS X) +[](https://github.com/huyz/irssi-colors-solarized/raw/master/img/screen-irssi-in-iTerm-light.png) + +Downloads +--------- + +If you have come across these themes via the [irssi-only repository] on github, +you may want to check the main [Solarized repository] to see if there is an +official theme. + +At some point, the [irssi-only repository] may be kept in sync with the main +[Solarized repository] and would then only be preserved separately for +installation convenience only. At this time, issues, bug reports, changelogs +are to be reported at the [irsii-only repository]. + +[Solarized repository]: https://github.com/altercation/solarized +[irsii-only repository]: https://github.com/huyz/irssi-colors-solarized + +Installation +------------ + +1. Make sure that you have changed your terminal emulator's color settings to + the Solarized palette. (See the section "Understanding Solarized Colors in + Terminals" for an explanation.) + + 1. Make sure that bold text is displayed using bright colors. For example, + - For iTerm2 on OS X, this means that Text Preferences must have the "Draw + bold text in bright colors" checkbox *selected*. + - For Apple's Terminal.app on OS X, this means that Text Settings must + have the "Use bright colors for bold text" checkbox *selected*. + + 2. It's recommended to turn off the display of bold typeface for bold text. For + example, + - For iTerm on OS X, this means that Text Preferences should have the + "Draw bold text in bold font" checkbox *unselected*. + - For Apple's Terminal.app on OS X, this means that Text Settings + should have the "Use bold fonts" checkbox *unselected*. + +2. Obtain solarized-universal.theme + + a) Option A: Download `solarized-universal.theme` from [irssi-only repository] + and place it in your ~/.irssi directory + + b) Option B: To always have the latest version, clone the git repository: + + $ git clone git://github.com/huyz/irssi-colors-solarized.git + $ ln -s $PWD/irssi-colors-solarized/solarized-universal.theme ~/.irssi/. + +3. Change your `~/.irssi/config` to include the following settings, while making + sure to replace `YOUR_NICKNAME` with your IRC nickname: + + settings = { + ... + "fe-common/core" = { + ... + # Solarized + theme = "solarized-universal"; + hilight_color = "= %R"; + }; + ... + }; + hilights = ( + { text = "YOUR_NICKNAME"; color = "%M"; nick = "yes"; word = "yes"; } + ); + statusbar = { + ... + items = { + ... + # Solarized + lag = "{sb Lag: %m$0-%n}"; + act = "{sb Act: $0-}"; + more = "%k%3-- more --%n"; + }; + ... + }; + +4. Optionally, if you have the `adv_windowlist.pl` or `trackbar.pl` scripts + installed, modify your `~/.irssi/config` so that: + + settings = { + ... + "perl/core/scripts" = { + ... + ### For Solarized adv_windowlist.pl script + awl_display_key_active = "%k%2[$Q=$N:$C]%n"; + awl_display_nokey_active = "%k%2[$N:$C]%n"; + awl_display_key = "[$Q:$H$C$S]"; + awl_display_nokey = "[$N:$H$C$S]"; + + ### For Solarized trackbar.pl script + trackbar_style = "%B"; + }; + ... + }; + +The Solarized Color Values +-------------------------- + +L\*a\*b values are canonical (White D65, Reference D50), other values are +matched in sRGB space. + + SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B sRGB HSB + --------- ------- ---- ------- ----------- ---------- ----------- ----------- + base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21 + base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26 + base01 #586e75 10/7 brgreen 240 #4e4e4e 45 -07 -07 88 110 117 194 25 46 + base00 #657b83 11/7 bryellow 241 #585858 50 -07 -07 101 123 131 195 23 51 + base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59 + base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63 + base2 #eee8d5 7/7 white 254 #d7d7af 92 -00 10 238 232 213 44 11 93 + base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99 + yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71 + orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80 + red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86 + magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83 + violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77 + blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82 + cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63 + green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60 + +License +------- +Copyright (c) 2011 Huy Z + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/img/screen-irssi-in-Terminal.app-dark-th.png b/img/screen-irssi-in-Terminal.app-dark-th.png new file mode 100644 index 0000000..2ae1f1d Binary files /dev/null and b/img/screen-irssi-in-Terminal.app-dark-th.png differ diff --git a/img/screen-irssi-in-Terminal.app-dark.png b/img/screen-irssi-in-Terminal.app-dark.png new file mode 100644 index 0000000..5b69bdf Binary files /dev/null and b/img/screen-irssi-in-Terminal.app-dark.png differ diff --git a/img/screen-irssi-in-iTerm-light-th.png b/img/screen-irssi-in-iTerm-light-th.png new file mode 100644 index 0000000..02a03a9 Binary files /dev/null and b/img/screen-irssi-in-iTerm-light-th.png differ diff --git a/img/screen-irssi-in-iTerm-light.png b/img/screen-irssi-in-iTerm-light.png new file mode 100644 index 0000000..16a3aa3 Binary files /dev/null and b/img/screen-irssi-in-iTerm-light.png differ diff --git a/img/screen-irssi-in-iTerm2-solarized_dark-th.png b/img/screen-irssi-in-iTerm2-solarized_dark-th.png new file mode 100644 index 0000000..34d95f7 Binary files /dev/null and b/img/screen-irssi-in-iTerm2-solarized_dark-th.png differ diff --git a/img/screen-irssi-in-iTerm2-solarized_dark.png b/img/screen-irssi-in-iTerm2-solarized_dark.png new file mode 100644 index 0000000..f69c936 Binary files /dev/null and b/img/screen-irssi-in-iTerm2-solarized_dark.png differ diff --git a/img/screen-irssi-in-iTerm2-solarized_light-th.png b/img/screen-irssi-in-iTerm2-solarized_light-th.png new file mode 100644 index 0000000..7b5e8f4 Binary files /dev/null and b/img/screen-irssi-in-iTerm2-solarized_light-th.png differ diff --git a/img/screen-irssi-in-iTerm2-solarized_light.png b/img/screen-irssi-in-iTerm2-solarized_light.png new file mode 100644 index 0000000..fe8e387 Binary files /dev/null and b/img/screen-irssi-in-iTerm2-solarized_light.png differ diff --git a/solarized-universal.theme b/solarized-universal.theme new file mode 100644 index 0000000..885c0f6 --- /dev/null +++ b/solarized-universal.theme @@ -0,0 +1,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 = "%w%4"; + + # 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"; + }; +};