Terminfo() -- Ideas needed.

H}vard Eidnes H_Eidnes%vax.runit.unit.uninett at nta-vax.arpa
Wed May 21 06:39:40 AEST 1986


>> 4) I didn't notice it in the description, has anyone standardized means
>>    of drawing boxes in both berkley and system V?  (I don't mean drawing
>>    random lines, but replacing building boxes out of |, +, and - chars.

In response to this, Tony L. Hansen writes:

> One of the terminfo strings is named acs_chars (a.k.a terminfo "acsc" or
> termcap "ac").  It has defined within it what the alternate line drawing
> character set is for that terminal. With those characters and the
> enter/exit_acs_mode strings, very nice boxes and other graphics may be
> drawn.
> [ goes on to describe how this is done ]

I think the method to describe line-drawing capabilities is far too
Vt100-specific. Not all terminals use "shift-in" and "shift-out" to
switch between character sets. For instance, the terminal I currently
use, has only a "single-shift" command (ESC N), valid for the next
character only to select character sets. I once tried to define this
terminal using an "extended" termcap, using this method for selection
of character sets. First, I had to define the shift-in and shift-out
sequences to be non-null (the termcap package refused to use
semi-graphics otherwise), so I set these up to send padding
characters only to the terminal. Next, I defined each of the entries
for the line-drawing capabilities to include the single-shift
sequence, but alas, the termcap package assumed that only a single
character would be needed... So I had to revert to using +, - and !
(remember, I'm from Scandinavia, and "|" is "reserved for national
extensions"...).

What I would like, is to have a more general way to define
semi-graphics, that allowed non-vt100-lookalikes to be defined also.

As for terminfo vs. termcap, I think terminfo is superiour in
generality (because of the "programmable" parameter setting). But
then again, termcap is general enough to describe most terminals...



More information about the Comp.unix mailing list