vt/ansi codes

abc at ai1.anchorage.mtaonline.net abc at ai1.anchorage.mtaonline.net
Tue Jul 1 00:29:20 PDT 2003


i am trying to develop terminal I/O based code,
and found myself meandering down a path
to acquire terminal knowledge (i don't
need to be told of SLang/ncurses/...).

i can't readily find an answer to this, but
i am assuming DEC terminals don't scroll left/right?
i've never used a "terminal", so i wouldn't know.

there are ANSI escape codes that would be great to use,
but from the knowledge i have been able to acquire, it
appears vtXXX stuff is a fairly "lacking" subset of
ANSI 3.64 terminal display functions.  there's many
aspects of ANSI 3.64 that would make display updates
over serial connections MUCH more efficient than
using vtXXX only codes.  any comments providing
a better understanding about this would be
appreciated - cuz i'd hate to write a bunch
of inefficient code just to find out i *could*
scroll left/right with an ANSI escape sequence, etc.

my goal is to generate a minimal set of
reliable cross-platform ANSI escape codes
one can use without fear of incompatibility.
maybe this is an impossibility - i dunno - but
there are a few sequences that seem to permeate
most data sheets.

as i read that this ANSI stuff was done way
back in 1979 - before i bought my Apple 2e,
i can't help but "gawk" with disbelief as
i find UNIX vtXXX terminal stuff to still be
fairly primitive a quarter century later.
i mean, an entire screen shouldn't have to
be sent over a serial line just to move a
cursor past the rightmost column in 2003 :)

also, i assume:

    ioctl.h     struct winsize, and
    termios.h   struct termios

are available in one form or another on most
platforms?  is the "RAW" termios state
a cross-platform state?  or is it a
BSD specific state?

thank you (please ditto any replies off-list).


More information about the freebsd-questions mailing list