#### Specials
#
# Special "terminals".  These are used to label tty lines when you don't
# know what kind of terminal is on it.  The characteristics of an unknown
# terminal are the lowest common denominator - they look about like a ti 700.
# The last one, "other", is like unknown but it allows an escape from software
# that insists that a "real" unknown terminal is merely so far unspecified.
#

dumb:\
	:am:\
	:co#80:\
	:bl=^G:cr=^M:do=^J:sf=^J:
unknown:\
	:gn:\
	:tc=dumb:
other|none of the above, but not exactly unknown:\
	:am:gn:\
	:co#80:\
	:cl=^M^J:do=^J:ho=^M:

arpanet|bussiplexer|dialup|ethernet|network|net|patch|plugboard|switch|network switch or dialup:\
	:tc=unknown:
lpr|printer|print|printing|line printer:\
	:hc:os:\
	:co#132:li#66:\
	:bl=^G:cr=^M:do=^J:ff=^L:le=^H:sf=^J:

#### ANSI terminals and terminal emulators
#
# See near the end of this file for details on ANSI conformance.
# Don't mess with these entries!  Lots of other entries depend on them!
#
# This section lists entries in a least-capable to most-capable order.
# if you're in doubt about what `ANSI' matches yours, try them in that
# order and back off from the first that breaks.

# (ansi: changed ":pt:" to ":it#8:" -- esr)
ansi-mini|any ansi terminal with pessimistic assumptions:\
	:am:bs:\
	:co#80:it#8:li#24:\
	:ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:do=\E[B:\
	:ho=\E[H:le=\E[D:nd=\E[C:up=\E[A:

# Color controls corresponding to the ANSI.SYS de-facto standard
# (This is not a standalone entry)
ansi-pc-color:\
	:Co#8:NC#3:pa#64:\
	:AB=\E[4%p1%dm:AF=\E[3%p1%dm:\
	:..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\
	:..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\
	:op=\E[37;40m:

# Procomm and some other ANSI emulations don't recognize all of the ANSI-
# standard capabilities.  This entry deletes cuu, cuf, cud, cub, and vpa/hpa
# capabilities, forcing curses to use repetitions of cuu1, cuf1, cud1 and cub1.
# Also deleted ich and ich1, as QModem up to 5.03 doesn't recognize these.
# Finally, we delete rep and ri, which seem to confuse many emulators.
# On the other hand, we can count on these programs doing rmacs/smacs/sgr.
# From: Eric S. Raymond <esr@snark.thyrsus.com> July 25 1995
pcansi-mono|ibm-pc terminal programs claiming to be ansi (mono mode):\
	:am:bs:mi:ms:pt:\
	:co#80:it#8:li#24:\
	:ae=\E[10m:al=\E[L:as=\E[12m:bl=^G:bt=\E[Z:cd=\E[J:\
	:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[2g:\
	:dc=\E[P:dl=\E[M:do=\E[B:ho=\E[H:kb=^H:kd=\E[B:\
	:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:\
	:md=\E[1m:me=\E[0m:mk=\E[9m:mr=\E[7m:nd=\E[C:\
	:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m:\
	:se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\
	:us=\E[4m:
pcansi-mono25|ansi25|ibm-pc terminal programs with 25 lines (mono mode):\
	:li#25:\
	:tc=pcansi-mono:
pcansi-mono33|ansi33|ibm-pc terminal programs with 33 lines (mono mode):\
	:li#33:\
	:tc=pcansi-mono:
pcansi-mono43|ansi43|ibm-pc terminal programs with 43 lines (mono mode):\
	:li#43:\
	:tc=pcansi-mono:
# The color versions.  All PC emulators do color...
pcansi|ibm-pc terminal programs claiming to be ansi:\
	:tc=ansi-pc-color:tc=pcansi-mono:
pcansi-25|ansi25|ibm-pc terminal programs with 25 lines:\
	:li#25:\
	:tc=pcansi:
pcansi-33|ansi33|ibm-pc terminal programs with 33 lines:\
	:li#33:\
	:tc=pcansi:
pcansi-43|ansi43|ibm-pc terminal programs with 43 lines:\
	:li#43:\
	:tc=pcansi:

# From: Eric S. Raymond <esr@snark.thyrsus.com> Feb 3 1995
# ansi-mono -- full X.364 with ANSI.SYS-compatible attributes, no color.
# Function-key mappings aren't in X3.64 but these are pretty standard.
# If you want pound signs rather than dollars, replace `B' with `A'
# in the s?ds capabilities.
ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes:\
	:5i:\
	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[W:\
	:F2=\E[X:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\
	:SR=\E[%dT:UP=\E[%dA:cb=\E[1K:ch=\E[%dG:ct=\E[2g:\
	:cv=\E[%dd:ec=\E[%dX:ei=:im=:k1=\E[M:k2=\E[N:k3=\E[O:\
	:k4=\E[P:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:\
	:k;=\E[V:kB=\E[Z:kI=\E[L:kb=^H:kd=\E[B:kl=\E[D:\
	:kr=\E[C:ku=\E[A:me=\E[0;10m:nw=\r\E[S:pf=\E[4i:\
	:po=\E[5i:..rp=%p1%c\E[%p2%{1}%-%db:s0=\E(B:s1=\E)B:\
	:s2=\E*B:s3=\E+B:\
	:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m:\
	:ta=\E[I:tc=pcansi:

# ansi -- this terminfo expresses the largest subset of X3.64 that will fit in
# standard terminfo.  Assumes ANSI.SYS-compatible attributes and color
# From: Eric S. Raymond <esr@snark.thyrsus.com> Feb 12 1995
ansi|ansi/pc-term compatible with color:\
	:u6=\E[%d;%dR:u7=\E[6n:..u8=\E[?%[;0123456789]c:\
	:u9=\E[c:tc=ansi-pc-color:tc=ansi-mono:

#
# ANSI.SYS entries
#
# Cannot use :pt:, it does not work (why?).  :ho: seems required (why?). [gts]
# Caution: 4.3 BSD tset does not pass li#25 to stty rows except during login?
# :cl: clears attributes and sets wrap at margin before clearing the screen.
# (ansi.sys: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
# From: greg small <gts@populi.berkeley.edu>
ansi.sys|ansisys|PC-DOS 3.1 ANSI.SYS:\
	:am:bs:ms:\
	:co#80:li#25:\
	:ae=\E[10:as=\E[12:ce=\E[K:cl=\E[m\E[7h\E[2J:\
	:cm=\E[%i%d;%dH:ho=\E[H:\
	:is=U1 PC-DOS 3.1 ANSI.SYS 9-23-86\n\E[m\E[7h:kd=^J:\
	:kh=^^:kl=^H:kr=^L:ku=^K:md=\E[1m:me=\E[0;10m:\
	:mr=\E[7m:nd=\E[C:se=\E[m:so=\E[1m:ue=\E[m:up=\E[A:\
	:us=\E[4m:
#
# Define IBM PC keypad keys for vi as per MS-Kermit while using ANSI.SYS.
# This should only be used when the terminal emulator cannot redefine the keys.
# Since redefining keys with ansi.sys also affects PC-DOS programs, the key
# definitions must be restored.  If the terminal emulator is quit while in vi
# or others using :ks:ke:, the keypad keys will not be defined as per PC-DOS.
# The PgUp and PgDn are prefixed with ESC so that tn3270 can be used on Unix
# (^U and ^D are already defined for tn3270).  The ESC is safe for vi but it
# does "beep".  ESC ESC i is used for Ins to avoid tn3270 ESC i for coltab.
# Left arrow is always BS, because PC-dos can tolerate this change.
# Caution: vi is limited to 256 string bytes, longer crashes or weirds out vi.
# Consequently the End keypad key could not be set (it is relatively safe and
# actually useful because it sends ^@ O, which beeps and opens a line above).
ansi.sysk|ansisysk|PC-DOS 3.1 ANSI.SYS with keypad redefined for vi:\
	:is=U2 PC-DOS 3.1 ANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\
	:ke=\E[;71;0;71p\E[;72;0;72p\E[;73;0;73p\E[;77;0;77p\E[;80;0;80p\E[;81;0;81p\E[;82;0;82p\E[;83;0;83p:\
	:ks=\E[;71;30p\E[;72;11p\E[;73;27;21p\E[;77;12p\E[;80;10p\E[;81;27;4p\E[;82;27;27;105p\E[;83;127p:tc=ansi.sys:
#
# Adds ins/del line/character, hence vi reverse scrolls/inserts/deletes nicer.
nansi.sys|nansisys|PC-DOS Public Domain NANSI.SYS:\
	:al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\
	:is=U3 PC-DOS Public Domain NANSI.SYS 9-23-86\n:tc=ansi.sys:
#
# See ansi.sysk and nansi.sys above.
nansi.sysk|nansisysk|PC-DOS Public Domain NANSI.SYS with keypad redefined for vi:\
	:al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\
	:is=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:tc=ansi.sysk:

#### ANSI console types
#

# This entry is good for the 1.1.47 version of the Linux console driver.
#
# It assumes that you want A_PROTECT mapped to the alternate character set
# mode that permits IBM ROM characters to be displayed (this is the assumption
# used by ncurses version 1.9 and after, in order not to collide with the
# internationalization attribute values specified in the XSI Curses standard).
#
# We use \E11m for rmacs rather than \E12m so the acsc string can use the ROM
# graphics for control characters such as the diamond, up arrow and down-arrow.
# This trick could work with other Intel consoles like the att6386 and pc3.
#
# Note: there are numerous broken linux entries out there, which didn't screw
# up BSD termcap but hose ncurses's smarter cursor-movement optimization.
# One common pathology is an incorrect tab length of 4.  Also note that the 
# hpa=\E[%dG/vpa=\E[%dd capabilities seem not to be reliable.  To reproduce
# the bug, re-introduce them and run worm -T 200 212 from the ncurses
# test suite, save the trace, then worm -N -T 200 212.  Observe that the first
# run fails to properly delete some worm segments, then diff the trace files.
#
# From: Eric S. Raymond <esr@snark.thyrsus.com> 23 July 1995
linux|linux console:\
	:am:bs:eo:mi:ms:ut:xn:xo:\
	:Co#8:co#80:it#8:li#25:pa#64:\
	:&7=^Z:@7=\E[4~:AB=\E[4%p1%dm:AF=\E[3%p1%dm:\
	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:F1=\E[23~:F2=\E[24~:\
	:F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\
	:F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K2=\E[G:\
	:S2=\E[11m:S3=\E[10m:Sb=\E[%+(m:Sf=\E[%+^^m:\
	:ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030\054\021+^P0\333:\
	:ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cd=\E[J:ce=\E[K:\
	:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
	:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\
	:ic=\E[@:im=\E[4h:k1=\E[[A:k2=\E[[B:k3=\E[[C:\
	:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
	:k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\
	:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:\
	:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;10m:\
	:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:r1=\Ec:rc=\E8:\
	:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;11%;m:\
	:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
	:u6=\E[%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\
	:up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:\
	:vi=\E[?25l:
linux-mono|Linux console, no color:\
	:Co@:pa@:\
	:AB@:Sb@:Sf@:tc=linux:

