NetBSD-Bugs archive

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

lib/44109: curses does not support full colour



>Number:         44109
>Category:       lib
>Synopsis:       curses does not support full colour
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    lib-bug-people
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Thu Nov 18 06:10:00 +0000 2010
>Originator:     David A. Holland
>Release:        NetBSD 5.99.39 (20101117)
>Organization:
>Environment:
System: NetBSD valkyrie 5.99.39 NetBSD 5.99.39 (VALKYRIE) #16: Wed Nov 17 
16:50:52 EST 2010  
ocelot@valkyrie:/home/ocelot/netbsd/vfs/namei/sys/arch/amd64/compile/VALKYRIE 
amd64
Architecture: x86_64
Machine: amd64
>Description:

Curses does not let you use arbitrary RGB colors. The color support is
limited to the first 8 of the 16 DOS console colors from ANSI.SYS. As
most of these colors are ugly (particularly in combinations) this
makes it more or less impossible to take advantage of color in
text-based user interfaces.

>How-To-Repeat:

Try to improve the on-screen information density of a curses app by
using color. Watch your eyes fall out.

>Fix:

Not so trivial, even just on the client API side.

Ideally it would be possible to give each character its own RGB color
value; however, curses doesn't have enough attribute bits available.
This seems to suggest some kind of indexed colormap scheme, but then
one needs an API for managing the colormap, etc., etc. (And an 8 color
colormap almost certainly wouldn't be enough.)

I'm not sure what if any support the common terminal emulators have
for colors that aren't the ANSI.SYS colors. However, as we control the
console and can patch xterm if we want to, this should not be
construed as a barrier...



Home | Main Index | Thread Index | Old Index