[comp.emacs] vt220 termcaps for gnu

gildea@ALEXANDER.BBN.COM (Stephen Gildea) (07/22/88)

Here is my vt220/vt240 termcap.  Since your NCR terminal is unlikely to
emulate a vt220 perfectly (the timing will certainly differ), this may
not be quite right for you.

 < Stephen


# vt220 padding originally from JBS.
d0|vt200-80|vt220-80|vt220|vt220-1|VT200 with 80 columns in VT100 mode:\
	:im=\E[4h:ei=\E[4l:ip=3:mi:dc=\E[P:dm=:ed=:al=4\E[L:dl=4\E[M:\
	:ce=\E[K:cl=\E[H\E[J:cd=\E[J:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\
	:AL=1*\E[%dL:DL=1*\E[%dM:DC=\E[%dP:\
	:sf=2^J:sr=2\EM:\
	:tc=vt240-1:
#
ds|vt220-s|vt220-1-s|vt220 with status line.  By gildea@bbn.com:\
	:is=\E<\E[61"p\E F\
\E>\E[m\n\E[A\E7\E[;23r\E[20l\E[?4;5;9;6l\E[?1;7;8h\E8:\
	:i2=\n\E[A\E7\E[;23r\E8:\
	:cd@:cl=\E[23;80H\E[1J\E[;23r:\
	:li#23:hs:es:ts=20\E7\E[24;%i%dH\E[1K:fs=\E[K\E8:\
	:ds=\E7\E[24H\E[K\E8:\
	:tc=vt220-1:
#
# "is" sets ANSI, set VT200 mode, 7-bit ctrls,
# send 7-bit ctrls (redundant), plus usual vt100 stuff
d2|vt220-2|vt-220 in VT200 mode:\
	:is=\E<\E[62;1"p\E F\
\E>\E[m\E7\E[r\E[20l\E[?4;5;9;6l\E[?1;7;8h\E8:\
	:tc=vt220-1:
#
ds|vt220-2-s|vt220 in VT200 mode with status line.  By gildea@bbn.com:\
	:is=\E<\E[62;1"p\E F\
\E>\E[m\n\E[A\E7\E[;23r\E[20l\E[?4;5;9;6l\E[?1;7;8h\E8:\
	:i2=\n\E[A\E7\E[;23r\E8:\
	:cd@:cl=\E[23;80H\E[1J\E[;23r:\
	:li#23:hs:es:ts=\E7\E[24;%i%dH\E[1K:fs=\E[K\E8:\
	:ds=\E7\E[24H\E[K\E8:\
	:tc=vt220-1:
#
# Changing to inverse video or back involves the firmware redrawing the
# screen.  This is too slow, so we don't use it for "vb".
# Runs the terminal in VT100 mode
# \E[61"p puts the VT240 into VT100 mode.  It implies \E[?1l, so use carefully
# "cl" exits 4014 mode and sets 80 cols (which has side-effect of clearing)
d2|vt240|vt240-1|vt-240|DEC VT240 in VT100 mode by mit-erl!gildea 8Oct87:\
	:is=\E<\E[?38l\E[61"p\
\E>\E(B\E)B\E[m\E7\E[r\E[20l\E[?4;5;9;6l\E[?1;7;8h\E8:\
	:al=2*\E[L:AL=2*\E[%dL:\
	:ce=55\E[K:cl=180\E[?38l\E[?3l:cd=45\E[J:cm=1\E[%i%d;%dH:\
	:cs=1\E[%i%d;%dr:dc=\E[P:DC=\E[%dP:dl=2*\E[M:DL=2*\E[%dM:\
	:.dC#5:.dN#10:\
	:ks=\E[?1h\E=:ke=\E>:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
	:im=\E[4h:ei=\E[4l:ip=3:mi:\
	:sf=.7*\ED:sr=1.3*\EM:ti=\E=:te=\E>:\
	:vb@:tc=ansi-base:
#
# 132-column mode.  Note: "in" can't set 132-col mode cuz that
# would clear the screen.
# "cl" exits 4014 mode and sets 132 cols (which has side-effect of clearing)
d2|vt240-w|vt240-1-w|vt-240 in 132-column mode:\
	:cl=180\E[?38l\E[?3h:\
	:co#132:tc=vt240:
#
ds|vt240-s|vt240-1-s|vt240 with status line.  By mit-erl!gildea:\
	:is=\E<\E[?38l\E[61"p\
\E>\E(B\E)B\E[m\n\E[A\E7\E[;23r\E[20l\E[?4;5;9;6l\E[?1;7;8h\E8:\
	:i2=\n\E[A\E7\E[;23r\E8:\
	:cd@:cl=180\E[?38l\E[23;80H\E[1J\E[;23r:\
	:li#23:hs:es:ts=20\E7\E[24;%i%dH\E[1K:fs=\E[K\E8:\
	:ds=\E7\E[24H\E[K\E8:\
	:tc=vt240-1:
#
# "is" sets ANSI, exit 4014 mode, set VT200 mode, 7-bit ctrls,
# send 7-bit ctrls (redundant), plus usual vt100 stuff
d2|vt240-2|vt-240 in VT200 mode:\
	:is=\E<\E[?38l\E[62;1"p\E F\
\E>\E[m\E7\E[r\E[20l\E[?4;5;9;6l\E[?1;7;8h\E8:\
	:tc=vt240-1:
#
ds|vt240-2-s|vt240 in VT200 mode with status line:\
	:is=\E<\E[?38l\E[62;1"p\E F\
\E>\E[m\n\E[A\E7\E[;23r\E[20l\E[?4;5;9;6l\E[?1;7;8h\E8:\
	:tc=vt240-1-s:
#
# 132-column mode.  Note: "in" can't set 132-col mode cuz that
# would clear the screen.
# "cl" exits 4014 mode and sets 132 cols (which has side-effect of clearing)
d2|vt240-2-w|vt-240 in vt200 mode with 132-column mode:\
	:cl=180\E[?38l\E[?3h:\
	:co#132:tc=vt240-2:
#
# ansi-base is just a template for the real terminals.  By gildea@bbn.com
# Only entries which are common to all ansi terminals we have
# are listed here.  Usually this means nothing with padding here.
ansi-base|base type for ansi terminals:\
	:co#80:cr=\r:do=\n:sc=\E7:rc=\E8:eo:ho=1\E[H:le=\b:li#24:\
	:nd=\E[C:up=1\E[A:\
	:so=\E[7m:se=\E[m:us=1\E[4m:ue=1\E[m:\
	:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kh=\EOH:\
	:vb=\E[?5h\E[?5;5;5;5;5;5;5;5;5;5;5;5;5l:
#