Special Text Highlighting Techniques

Although EPIC is a text-based irc client, it still has many ways of marking text such that it stands out from the rest. The simplest kinds of text highlighting are boldface, underline, and reverse video. They work simply by surrounding the desired text with the appropriate control characters:

Char Input Name Description
^B B BOLD toggles boldfacing on/off
^C C COLOR begins a color code sequence
^E E ALT_CHAR toggles alternate character set on/off
^F F BLINK toggles blinking video on/off
^S S ND_SPACE inserts a non-destructive space
^V V REVERSE toggles reverse video on/off
^_ _ UNDERLINE toggles underlining on/off
^O O ALL_OFF turns off all highlighting

The “char” is the default keybinding for the desired effect; ^B means control-b, etc. The “input” is how the character appears if typed on the input line. The “name” is how the effect is referred to with set mangle_display and set mangle_logfiles and so on. You can suppress the effect by including it in the set value.

All highlight characters, including color, are always guaranteed to be cumulative. In older versions, turning certain highlight characters on or off might (or might not) turn off other highlight characters, in unpredictable ways. EPIC5 guarantees cumulative behavior.

BOLD + COLOR The foreground color is made “bright”
REVERSE + COLOR Foreground color and background color are swapped
BLINK + COLOR The background color is made “bright”

However, although EPIC supports this, not all terminal emulators do. No, really. If your terminal emulator doesn't show bold/reverse/blink along with colors, check with another emulator before deciding EPIC is behaving wrongly.

For legacy reasons, EPIC also supports the use of ANSI escape sequences. Historically, this was used by preformatted “ascii art”. A description of ascii art is beyond the scope of this document. If set mangle_display contains NORMALIZE (and it does by default), ansi escape sequences are converted into things that are supported by EPIC, or stripped out if they are not supported by EPIC.

Colors

The color code character control-C is followed by one or two comma-separated numbers. The first number sets the text color. The second number, if any, sets the background color. None of the other characters take an argument.

All color numbers are converted into a canonical color number 0 to 7, and unconditionally turn bold (for fg colors) and blink (for bg colors) on or off.

Canonical Color Color Name
0 Black
1 Red
2 Green
3 Yellow
4 Blue
5 Magenta
6 Cyan
7 White
Code Canonical Color Bold/Blink
0 7 Yes
1 0 No
2 4 No
3 2 No
4 1 Yes
5 1 No
6 5 No
7 3 No
8 3 Yes
9 2 Yes
10 6 No
11 6 Yes
12 4 Yes
13 5 Yes
14 0 Yes
15 7 No
16 7 Yes
30 0 (fg only) No
31 1 (fg only) No
32 2 (fg only) No
33 3 (fg only) No
34 4 (fg only) No
35 5 (fg only) No
36 6 (fg only) No
37 7 (fg only) No
40 0 (bg only) No
41 1 (bg only) No
42 2 (bg only) No
43 3 (bg only) No
44 4 (bg only) No
45 5 (bg only) No
46 6 (bg only) No
47 7 (bg only) No
50 0 Yes
51 1 Yes
52 2 Yes
53 3 Yes
54 4 Yes
55 5 Yes
56 6 Yes
57 7 Yes

It is important to note that if you want to set the background color but leave the foreground color alone, you omit the foreground color:

 ^C,47        (set the background to white)