Writing themes

This manual page is the ultimate reference to consult when writing themes for Swirc.

TEXT DECORATION

What Hex Octal Appearance
Blink 1d 035 ^]
Bold 02 002 ^B
Color 03 003 ^C
Normal 0f 017 ^O
Reverse 16 026 ^V
Underline 1f 037 ^_

Example usage:

	blabla ^Bbold text^B blabla
	blabla ^Vreversed text^V blabla
	blabla ^_underlined text^_ blabla

Always use the literal control characters because else it won't work!

Blink is a no operation because it's annoying.

COLORS

Number Name  
00 white  
01 black  
02 blue (navy)
03 green  
04 red  
05 brown (maroon)
06 purple  
07 orange (olive)
08 yellow  
09 lt.green (lime)
10 teal (a kinda green/blue cyan)
11 lt.cyan (cyan ?) (aqua)
12 lt.blue (royal)
13 pink (light purple) (fuchsia)
14 grey  
15 lt.grey (silver)

For the colors 16-99 see the output of the command /colormap. Enough color pairs must've been initialized. (193 color pairs are too few for the colors 16-99 to be used as backgrounds.)

The syntax of the color attribute in text has the format ^CN[,M]. N will be the text (foreground) color and M the background color. A background color (M) is optional and is not always included.

N and M can maximally be two digits long. Although the colors {0,1,2,...,9} are supported you are highly encouraged to use {00,01,02,...,09}.

A plain ^C can be used to turn the color effect off. While typing ^O will make sure ALL the text effects gets reset. For example:

	blabla ^C05,02red text on blue background^C blabla
	blabla ^C09green text^O blabla

Of course settings can start with colored text and a closing ^C is not essential.

SETTINGS

term_background (int)
Which background color (0-15) is this theme written for?
	0 = white
	1 = black
    
term_enable_colors (bool)
Enable colors (yes/no)?
    
term_use_default_colors (bool)
Use terminal's default colors? I.e. call use_default_colors(3).
    
color3, color4 (string)
Colors used in uncategorized contexts. Must begin with ^C.
    
gfx_failure, gfx_success, gfx_warning (string)
Used in contexts where to flag failures, successes and warnings respectively.
    
left_bracket, right_bracket (string)
Left and right bracket. Frequently used.
    
logo_color (string)
Swirc ASCII logo color displayed at startup. (Must begin with ^C.)
    
nick_s1, nick_s2 (string)
When you or another user types something the nickname will be enclosed by s1 and s2.
    
nicklist_my_nick_color, nicklist_nick_color, nicklist_privilege_color, nicklist_vline_color (int)
Nicklist decoration. All of these settings are of type int (0-99) thus ^C is not needed and should not be used.
    
notice_color1, notice_color2 (string)
Notice colors. ^C should be used.
    
notice_lb, notice_rb, notice_sep (string)
Notice left/right bracket and separator.
    
notice_inner_b1, notice_inner_b2 (string)
Notice inner bracket 1 and 2. (I.e. left and right.)
    
primary_color, secondary_color (string)
Primary and secondary color for the theme. Frequently used. (Begin with ^C.)
    
slogan (string)
Swirc slogan displayed in the statusbar.
    
specifier1, specifier2, specifier3 (string)
Specifiers used in various contexts. Number 1 is frequently used.
    
statusbar_bg, statusbar_fg (string)
Statusbar background and foreground. Valid values are black, red, green, yellow, blue, magenta, cyan, white.
    
statusbar_leftBracket, statusbar_rightBracket, statusbar_spec (string)
Statusbar left/right bracket and specifier.
    
time_format (string)
Time format passed to strftime(3).
    
titlebar_bg, titlebar_fg (string)
Titlebar background and foreground. Valid values are black, red, green, yellow, blue, magenta, cyan, white.
    
whois_acc (string)
    
whois_away (string)
    
whois_bot (string)
    
whois_cert (string)
    
whois_channels (string)
    
whois_conn (string)
    
whois_host (string)
    
whois_idle (string)
    
whois_ircName (string)
    
whois_ircOp (string)
    
whois_modes (string)
    
whois_server (string)
    
whois_service (string)
    
whois_ssl (string)
    

CAVEATS

If you want to give color to numbers be sure to use two digits for N nor M!