[comp.unix.wizards] How does vi know?

exspes@gdr.bath.ac.uk (P E Smee) (10/25/89)

Vi 'knows' whether you are on a screen terminal or a (paper or glass) tty,
and comes up differently depending.  Question is, how does it know?  I've
more or less decided (by experimenting with elm and vi) that curses
alone is not sufficient to answer the question.  I've done a 'strings vi'
and determined that vi does *not* contain a coded-in list of terminal
types.

I surmise that vi checks for the presence or absence of certain particular
termcap capabilities using one of the tget* functions.  Is this right?
If so, which particular termcap capabilities does it check?  If not,
what *does* it do?  (Owing to our Unix root's interpretation of our
license, he won't let me look at our src dirs.  Not even if I promise
not to give him any IBM CMS source in return.  On the one small Unix on
which I am root, we don't have a source licence.  Sigh.)

Replies by email would be fine, to save general net bandwidth.    

-- 
 Paul Smee               |    JANET: Smee@uk.ac.bristol
 Computer Centre         |   BITNET: Smee%uk.ac.bristol@ukacrl.bitnet
 University of Bristol   | Internet: Smee%uk.ac.bristol@nsfnet-relay.ac.uk
 (Phone: +44 272 303132) |     UUCP: ...!mcvax!ukc!gdr.bath.ac.uk!exspes

cpcahil@virtech.uucp (Conor P. Cahill) (10/26/89)

In article <1989Oct25.095349.22098@gdt.bath.ac.uk>, exspes@gdr.bath.ac.uk (P E Smee) writes:
> Vi 'knows' whether you are on a screen terminal or a (paper or glass) tty,
> and comes up differently depending.  Question is, how does it know?  I've

Part of this is your $TERM definition and part of it is due to your baud 
setting in your tty settings.  if the baud rate is below a certain threshold
vi goes into a special mode so that it doesn't spend years redrawing a full
screen.


-- 
+-----------------------------------------------------------------------+
| Conor P. Cahill     uunet!virtech!cpcahil      	703-430-9247	!
| Virtual Technologies Inc.,    P. O. Box 876,   Sterling, VA 22170     |
+-----------------------------------------------------------------------+