[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

24 bit colour support request.

From: Антон Кочков
Subject: 24 bit colour support request.
Date: Thu, 11 Feb 2016 17:13:20 +0300

Good day!
All I wanted is to ask for 24bit (truecolor) color support. Here is
copy-paste from my gist, tracking the support among various console
programs (
As you can see, it is now pretty widely adopted, and screen is a one
of major players of console world, lacking truecolor support:


Truecolour escape codes doesnt uses a colour palete. It just specifies
the colour itself.

Here's a test case:

printf "\x1b[38;2;255;100;0mTRUECOLOR\x1b[0m\n"

or just run this:

awk 'BEGIN{
    s="/\\/\\/\\/\\/\\"; s=s s s s s s s s;
    for (colnum = 0; colnum<77; colnum++) {
        r = 255-(colnum*255/76);
        g = (colnum*510/76);
        b = (colnum*255/76);
        if (g>255) g = 510-g;
        printf "\033[48;2;%d;%d;%dm", r,g,b;
        printf "\033[38;2;%d;%d;%dm", 255-r,255-g,255-b;
        printf "%s\033[0m", substr(s,colnum+1,1);
    printf "\n";

Keep in mind that it is possible to use both ';' and ':' as parameters

According to Wikipedia[1], this is only supported by xterm and konsole.


Currently, there is no support for the 24-bit colour descriptions in
the terminfo/termcap database and utilites. See the discussion thread

Here are terminals discussions:

Now supporting truecolour

st (from suckless) [delimeter: semicolon] -
konsole [delimeter: colon, semicolon] -
iterm2 [delimeter: colon, semicolon] - only in the nighties
qterminal [delimeter: semicolon] -
Tera Term [delimeter: colon, semicolon] - Windows platform
ConEmu [delimeter: semicolon] - Windows platform
FinalTerm [delimeter: semicolon] - abandoned, iTerm2 borrowing it's
ideas and features.
mintty [delimeter: semicolon] Cygwin and MSYS/MSYS2 since commit
(2.0.1 release) - Windows platform
all libvte based terminals (since 0.36 version) [delimeter: colon,
semilocon] -

libvte-based Gnome Terminal
libvte-based sakura
libvte-based Terminator - use GTK+3 version.
libvte-based Lilyterm - since commit
libvte-based ROXTerm
libvte-based evilvte - no release yet, version from git
libvte-based Termit
libvte-based Termite
libvte-based Tilda
libvte-based tinyterm
libvte-based lxterminal - with --enable-gtk3 configure flag.
libvte-based mlterm - with --with-gtk=3.0 configure flag

But there are bunch of libvte-based terminals for GTK2 so they are
listed in the another section.

Parsing ANSI colour sequences, but approximating them to 256 palette

xterm (though doing it wrong: "it uses nearest colour in RGB colour
space, with a usualfalse assumption about orthogonal axes")
linux console (since v3.16):

Note about colour differences: a) RGB axes are not orthogonal, so you
cannot use sqrt(R^2+G^2+B^2) formula, b) for colour differences there
is more correct (but much more complex) CIEDE2000 formula (which may
easily blow up performance if used blindly) [2].


NOT supporting truecolour

urxvt (patched version [3] available) -
Terminology (E17) -
mrxvt (looks abandoned) -
aterm (looks abandoned) -
fbcon (from linux kernel) -
FreeBSD console -
PuTTY (patched version [4] {xterm-like approximation to 256 colors}
and [5] {real true colors} available) - Windows platform
libvte and GTK2 - based:

libvte-based GTKTerm2
libvte-based stjerm (looks abandoned) -
libvte-based xfce4-terminal - will be solved automatically since Xfce
slowly migrating to the GTK+3

[3] You can download patched version here

[4] You can download patched version here

[5] You can download patched version here

Terminal multiplexers

tmux - has support since 427b820...
dvtm - not yet supporting True Colour
pymux - tmux clone in pure Python (to enable truecolour run pymux with
--truecolor option)

Here are another console programs discussions:

Supporting True Colour:

irssi -
neovim -
elinks -
(./configure --enable-true-color)
s-lang library - (since
pre2.3.1-35, for 64bit systems)

Not supporting True Colour:

mutt -
mc - - demo
patches attached
ncurses library -
termbox library -
mcabber -
emacs -
vim -
tig -

Best regards,
Anton Kochkov.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]