V10/ncurses/terminfo/virtual.ti

# # VIRTUAL - nonexistent terminals emulated in software.
#	@(#)virtual.ti	1.3 (MRH) 2/10/83
#
# This category is used for terminals people "make up" in software
# that do not represent a particular piece of hardware.  This includes
# standards, such as the ANSI standard, as well as emulator programs
# that accept a particular set of escape sequences.
#
# ANSI is a vanilla ANSI terminal.  This is assumed to implement all the
# normal ANSI stuff with no extensions.  It assumes insert/delete line/char
# is there, so it won't work with vt100 clones.  It assumes video
# attributes for bold, blink, underline, and reverse, which won't
# matter much if the terminal can't do some of those.  Padding is
# assumed to be zero, which shouldn't hurt since xon/xoff is assumed.
# We assume a 24x80 screen.  This entry was derived from the Ann Arbor
# Ambassador, and is untested.
ansi|generic ansi standard terminal,
	cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E[L, am, cub1=^H, ed=\E[J,
	el=\E[K, clear=\E[H\E[J, cup=\E[%i%p1%d;%p2%dH, cols#80, lines#24,
	dch1=\E[P, dl1=\E[M, home=\E[H,
	ich=\E[%p1%d@, ich1=\E[@, smir=\E6, rmir=\E6,
	bold=\E[1m, rev=\E[7m, blink=\E[5m, invis=\E[8m, sgr0=\E[0m,
	sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m,
	kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D, kcuf1=\E[C, khome=\E[H, kbs=^H,
	cuf1=\E[C, ht=^I, cuu1=\E[A, xon, rep=%p1%c\E[%p2%{1}%-%db,
	rmul=\E[m, smul=\E[4m, rmso=\E[m, smso=\E[7m,
# Bare minimum ANSI terminal.  This should work on anything, but beware
# of screen size problems and memory relative cursor addressing.
minansi|minimum ansi standard terminal,
	cr=^M, cud1=^J, ind=^J, bel=^G, am, cub1=^H,
	el=\E[K, clear=\E[H\E[J, cup=\E[%i%p1%d;%p2%dH, cols#80, lines#24,
	home=\E[H,
# This terminal type is for ANSI terminals with ONLY memory relative cursor
# addressing and more than one page of memory.  It uses local motions
# instead of direct cursor addressing, and makes almost no assumptions.
# It does assume auto margins, no padding and/or xon/xoff, and a 24x80 screen.
mransi|mem rel cup ansi,
	cr=^M, ind=^J, bel=^G, am, xon,
	el=\E[K, clear=\E[H\E[J, cols#80, lines#24,
	cud1=\E[B, cub1=\E[D, cuf1=\E[C, cuu1=\E[A,
# Columbus UNIX virtual terminal.  This terminal also appears in UNIX 4.0
# and successors as line discipline 1 (?), but is undocumented and does
# not really work quite right.
virtual|cbunix|cb-unix|cb-unix virtual terminal,
	cr=^M, cud1=^J, ind=^J, bel=^G, cols#80, lines#24, am, clear=\E\112,
	cub1=^H, cup=\EG%p2%c%p1%c, cuf1=\E\103, cuu1=\E\101, el=\E\113,
	ed=\E\114, il1=\E\120, dl1=\E\116, ich1=\E\117, lm#0, da, db,
	kcub1=\ED, kcuf1=\EC, kcuu1=\EA, kcud1=\EB, khome=\EE,
	smso=\Ea\004, rmso=\Eb\004, smul=\Ea\001, rmul=\Eb\001,
# This terminal is based on virtual but cleans up a few problems with
# control characters in parameter strings.  It is implemented in
# mrh's window manager.
pty|4bsd pty terminal,
	smso=\Ea$, rmso=\Eb$, smul=\Ea!, rmul=\Eb!,
	cup=\EG%p1%' '%+%c%p2%' '%+%c, use=virtual,
# A dumb terminal with 1 line which is a fake status line.
# This is useful to run sysline in in a multi-window environment.
1line|one line window,
	cr=^M, ind=^J, cols#80, lines#1, am, tab=^I, cub1=^H,
	hs, tsl=\n, fsl=, dsl=,
# 1linepty is like 1line but the 1 line window is smarter,
# with standout, cursor addressing, and clear to eol.
1linepty|1 line window in a pty,
	smso=\Ea$, rmso=\Eb$, smul=\Ea!, rmul=\Eb!,
	cup=\EG%p1%' '%+%c%p2%' '%+%c, tsl=\r\EK\EG %p2%' '%+%c,
	eslok, use=1line,
# Dummy terminal variants for debugging curses and vi.
# This is an adm3a style terminal with no clreol.
debug|debug no clreol with blit,
	el@, il1@, dl1@, il@, dl@, use=blit,