Subject: Re: CVS commit: src/lib/libcurses
To: None <tech-userlevel@netbsd.org>
From: Julian Coleman <jdc@coris.demon.co.uk>
List: tech-userlevel
Date: 04/06/2003 10:59:48
> Are you sure that swapping them in libcurses is the right thing, as
> opposed to swapping them via termcap/terminfo entries?

Possibly not.  However, our termcap doesn't currently support all the
terminfo % sequences, so we can't do this via termcap.

> In other words, where is the specification of the API for the terminfo
> setb/setf capabilities, or for the termcap Sb/Sf capabilities, and what
> does the specification say?

I've no idea.  I'm not even sure what its proper name is.  If you can find
a copy, that would be helpful.

>                                 Without checking the specification, it's
> impossible to say whether the library was out of conformance, or whether
> the termcap/terminfo database simply was not an accurate description
> of the terminal's behaviour.

From looking at ncurses, irssi and and indirect references via google, it
does seems that the two standards swap the red/blue and yellow/cyan colours.

> If you look at the terminfo man page (supplied by pkgsrc/devel/ncurses),
> there's an example for the "ansi" terminal type that includes the following:
> 
>  setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,

[ Description that swaps 1/4 and 3/6 snipped ]

> The existence of this example strongly suggests to me that the colours
> are supposed to be swapped in the termcap/terminfo description, not in
> the curses library.  But I haven't seen a specification, so I don't
> know.

Indeed.  If we supported the extra sequences in termcap, we could add the
longer entries for colour support.  Several other entries also need this
support.

J

-- 
                    My other computer also runs NetBSD
                          http://www.netbsd.org/