---
name: "swirc.theme"
section: "5"
platform: "linux"
package: "swirc"
version: "3.5.4-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/swirc.theme"
---

# swirc.theme(5)

how to write themes for swirc

## NAME

**swirc.theme** – how to write themes for swirc

## DESCRIPTION

This manual page is the ultimate reference to consult when writing themes to [swirc(1)](/swirc/1.md).

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

## SETTING TYPES

See [swirc.conf(5)](/swirc.conf/5.md).

## 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)](/use_default_colors/3.md).

- **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)](/strftime/3.md).

- **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*)

  ## FILES

- *~/.swirc/default.thm*

  default theme

## SEE ALSO

[swirc(1)](/swirc/1.md), [swirc.conf(5)](/swirc.conf/5.md)

## AUTHORS

This manual page was written by Markus Uhlin ⟨*markus@nifty-networks.net*⟩

## CAVEATS

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