1######## This example from excerpt of <http://www.catb.org/esr/terminfo/>:
2#
3#	Version 11.0.1
4#	$Date: 2000/03/02 15:51:11 $
5#	termcap syntax
6#
7
8######## ANSI, UNIX CONSOLE, AND SPECIAL TYPES
9#
10# This section describes terminal classes and brands that are still
11# quite common.
12#
13
14#### Specials
15#
16# Special "terminals".  These are used to label tty lines when you don't
17# know what kind of terminal is on it.  The characteristics of an unknown
18# terminal are the lowest common denominator - they look about like a ti 700.
19#
20
21dumb|80-column dumb tty:\
22	:am:\
23	:co#80:\
24	:bl=^G:cr=^M:do=^J:sf=^J:
25unknown|unknown terminal type:\
26	:gn:tc=dumb:
27lpr|printer|line printer:\
28	:bs:hc:os:\
29	:co#132:li#66:\
30	:bl=^G:cr=^M:do=^J:ff=^L:le=^H:sf=^J:
31glasstty|classic glass tty interpreting ASCII control characters:\
32	:am:bs:\
33	:co#80:\
34	:bl=^G:cl=^L:cr=^M:do=^J:kd=^J:kl=^H:le=^H:nw=^M^J:ta=^I:
35vanilla:\
36	:bs:\
37	:bl=^G:cr=^M:do=^J:sf=^J:
38
39#### ANSI.SYS/ISO 6429/ECMA-48 Capabilities
40#
41# See the end-of-file comment for more on these.
42#
43
44# ANSI capabilities are broken up into pieces, so that a terminal
45# implementing some ANSI subset can use many of them.
46ansi+local1:\
47	:do=\E[B:le=\E[D:nd=\E[C:up=\E[A:
48ansi+local:\
49	:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:tc=ansi+local1:
50ansi+tabs:\
51	:bt=\E[Z:ct=\E[2g:st=\EH:ta=^I:
52ansi+inittabs:\
53	:it#8:tc=ansi+tabs:
54ansi+erase:\
55	:cd=\E[J:ce=\E[K:cl=\E[H\E[J:
56ansi+rca:\
57	:ch=\E[%+^AG:cv=\E[%+^Ad:
58ansi+cup:\
59	:cm=\E[%i%d;%dH:ho=\E[H:
60ansi+rep:\
61	:..rp=%p1%c\E[%p2%{1}%-%db:
62ansi+idl1:\
63	:al=\E[L:dl=\E[M:
64ansi+idl:\
65	:AL=\E[%dL:DL=\E[%dM:tc=ansi+idl1:
66ansi+idc:\
67	:IC=\E[%d@:dc=\E[P:ei=\E6:ic=\E[@:im=\E6:
68ansi+arrows:\
69	:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:
70ansi+sgr|ansi graphic renditions:\
71	:mb=\E[5m:me=\E[0m:mk=\E[8m:mr=\E[7m:
72ansi+sgrso|ansi standout only:\
73	:se=\E[m:so=\E[7m:
74ansi+sgrul|ansi underline only:\
75	:ue=\E[m:us=\E[4m:
76ansi+sgrbold|ansi graphic renditions; assuming terminal has bold; not dim:\
77	:md=\E[1m:\
78	:..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:tc=ansi+sgr:tc=ansi+sgrso:tc=ansi+sgrul:
79ansi+sgrdim|ansi graphic renditions; assuming terminal has dim; not bold:\
80	:mh=\E[2m:\
81	:..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t2;%;m:tc=ansi+sgr:tc=ansi+sgrso:tc=ansi+sgrul:
82ansi+pp|ansi printer port:\
83	:pf=\E[4i:po=\E[5i:ps=\E[0i:
84ansi+csr|ansi scroll-region plus cursor save & restore:\
85	:cs=\E[%i%d;%dr:rc=\E8:sc=\E7:
86
87# The IBM PC alternate character set.  Plug this into any Intel console entry.
88# We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the
89# ROM graphics for control characters such as the diamond, up- and down-arrow.
90# This works with the System V, Linux, and BSDI consoles.  It's a safe bet this
91# will work with any Intel console, they all seem to have inherited \E[11m
92# from the ANSI.SYS de-facto standard.
93klone+acs|alternate character set for ansi.sys displays:\
94	:ac=+\020\054\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\
95	:ae=\E[10m:as=\E[11m:
96
97# Highlight controls corresponding to the ANSI.SYS standard.  Most
98# console drivers for Intel boxes obey these.  Makes the same assumption
99# about \E[11m as klone+acs.  True ANSI/ECMA-48 would have :se=\E[27m:,
100# :ue=\E[24m:, but this isn't a documented feature of ANSI.SYS.
101klone+sgr|attribute control for ansi.sys displays:\
102	:S2=\E[11m:S3=\E[10m:mb=\E[5m:md=\E[1m:me=\E[0;10m:\
103	:mk=\E[8m:mr=\E[7m:\
104	:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m:\
105	:se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:\
106	:tc=klone+acs:
107
108# Highlight controls corresponding to the ANSI.SYS standard.  *All*
109# console drivers for Intel boxes obey these.  Does not assume \E[11m will
110# work; uses \E[12m instead, which is pretty bulletproof but loses you the ACS
111# diamond and arrow characters under curses.
112klone+sgr-dumb|attribute control for ansi.sys displays (no ESC [ 11 m):\
113	:as=\E[12m:mb=\E[5m:md=\E[1m:me=\E[0;10m:mk=\E[8m:\
114	:mr=\E[7m:\
115	:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m:\
116	:se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:\
117	:tc=klone+acs:
118
119# KOI8-R (RFC1489) acs (alternate character set)
120# From: Qing Long <qinglong@Bolizm.ihep.su>, 24 Feb 1996.
121klone+koi8acs|alternate character set for ansi.sys displays with KOI8 charset:\
122	:ac=+\020\054\021-\036.^_0\215`\004a\237f\234g\232h\222i\220j\205k\203l\202m\204n\212o\213p\216q\0r\217s\214t\206u\207v\210w\211x\201y\230z\231{\267|\274}L~\225:\
123	:ae=\E[10m:as=\E[11m:
124
125# ANSI.SYS color control.  The setab/setaf caps depend on the coincidence
126# between SVr4/XPG4's color numbers and ANSI.SYS attributes.  Here are longer
127# but equivalent strings that don't rely on that coincidence:
128# setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
129# setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
130# The DOS 5 manual asserts that these sequences meet the ISO 6429 standard.
131# They match a subset of ECMA-48.
132klone+color|color control for ansi.sys and ISO6429-compatible displays:\
133	:Co#8:NC#3:pa#64:\
134	:AB=\E[4%p1%dm:AF=\E[3%p1%dm:op=\E[37;40m:
135
136# This is better than klone+color, it doesn't assume white-on-black as the
137# default color pair,  but many `ANSI' terminals don't grok the <op> cap.
138ecma+color|color control for ECMA-48-compatible terminals:\
139	:Co#8:NC#3:pa#64:\
140	:AB=\E[4%p1%dm:AF=\E[3%p1%dm:op=\E[39;49m:
141
142# Attribute control for ECMA-48-compatible terminals
143ecma+sgr|attribute capabilities for true ECMA-48 terminals:\
144	:se=\E[27m:ue=\E[24m:\
145	:tc=klone+sgr:
146
147# For comparison, here are all the capabilities implied by the Intel
148# Binary Compatibility Standard (level 2) that fit within terminfo.
149# For more detail on this rather pathetic standard, see the comments
150# near the end of this file.
151ibcs2|Intel Binary Compatibility Standard prescriptions:\
152	:AL=\E[%dL:DC=\E[%dP:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\
153	:RA=\E[?7l:RI=\E[%dC:S1=\E=%p1%dg:SA=\E[?7h:SF=\E[%dS:\
154	:SR=\E[%dT:UP=\E[%dA:bt=\E[Z:ch=\E[%i%dG:cl=\Ec:\
155	:cm=\E[%i%d;%dH:ct=\E[g:cv=\E[%i%dd:ec=\E[%dX:ei=:im=:\
156	:rc=\E7:sc=\E7:st=\EH:
157
158#### ANSI/ECMA-48 terminals and terminal emulators
159#
160# See near the end of this file for details on ANSI conformance.
161# Don't mess with these entries!  Lots of other entries depend on them!
162#
163# This section lists entries in a least-capable to most-capable order.
164# if you're in doubt about what `ANSI' matches yours, try them in that
165# order and back off from the first that breaks.
166
167# ansi-mr is for ANSI terminals with ONLY relative cursor addressing
168# and more than one page of memory.  It uses local motions instead of
169# direct cursor addressing, and makes almost no assumptions. It does
170# assume auto margins, no padding and/or xon/xoff, and a 24x80 screen.
171ansi-mr|mem rel cup ansi:\
172	:am:xo:\
173	:co#80:li#24:tc=vanilla:tc=ansi+erase:tc=ansi+local1:
174
175# ansi-mini is a bare minimum ANSI terminal. This should work on anything, but
176# beware of screen size problems and memory relative cursor addressing.
177ansi-mini|minimum ansi standard terminal:\
178	:am:xo:\
179	:co#80:li#24:tc=vanilla:tc=ansi+cup:tc=ansi+erase:
180
181# ansi-mtabs adds relative addressing and minimal tab support
182ansi-mtabs|any ansi terminal with pessimistic assumptions:\
183	:it#8:\
184	:ta=^I:tc=ansi+local1:tc=ansi-mini:
185
186# ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL
187#
188# The following is an entry for the full ANSI 3.64 (1977).  It lacks
189# padding, but most terminals using the standard are "fast" enough
190# not to require any -- even at 9600 bps.  If you encounter problems,
191# try including the padding specifications.
192#
193# Note: the :as: and :ae: specifications are not implemented here, for
194# the available termcap documentation does not make clear WHICH alternate
195# character set to specify.  ANSI 3.64 seems to make allowances for several.
196# Please make the appropriate adjustments to fit your needs -- that is
197# if you will be using alternate character sets.
198#
199# There are very few terminals running the full ANSI 3.64 standard,
200# so I could only test this entry on one verified terminal (Visual 102).
201# I would appreciate the results on other terminals sent to me.
202#
203# Please report comments, changes, and problems to:
204#
205# U.S. MAIL:   Hugh Hansard
206#              Box: 22830
207#              Emory University
208#              Atlanta, GA. 30322.
209#
210# USENET {akgua,msdc,sb1,sb6,gatech}!emory!mlhhh.
211#
212# (Added vt100 :rc:,:sc: to quiet a tic warning --esr)
213ansi77|ansi 3.64 standard 1977 version:\
214	:am:bs:mi:\
215	:co#80:it#8:li#24:\
216	:al=5*\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
217	:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=5*\E[M:\
218	:do=\E[B:ei=\E[4l:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOR:k4=\EOS:\
219	:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
220	:nd=\E[C:nw=^M\ED:rc=\E8:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:\
221	:sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:
222
223# Procomm and some other ANSI emulations don't recognize all of the ANSI-
224# standard capabilities.  This entry deletes :UP:, :RI:, :DO:, :LE:, and
225# <vpa>/<hpa> capabilities, forcing curses to use repetitions of :up:,
226# :nd:, :do: and :le:.  Also deleted :IC: and :ic:, as QModem up to
227# 5.03 doesn't recognize these.  Finally, we delete :rp: and :sr:, which seem
228# to confuse many emulators.  On the other hand, we can count on these programs
229# doing :ae:/:as:/:sa:. Older versions of this entry featured
230# <invis=\E[9m>, but <invis=\E[8m> now seems to be more common under
231# ANSI.SYS influence.
232# From: Eric S. Raymond <esr@snark.thyrsus.com> Oct 30 1995
233pcansi-m|pcansi-mono|ibm-pc terminal programs claiming to be ansi (mono mode):\
234	:am:bs:mi:ms:\
235	:co#80:it#8:li#24:\
236	:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
237	:cm=\E[%i%d;%dH:cr=^M:ct=\E[2g:dc=\E[P:dl=\E[M:do=\E[B:\
238	:ho=\E[H:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
239	:le=\E[D:nd=\E[C:sf=^J:st=\EH:ta=^I:up=\E[A:\
240	:tc=klone+sgr-dumb:
241pcansi-25-m|pcansi25m|ibm-pc terminal programs with 25 lines (mono mode):\
242	:li#25:tc=pcansi-m:
243pcansi-33-m|pcansi33m|ibm-pc terminal programs with 33 lines (mono mode):\
244	:li#33:tc=pcansi-m:
245pcansi-43-m|ansi43m|ibm-pc terminal programs with 43 lines (mono mode):\
246	:li#43:tc=pcansi-m:
247# The color versions.  All PC emulators do color...
248pcansi|ibm-pc terminal programs claiming to be ansi:\
249	:tc=klone+color:tc=pcansi-m:
250pcansi-25|pcansi25|ibm-pc terminal programs with 25 lines:\
251	:li#25:tc=pcansi:
252pcansi-33|pcansi33|ibm-pc terminal programs with 33 lines:\
253	:li#33:tc=pcansi:
254pcansi-43|pcansi43|ibm-pc terminal programs with 43 lines:\
255	:li#43:tc=pcansi:
256
257# ansi-m -- full ANSI X3.64 with ANSI.SYS-compatible attributes, no color.
258# If you want pound signs rather than dollars, replace `B' with `A'
259# in the <s0ds>, <s1ds>, <s2ds>, and <s3ds> capabilities.
260# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995
261ansi-m|ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes:\
262	:5i:\
263	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
264	:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
265	:cb=\E[1K:ch=\E[%i%dG:ct=\E[2g:cv=\E[%i%dd:ec=\E[%dX:ei=:\
266	:im=:kB=\E[Z:kI=\E[L:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:\
267	:nw=\r\E[S:pf=\E[4i:po=\E[5i:..rp=%p1%c\E[%p2%{1}%-%db:\
268	:s0=\E(B:s1=\E)B:s2=\E*B:s3=\E+B:ta=\E[I:\
269	:tc=pcansi-m:
270
271# ansi -- this terminfo expresses the largest subset of X3.64 that will fit in
272# standard terminfo.  Assumes ANSI.SYS-compatible attributes and color.
273# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995
274ansi|ansi/pc-term compatible with color:\
275	:u6=\E[%i%d;%dR:u7=\E[6n:..u8=\E[?%[;0123456789]c:\
276	:u9=\E[c:\
277	:tc=ecma+color:tc=klone+sgr:tc=ansi-m:
278
279# ansi-generic is a vanilla ANSI terminal. This is assumed to implement
280# all the normal ANSI stuff with no extensions. It assumes
281# insert/delete line/char is there, so it won't work with
282# vt100 clones. It assumes video attributes for bold, blink,
283# underline, and reverse, which won't matter much if the terminal
284# can't do some of those. Padding is assumed to be zero, which
285# shouldn't hurt since xon/xoff is assumed.
286ansi-generic|generic ansi standard terminal:\
287	:am:xo:\
288	:co#80:li#24:tc=vanilla:tc=ansi+csr:tc=ansi+cup:\
289	:tc=ansi+rca:tc=ansi+erase:tc=ansi+tabs:tc=ansi+local:\
290	:tc=ansi+idc:tc=ansi+idl:tc=ansi+rep:tc=ansi+sgrbold:\
291	:tc=ansi+arrows:
292
293#### Linux consoles
294#
295
296# This entry is good for the 1.2.13 or later version of the Linux console.
297#
298# ***************************************************************************
299# *                                                                         *
300# *                           WARNING:                                      *
301# * Linuxes come with a default keyboard mapping kcbt=^I.  This entry, in   *
302# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab *
303# * character. Here are the keymap replacement lines that will set this up: *
304# *                                                                         *
305#	keycode  15 = Tab             Tab
306#		alt     keycode  15 = Meta_Tab
307#		shift	keycode  15 = F26
308#	string F26 ="\033[Z"
309# *                                                                         *
310# * This has to use a key slot which is unfortunate (any unused one will    *
311# * do, F26 is the higher-numbered one).  The change ought to be built      *
312# * into the kernel tables.                                                 *
313# *                                                                         *
314# ***************************************************************************
315#
316# The 1.3.x kernels add color-change capabilities; if yours doesn't have this
317# and it matters, turn off <ccc>.  The %02x escape used to implement this is
318# not back-portable to SV curses and not supported in ncurses versions before
319# 1.9.9. All linux kernels since 1.2.13 (at least) set the screen size
320# themselves; this entry assumes that capability.
321#
322# This entry is good for the 1.2.13 or later version of the Linux console.
323#
324# ***************************************************************************
325# *                                                                         *
326# *                           WARNING:                                      *
327# * Linuxes come with a default keyboard mapping kcbt=^I.  This entry, in   *
328# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab *
329# * character. Here are the keymap replacement lines that will set this up: *
330# *                                                                         *
331#	keycode  15 = Tab             Tab
332#		alt     keycode  15 = Meta_Tab
333#		shift	keycode  15 = F26
334#	string F26 ="\033[Z"
335# *                                                                         *
336# * This has to use a key slot which is unfortunate (any unused one will    *
337# * do, F26 is the higher-numbered one).  The change ought to be built      *
338# * into the kernel tables.                                                 *
339# *                                                                         *
340# ***************************************************************************
341#
342# The 1.3.x kernels add color-change capabilities; if yours doesn't have this
343# and it matters, turn off <ccc>.  The %02x escape used to implement this is
344# not back-portable to SV curses and not supported in ncurses versions before
345# 1.9.9. All linux kernels since 1.2.13 (at least) set the screen size
346# themselves; this entry assumes that capability.
347#
348# The 2.2.x kernels add a private mode that sets the cursor type; use that to
349# get a block cursor for cvvis.
350# reported by Frank Heckenbach <frank@g-n-u.de>.
351# (untranslatable capabilities removed to fit entry within 1023 bytes)
352# (sgr removed to fit entry within 1023 bytes)
353# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
354linux|linux console:\
355	:am:eo:mi:ms:xn:xo:\
356	:it#8:\
357	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:K2=\E[G:al=\E[L:\
358	:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
359	:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:\
360	:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:k1=\E[[A:k2=\E[[B:\
361	:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
362	:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:\
363	:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mh=\E[2m:\
364	:mr=\E[7m:nd=\E[C:nw=^M^J:rc=\E8:sc=\E7:se=\E[27m:sf=^J:\
365	:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\
366	:vb=200\E[?5h\E[?5l:ve=\E[?25h\E[?0c:vi=\E[?25l\E[?1c:\
367	:vs=\E[?25h\E[?8c:\
368	:tc=klone+sgr:tc=ecma+color:
369linux-m|Linux console no color:\
370	:Co@:pa@:\
371	:AB@:AF@:Sb@:Sf@:tc=linux:
372linux-c-nc|linux console 1.3.x hack for ncurses only:\
373	:cc:\
374	:..Ic=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x:\
375	:oc=\E]R:\
376	:tc=linux:
377# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996
378linux-c|linux console 1.3.6+ with private palette for each virtual console:\
379	:cc:\
380	:Co#8:pa#64:\
381	:..Ic=\E]P%?%p1%{9}%>%t%p1%{10}%-%'a'%+%c%e%p1%d%;%p2%{255}%&%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%p3%{255}%&%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%p4%{255}%&%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;:\
382	:oc=\E]R:\
383	:tc=linux:
384
385# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
386linux-nic|linux with ich/ich1 suppressed for non-curses programs:\
387	:IC@:ei=:ic@:im=:\
388	:tc=linux:
389
390# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts.
391# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997.
392linux-koi8|linux with koi8 alternate character set:\
393	:ac=+\020\054\021-\030.^Y0\215`\004a\221f\234g\237h\220i\276j\205k\203l\202m\204n\212o~p\0q\0r\0s_t\206u\207v\211w\210x\201y\230z\231{\267|\274~\224:tc=linux:\
394	:tc=klone+koi8acs:
395
396# Another entry for KOI8-r with Qing Long's acsc.
397# (which one better complies with the standard?)
398linux-koi8r|linux with koi8-r alternate character set:\
399	:tc=linux:tc=klone+koi8acs:
400
401# Entry for the latin1 and latin2 fonts
402linux-lat|linux with latin1 or latin2 alternate character set:\
403	:ac=+\020\054\021-\030.^Y0\333`\004a\013f\370g\361h\260i\316j\211k\214l\206m\203n\305o~p\304q\212r\304s_t\207u\215v\301w\302x\205y\363z\362{\343|\330}\234~\376:\
404	:tc=linux:
405
406#### NetBSD consoles
407#
408# pcvt termcap database entries (corresponding to release 3.31)
409# Author's last edit-date: [Fri Sep 15 20:29:10 1995]
410#
411# (For the terminfo master file, I translated these into terminfo syntax.
412# Then I dropped all the pseudo-HP entries. we don't want and can't use
413# the :Xs: flag. Then I split :is: into a size-independent :i1: and a
414# size-dependent :is:.  Finally, I added <rmam>/<smam> -- esr)
415
416# NOTE: :ic: has been taken out of this entry. for reference, it should
417# be <ich1=\E[@>.  For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below.
418# (esr: added :vi: and :ve: to resolve NetBSD Problem Report #4583)
419pcvtXX|pcvt vt200 emulator (DEC VT220):\
420	:am:km:mi:ms:xn:\
421	:it#8:vt#3:\
422	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
423	:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\
424	:SR=\E[%dT:UP=\E[%dA:\
425	:ac=++\054\054--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~:\
426	:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
427	:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
428	:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
429	:i1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:im=\E[4h:\
430	:k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:\
431	:k6=\E[23~:k7=\E[24~:k8=\E[25~:kD=\E[3~:kH=\E[4~:kI=\E[2~:\
432	:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:\
433	:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
434	:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:\
435	:r1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
436	:rf=/usr/share/tabset/vt100:sc=\E7:se=\E[27m:sf=\ED:\
437	:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\
438	:ve=\E[?25h:vi=\E[?25l:
439
440#	NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
441#	termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
442#	50 lines entries; 80 columns
443pcvt25|dec vt220 emulation with 25 lines:\
444	:co#80:li#25:\
445	:is=\E[1;25r\E[25;1H:tc=pcvtXX:
446pcvt28|dec vt220 emulation with 28 lines:\
447	:co#80:li#28:\
448	:is=\E[1;28r\E[28;1H:tc=pcvtXX:
449pcvt35|dec vt220 emulation with 35 lines:\
450	:co#80:li#35:\
451	:is=\E[1;35r\E[35;1H:tc=pcvtXX:
452pcvt40|dec vt220 emulation with 40 lines:\
453	:co#80:li#40:\
454	:is=\E[1;40r\E[40;1H:tc=pcvtXX:
455pcvt43|dec vt220 emulation with 43 lines:\
456	:co#80:li#43:\
457	:is=\E[1;43r\E[43;1H:tc=pcvtXX:
458pcvt50|dec vt220 emulation with 50 lines:\
459	:co#80:li#50:\
460	:is=\E[1;50r\E[50;1H:tc=pcvtXX:
461
462#	NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
463#	termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
464#	50 lines entries; 132 columns
465pcvt25w|dec vt220 emulation with 25 lines and 132 cols:\
466	:co#132:li#25:\
467	:is=\E[1;25r\E[25;1H:tc=pcvtXX:
468pcvt28w|dec vt220 emulation with 28 lines and 132 cols:\
469	:co#132:li#28:\
470	:is=\E[1;28r\E[28;1H:tc=pcvtXX:
471pcvt35w|dec vt220 emulation with 35 lines and 132 cols:\
472	:co#132:li#35:\
473	:is=\E[1;35r\E[35;1H:tc=pcvtXX:
474pcvt40w|dec vt220 emulation with 40 lines and 132 cols:\
475	:co#132:li#40:\
476	:is=\E[1;40r\E[40;1H:tc=pcvtXX:
477pcvt43w|dec vt220 emulation with 43 lines and 132 cols:\
478	:co#132:li#43:\
479	:is=\E[1;43r\E[43;1H:tc=pcvtXX:
480pcvt50w|dec vt220 emulation with 50 lines and 132 cols:\
481	:co#132:li#50:\
482	:is=\E[1;50r\E[50;1H:tc=pcvtXX:
483
484# Terminfo entries to enable the use of the ncurses library in colour on a
485# NetBSD-arm32 console (only tested on a RiscPC).
486# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98
487# modified codes for setf/setb to setaf/setab, then to klone+color, corrected
488# typo in invis - TD
489arm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480):\
490	:am:ms:ut:xn:xo:\
491	:co#80:it#8:li#30:\
492	:@8=\E[M:DO=\E[%dB:K1=\E[q:K2=\E[r:K3=\E[s:K4=\E[p:K5=\E[n:\
493	:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
494	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
495	:ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
496	:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=^J:\
497	:eA=\E(B\E)0:ho=\E[H:k0=\E[y:k1=\E[P:k2=\E[Q:k3=\E[R:\
498	:k4=\E[S:k5=\E[t:k6=\E[u:k7=\E[v:k8=\E[l:k9=\E[w:k;=\E[x:\
499	:kb=^H:kd=\E[B:ke=\E[?1l\E>:kl=\E[D:kr=\E[C:ks=\E[?1h\E=:\
500	:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mk=\E[8m:\
501	:mr=\E[6m:nd=\E[C:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
502	:rc=\E8:\
503	:..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\
504	:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\
505	:up=\E[A:us=\E[4m:\
506	:tc=ecma+sgr:tc=klone+color:
507arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768):\
508	:co#132:li#50:tc=arm100:
509
510# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine
511# manufactured by Sharp for the Japenese market.
512# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996
513x68k|x68k-ite|NetBSD/x68k ITE:\
514	:co#96:li#32:\
515	:%1=\E[28~:kC=\E[9~:tc=vt220:
516
517# <tv@pobox.com>:
518# Entry for the DNARD OpenFirmware console, close to ANSI but not quite.
519#
520# (still unfinished, but good enough so far.)
521ofcons:\
522	:bw:\
523	:co#80:li#30:\
524	:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\
525	:LE=\233%dD:RI=\233%dC:UP=\233%dA:al=\233L:bl=^G:cd=\233J:\
526	:ce=\233K:cl=^L:cm=\233%i%d;%dH:cr=^M:dc=\233P:dl=\233M:\
527	:do=\233B:ei=:ic=\233@:im=:k1=\2330P:k2=\2330Q:k3=\2330W:\
528	:k4=\2330x:k5=\2330t:k6=\2330u:k7=\2330q:k8=\2330r:\
529	:k9=\2330p:k;=\2330M:kD=\233P:kN=\233/:kP=\233?:kb=^H:\
530	:kd=\233B:kl=\233D:kr=\233C:ku=\233A:le=\233D:mb=\2337;2m:\
531	:md=\2331m:me=\2330m:mh=\2332m:mk=\2338m:mr=\2337m:\
532	:nd=\233C:nw=^M^J:se=\2330m:sf=^J:ta=^I:ue=\2330m:up=\233A:\
533	:vb=^G:
534
535# NetBSD "wscons" emulator in vt220 mode
536# These are micro-minimal and probably need to be redone for real
537# after the manner of the pcvt entries.
538wsvt25|NetBSD wscons in 25 line DEC VT220 mode:\
539	:co#80:li#25:tc=vt220:
540
541wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta:\
542	:km:\
543	:co#80:li#25:tc=vt220:
544
545# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and
546# DECstation/pmax.
547rcons|BSD rasterconsole:\
548	:tc=sun-il:
549# Color version of above. Color currenly only provided by NetBSD.
550rcons-color|BSD rasterconsole with ANSI color:\
551	:ut:\
552	:Co#8:pa#64:\
553	:AB=\E[4%dm:AF=\E[3%dm:op=\E[m:tc=rcons:
554
555#### FreeBSD console entries
556#
557# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996
558# Andrey Chernov maintains the FreeBSD termcap distributions.
559#
560# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade
561# or comment out the :cb: capability in the console entry.
562#
563# Alexander Lukyanov reports:
564# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there.
565# Now el1 clears not only to the line beginning, but also a large chunk
566# of previous line. But there is another bug - ech does not work at all.
567#
568
569# for syscons
570# common entry without semigraphics
571# Bug: The <op> capability resets attributes.
572# Bug? The ech and el1 attributes appear to move the cursor in some cases; for
573# instance el1 does if the cursor is moved to the right margin first.  Removed
574# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K)
575#
576# Setting colors turns off reverse; we cannot guarantee order, so use ncv.
577# Note that this disables standout with color.
578cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode):\
579	:NP:am:bw:eo:ms:ut:\
580	:Co#8:NC#21:co#80:it#8:li#25:pa#64:\
581	:@7=\E[F:AB=\E[4%p1%dm:AF=\E[3%p1%dm:AL=\E[%dL:DC=\E[%dP:\
582	:DL=\E[%dM:DO=\E[%dB:F1=\E[W:F2=\E[X:IC=\E[%d@:K2=\E[E:\
583	:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
584	:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%d`:\
585	:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cv=\E[%i%dd:dc=\E[P:\
586	:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[M:k2=\E[N:\
587	:k3=\E[O:k4=\E[P:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:\
588	:k;=\E[V:kB=\E[Z:kD=\177:kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:\
589	:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:\
590	:md=\E[1m:me=\E[m:mh=\E[30;1m:mr=\E[7m:nd=\E[C:nw=\E[E:\
591	:op=\E[x:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\
592	:ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C:
593cons25|ansis|ansi80x25|freebsd console (25-line ansi mode):\
594	:ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\
595	:tc=cons25w:
596cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode):\
597	:Co@:pa@:\
598	:AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25:
599cons30|ansi80x30|freebsd console (30-line ansi mode):\
600	:li#30:tc=cons25:
601cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode):\
602	:li#30:tc=cons25-m:
603cons43|ansi80x43|freebsd console (43-line ansi mode):\
604	:li#43:tc=cons25:
605cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode):\
606	:li#43:tc=cons25-m:
607cons50|ansil|ansi80x50|freebsd console (50-line ansi mode):\
608	:li#50:tc=cons25:
609cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode):\
610	:li#50:tc=cons25-m:
611cons60|ansi80x60|freebsd console (60-line ansi mode):\
612	:li#60:tc=cons25:
613cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode):\
614	:li#60:tc=cons25-m:
615cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic:\
616	:ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\
617	:tc=cons25w:
618cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono):\
619	:Co@:pa@:\
620	:AB@:AF@:op@:ue=\E[m:us=\E[4m:tc=cons25r:
621cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines):\
622	:li#50:tc=cons25r:
623cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono):\
624	:li#50:tc=cons25r-m:
625cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines):\
626	:li#60:tc=cons25r:
627cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono):\
628	:li#60:tc=cons25r-m:
629# ISO 8859-1 FreeBSD console
630cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars:\
631	:ac=+\253\054\273-\030.\031`\201a\202f\207g\210i\247j\213k\214l\215m\216n\217o\220p\221q\222r\223s\224t\225u\226v\227w\230x\231y\232z\233~\237:\
632	:tc=cons25w:
633cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono):\
634	:Co@:pa@:\
635	:AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25l1:
636cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines):\
637	:li#50:tc=cons25l1:
638cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono):\
639	:li#50:tc=cons25l1-m:
640cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines):\
641	:li#60:tc=cons25l1:
642cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono):\
643	:li#60:tc=cons25l1-m:
644
645#### 386BSD and BSD/OS Consoles
646#
647
648# This was the original 386BSD console entry (I think).
649# Some places it's named oldpc3|oldibmpc3.
650# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu>
651origpc3|origibmpc3|IBM PC 386BSD Console:\
652	:am:bw:eo:xo:\
653	:co#80:li#25:\
654	:ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\
655	:cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:ho=\E[H:\
656	:kd=\E[B:kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[7m:\
657	:me=\E[m\E[1;0x\E[2;7x:nd=\E[C:se=\E[1;0x\E[2;7x:\
658	:sf=\E[S:so=\E[1;7x\E[2;0x:sr=\E[T:ue=\E[1;0x\E[2;7x:\
659	:up=\E[A:us=\E[1;7x\E[2;0x:
660
661# description of BSD/386 console emulator in version 1.0 (supplied by BSDI)
662oldpc3|oldibmpc3|old IBM PC BSD/386 Console:\
663	:km:\
664	:li#25:\
665	:al=\E[L:bl=^G:cr=^M:dl=\E[M:do=^J:kH=\E[F:kI=\E[L:kN=\E[G:\
666	:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
667	:md=\E[=15F:me=\E[=R:mh=\E[=8F:nw=^M^J:sf=^J:ta=^I:
668
669# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1
670# Note, the emulator supports many of the additional console features
671# listed in the iBCS2 (e.g. character-set selection) though not all
672# are described here.  This entry really ought to be upgraded.
673# Also note, the console will also work with fewer lines after doing
674# "stty rows NN", e.g. to use 24 lines.
675# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996)
676# Bug: The <op> capability resets attributes.
677bsdos-pc-nobold|BSD/OS PC console w/o bold:\
678	:am:eo:km:xo:\
679	:co#80:it#8:li#25:\
680	:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\
681	:UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\Ec:\
682	:cm=\E[%i%d;%dH:cr=^M:dl=\E[M:do=^J:ho=\E[H:kH=\E[F:\
683	:kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\
684	:kr=\E[C:ku=\E[A:le=^H:nd=\E[C:nw=^M^J:rc=\E8:\
685	:..sa=\E[0;10%?%p1%t;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m%?%p5%t\E[=8F%;:\
686	:sc=\E7:sf=^J:ta=^I:up=\E[A:\
687	:tc=klone+sgr:tc=klone+color:
688bsdos-pc|IBM PC BSD/OS Console:\
689	:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;1%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m:tc=bsdos-pc-nobold:
690
691# Old names for BSD/OS PC console used in releases before 4.1.
692pc3|BSD/OS on the PC Console:\
693	:tc=bsdos-pc-nobold:
694ibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline:\
695	:tc=bsdos-pc:
696
697# BSD/OS on the SPARC
698bsdos-sparc|Sun SPARC BSD/OS Console:\
699	:tc=sun:
700
701# BSD/OS on the PowerPC
702bsdos-ppc|PowerPC BSD/OS Console:\
703	:tc=bsdos-pc:
704
705#### DEC VT100 and compatibles
706#
707# DEC terminals from the vt100 forward are collected here. Older DEC terminals
708# and micro consoles can be found in the `obsolete' section.  More details on
709# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be
710# found near the end of this file.
711#
712# Except where noted, these entries are DEC's official terminfos.
713# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support
714# Engineering for more information.  Updated terminfos and termcaps
715# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
716#
717# In October 1995 DEC sold its terminals business, including the VT and Dorio
718# line and trademark, to SunRiver Data Systems.  SunRiver has since changed
719# its name to Boundless Technologies; see http://www.boundless.com.
720#
721
722# NOTE:  Any VT100 emulation, whether in hardware or software, almost
723# certainly includes what DEC called the `Level 1 editing extension' codes;
724# only the very oldest VT100s lacked these and there probably aren't any of
725# those left alive.  To capture these, use one of the VT102 entries.
726#
727# Note that the :xn: glitch in vt100 is not quite the same as on the Concept,
728# since the cursor is left in a different position while in the
729# weird state (concept at beginning of next line, vt100 at end
730# of this line) so all versions of vi before 3.7 don't handle
731# :xn: right on vt100. The correct way to handle :xn: is when
732# you output the char in column 80, immediately output CR LF
733# and then assume you are in column 1 of the next line. If :xn:
734# is on, am should be on too.
735#
736# I assume you have smooth scroll off or are at a slow enough baud
737# rate that it doesn't matter (1200? or less). Also this assumes
738# that you set auto-nl to "on", if you set it off use vt100-nam
739# below.
740#
741# The padding requirements listed here are guesses. It is strongly
742# recommended that xon/xoff be enabled, as this is assumed here.
743#
744# The vt100 uses <rs2> and <rf> rather than :is:/:ct:/:st: because the
745# tab settings are in non-volatile memory and don't need to be
746# reset upon login. Also setting the number of columns glitches
747# the screen annoyingly. You can type "reset" to get them set.
748#
749# The VT100 series terminals have cursor ("arrows") keys which can operate
750# in two different modes: Cursor Mode and Application Mode.  Cursor Mode
751# is the reset state, and is assumed to be the normal state.  Application
752# Mode is the "set" state.  In Cursor Mode, the cursor keys transmit
753# "Esc [ {code}" sequences, conforming to ANSI standards.  In Application
754# Mode, the cursor keys transmit "Esc O <code>" sequences.  Application Mode
755# was provided primarily as an aid to the porting of VT52 applications.  It is
756# assumed that the cursor keys are normally in Cursor Mode, and expected that
757# applications such as vi will always transmit the :ks: string.  Therefore,
758# the definitions for the cursor keys are made to match what the terminal
759# transmits after the :ks: string is transmitted.  If the :ks: string
760# is a null string or is not defined, then cursor keys are assumed to be in
761# "Cursor Mode", and the cursor keys definitions should match that assumption,
762# else the appication may fail.  It is also expected that applications will
763# always transmit the :ke: string to the terminal before they exit.
764#
765# The VT100 series terminals have an auxilliary keypad, commonly referred to as
766# the "Numeric Keypad", because it is a cluster of numeric and function keys.
767# The Numeric Keypad which can operate in two different modes: Numeric Mode and
768# Application Mode.  Numeric Mode is the reset state, and is assumed to be
769# the normal state.  Application Mode is the "set" state.  In Numeric Mode,
770# the numeric and punctuation keys transmit ASCII 7-bit characters, and the
771# Enter key transmits the same as the Return key (Note: the Return key
772# can be configured to send either LF (\015) or CR LF).  In Application Mode,
773# all the keypad keys transmit "Esc O {code}" sequences.  The PF1 - PF4 keys
774# always send the same "Esc O {code}" sequences.  It is assumed that the keypad
775# is normally in Numeric Mode.  If an application requires that the keypad be
776# in Application Mode then it is expected that the user, or the application,
777# will set the TERM environment variable to point to a terminfo entry which has
778# defined the :ks: string to include the codes that switch the keypad into
779# Application Mode, and the terminfo entry will also define function key
780# fields to match the Application Mode control codes.  If the :ks: string
781# is a null string or is not defined, then the keypad is assumed to be in
782# Numeric Mode.  If the :ks: string switches the keypad into Application
783# Mode, it is expected that the :ke: string will contain the control codes
784# necessary to reset the keypad to "Normal" mode, and it is also expected that
785# applications which transmit the :ks: string will also always transmit the
786# :ke: string to the terminal before they exit.
787#
788# Here's a diagram of the VT100 keypad keys with their bindings.
789# The top line is the name of the key (some DEC keyboards have the keys
790# labelled somewhat differently, like GOLD instead of PF1, but this is
791# the most "official" name).  The second line is the escape sequence it
792# generates in Application Keypad mode (where "$" means the ESC
793# character).  The third line contains two items, first the mapping of
794# the key in terminfo, and then in termcap.
795#   _______________________________________
796#  |   PF1   |   PF2   |   PF3   |   PF4   |
797#  |   $OP   |   $OQ   |   $OR   |   $OS   |
798#  |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
799#  |    7         8         9         -    |
800#  |   $Ow   |   $Ox   |   $Oy   |   $Om   |
801#  |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________|
802#  |    4    |    5    |    6    |    ,    |
803#  |   $Ot   |   $Ou   |   $Ov   |   $Ol   |
804#  |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_|
805#  |    1    |    2    |    3    |         |
806#  |   $Oq   |   $Or   |   $Os   |  enter  |
807#  |_ka1__K1_|_kb2__K2_|_ka3__K3_|  $OM    |
808#  |         0         |   .     |         |
809#  |        $Op        |  $On    |         |
810#  |___kc1_______K4____|_kc3__K5_|_kent_@8_|
811#
812# And here, for those of you with orphaned VT100s lacking documentation, is
813# a description of the soft switches invoked when you do `Set Up'.
814#
815#  Scroll 0-Jump               Shifted 3   0-#
816#  |      1-Smooth             |           1-British pound sign
817#  | Autorepeat 0-Off          | Wrap Around 0-Off
818#  | |          1-On           | |           1-On
819#  | | Screen 0-Dark Bkg       | | New Line 0-Off
820#  | | |      1-Light Bkg      | | |        1-On
821#  | | | Cursor 0-Underline    | | | Interlace 0-Off
822#  | | | |      1-Block        | | | |         1-On
823#  | | | |                     | | | |
824#  1 1 0 1       1 1 1 1       0 1 0 0       0 0 1 0       <--Standard Settings
825#                | | | |                     | | | |
826#                | | | Auto XON/XOFF 0-Off   | | | Power 0-60 Hz
827#                | | |               1-On    | | |       1-50 Hz
828#                | | Ansi/VT52 0-VT52        | | Bits Per Char. 0-7 Bits
829#                | |           1-ANSI        | |                1-8 Bits
830#                | Keyclick 0-Off            | Parity 0-Off
831#                |          1-On             |        1-On
832#                Margin Bell 0-Off           Parity Sense 0-Odd
833#                            1-On                         1-Even
834#
835# The following SET-UP modes are assumed for normal operation:
836#	ANSI_MODE	AUTO_XON/XOFF_ON	NEWLINE_OFF	80_COLUMNS
837#	WRAP_AROUND_ON  JUMP_SCROLL_OFF
838# Other SET-UP modes may be set for operator convenience or communication
839# requirements; I recommend
840#	AUTOREPEAT_ON	BLOCK_CURSOR	MARGIN_BELL_OFF    SHIFTED_3_#
841# Unless you have a graphics add-on such as Digital Engineering's VT640
842# (and even then, whenever it can be arranged!) you should set
843#	INTERLACE_OFF
844#
845# (vt100: I added <rmam>/<smam> based on the init string, also :bs:. -- esr)
846vt100|vt100-am|dec vt100 (w/advanced video):\
847	:am:bs:ms:xn:xo:\
848	:co#80:it#8:li#24:vt#3:\
849	:@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\
850	:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
851	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
852	:ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
853	:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=^J:\
854	:eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\
855	:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:k9=\EOw:k;=\EOx:\
856	:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
857	:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:\
858	:nd=\E[C:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
859	:..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\
860	:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\
861	:up=\E[A:us=\E[4m:
862vt100nam|vt100-nam|vt100 no automargins:\
863	:am@:xn@:tc=vt100-am:
864vt100-vb|dec vt100 (w/advanced video) & no beep:\
865	:bl@:vb=\E[?5h\E[?5l:tc=vt100:
866
867# Ordinary vt100 in 132 column ("wide") mode.
868vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video):\
869	:co#132:li#24:\
870	:r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-am:
871vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin):\
872	:co#132:li#14:vt@:\
873	:r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-nam:
874
875# vt100 with no advanced video.
876vt100-nav|vt100 without advanced video option:\
877	:sg#1:\
878	:mb@:md@:me@:mr@:sa@:se=\E[m:so=\E[7m:ue@:us@:tc=vt100:
879vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option):\
880	:co#132:li#14:tc=vt100-nav:
881
882# vt100 with one of the 24 lines used as a status line.
883# We put the status line on the top.
884vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline:\
885	:es:hs:\
886	:li#23:\
887	:cl=\E[2;1H\E[J:cm=\E[%i%+^A;%dH:cs=\E[%i%i%d;%dr:\
888	:ds=\E7\E[1;24r\E8:fs=\E8:ho=\E[2;1H:is=\E7\E[2;24r\E8:\
889	:ts=\E7\E[1;%p1%dH\E[1K:\
890	:tc=vt100-am:
891
892# Status line at bottom.
893# Clearing the screen will clobber status line.
894vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline:\
895	:es:hs:\
896	:li#23:\
897	:ds=\E7\E[1;24r\E8:fs=\E8:is=\E[1;23r\E[23;1H:\
898	:ts=\E7\E[24;%p1%dH\E[1K:\
899	:tc=vt100-am:
900
901# Most of the `vt100' emulators out there actually emulate a vt102
902# This entry (or vt102-nsgr) is probably the right thing to use for
903# these.
904vt102|dec vt102:\
905	:mi:\
906	:al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4l:im=\E[4h:tc=vt100:
907vt102-w|dec vt102 in wide mode:\
908	:co#132:\
909	:r3=\E[?3h:tc=vt102:
910
911# Many brain-dead PC comm programs that pretend to be `vt100-compatible'
912# fail to interpret the ^O and ^N escapes properly.  Symptom: the :me:
913# string in the canonical vt100 entry above leaves the screen littered
914# with little  snowflake or star characters (IBM PC ROM character \017 = ^O)
915# after highlight turnoffs.  This entry should fix that, and even leave
916# ACS support working, at the cost of making multiple-highlight changes
917# slightly more expensive.
918# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995
919vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes):\
920	:me=\E[m:sa@:\
921	:tc=vt102:
922
923# VT125 Graphics CRT.  Clear screen also erases graphics
924vt125|vt125 graphics terminal:\
925	:cl=\E[H\E[2J\EPpS(E)\E\:tc=vt100:
926
927# This isn't a DEC entry, it came from University of Wisconsin.
928# (vt131: I added <rmam>/<smam> based on the init string, also :bs: -- esr)
929vt131|dec vt131:\
930	:am:bs:xn:\
931	:co#80:it#8:li#24:vt#3:\
932	:RA=\E[?7h:SA=\E[?7h:bl=^G:cd=50\E[J:ce=3\E[K:\
933	:cl=50\E[;H\E[2J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
934	:do=^J:ho=\E[H:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:\
935	:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\
936	:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=2\E[5m:md=2\E[1m:\
937	:me=2\E[m:mr=2\E[7m:nd=2\E[C:nw=^M^J:\
938	:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\
939	:se=2\E[m:so=2\E[7m:sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:\
940	:us=2\E[4m:
941
942# vt132 - like vt100 but slower and has ins/del line and such.
943# I'm told that :im:/:ei: are backwards in the terminal from the
944# manual and from the ANSI standard, this describes the actual
945# terminal. I've never actually used a vt132 myself, so this
946# is untested.
947#
948vt132|DEC vt132:\
949	:xn:\
950	:al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4h:im=\E[4l:ip=:sf=\n:tc=vt100:
951
952# This vt220 description maps F5--F9 to the second block of function keys
953# at the top of the keyboard.  The "DO" key is used as F10 to avoid conflict
954# with the key marked (ESC) on the vt220.  See vt220d for an alternate mapping.
955# PF1--PF4 are used as F1--F4.
956#
957vt220-old|vt200-old|DEC VT220 in vt100 emulation mode:\
958	:am:bs:mi:pt:xn:xo:\
959	:co#80:li#24:vt#3:\
960	:@7=\E[4~:RA=\E[?7l:SA=\E[?7h:\
961	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
962	:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
963	:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
964	:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
965	:if=/usr/share/tabset/vt100:im=\E[4h:\
966	:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
967	:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:k9=\E[21~:\
968	:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:\
969	:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:\
970	:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nl=^J:\
971	:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
972	:rf=/usr/share/tabset/vt100:\
973	:..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\
974	:sc=\E7:se=\E[27m:sf=20\ED:so=\E[7m:sr=14\EM:ta=^I:\
975	:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
976
977# A much better description of the VT200/220; used to be vt220-8
978# (untranslatable capabilities removed to fit entry within 1023 bytes)
979# (sgr removed to fit entry within 1023 bytes)
980# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
981vt220|vt200|dec vt220:\
982	:am:bs:mi:ms:xn:xo:\
983	:co#80:it#8:li#24:vt#3:\
984	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
985	:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:\
986	:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
987	:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:\
988	:ei=\E[4l:ho=\E[H:if=/usr/share/tabset/vt100:im=\E[4h:\
989	:is=\E[?7h\E[>\E[?1h\E F\E[?4l:k1=\EOP:k2=\EOQ:k3=\EOR:\
990	:k4=\EOS:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kI=\E[2~:\
991	:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\
992	:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\
993	:nw=\EE:rc=\E8:sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:\
994	:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:
995vt220-w|vt200-w|DEC vt220 in wide mode:\
996	:co#132:\
997	:r3=\E[?3h:tc=vt220:
998# (untranslatable capabilities removed to fit entry within 1023 bytes)
999# (sgr removed to fit entry within 1023 bytes)
1000# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
1001vt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode:\
1002	:am:bs:mi:ms:xn:xo:\
1003	:co#80:it#8:li#24:vt#3:\
1004	:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\
1005	:LE=\233%dD:RI=\233%dC:UP=\233%dA:ae=^O:al=\233L:as=^N:\
1006	:bl=^G:cd=\233J:ce=\233K:cl=\233H\233J:cm=\233%i%d;%dH:\
1007	:cr=^M:cs=\233%i%d;%dr:ct=\2333g:dc=\233P:dl=\233M:do=^J:\
1008	:ec=\233%dX:ei=\2334l:ho=\233H:\
1009	:if=/usr/share/tabset/vt100:im=\2334h:\
1010	:is=\233?7h\233>\233?1h\E F\233?4l:k1=\EOP:k2=\EOQ:\
1011	:k3=\EOR:k4=\EOS:k6=\23317~:k7=\23318~:k8=\23319~:\
1012	:k9=\23320~:kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\233B:\
1013	:kh=\233H:kl=\233D:kr=\233C:ku=\233A:le=^H:mb=\2335m:\
1014	:md=\2331m:me=\233m:mr=\2337m:nd=\233C:nw=\EE:rc=\E8:\
1015	:sc=\E7:se=\23327m:sf=\ED:so=\2337m:sr=\EM:st=\EH:ta=^I:\
1016	:ue=\23324m:up=\233A:us=\2334m:vb=\233?5h\233?5l:
1017
1018#
1019# vt220d:
1020# This vt220 description regards F6--F10 as the second block of function keys
1021# at the top of the keyboard.  This mapping follows the description given
1022# in the VT220 Programmer Reference Manual and agrees with the labeling
1023# on some terminals that emulate the vt220.  There is no support for an F5.
1024# See vt220 for an alternate mapping.
1025#
1026vt220d|DEC VT220 in vt100 mode with DEC function key labeling:\
1027	:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
1028	:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:k5@:\
1029	:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\
1030	:tc=vt220-old:
1031
1032vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins:\
1033	:am@:\
1034	:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220:
1035
1036# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko
1037# (not an official DEC entry!)
1038# The problem with real vt220 terminals is they don't send escapes when in
1039# in vt220 mode.  This can be gotten around two ways.  1> don't send
1040# escapes or 2> put the vt220 into vt100 mode and use all the nifty
1041# features of vt100 advanced video which it then has.
1042#
1043# This entry takes the view of putting a vt220 into vt100 mode so
1044# you can use the escape key in emacs and everything else which needs it.
1045#
1046# You probably don't want to use this on a VMS machine since VMS will think
1047# it has a vt220 and will get fouled up coming out of emacs
1048#
1049# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996
1050# (Added vt100 :rc:,:sc: to quiet a tic warning -- esr)
1051vt200-js|vt220-js|dec vt200 series with jump scroll:\
1052	:am:\
1053	:co#80:\
1054	:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
1055	:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:dm=:do=^J:ed=:\
1056	:ei=\E[4l:ho=\E[H:im=\E[4h:\
1057	:is=\E[61"p\E[H\E[?3l\E[?4l\E[?1l\E[?5l\E[?6l\E[?7h\E[?8h\E[?25h\E>\E[m:\
1058	:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:\
1059	:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
1060	:nw=^M\ED:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
1061	:rf=/usr/lib/tabset/vt100:sc=\E7:se=5\E[27m:sf=\ED:\
1062	:so=5\E[7m:sr=\EM:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:
1063
1064
1065# This was DEC's vt320.  Use the purpose-built one below instead
1066#vt320|DEC VT320 in vt100 emulation mode,
1067#	use=vt220,
1068
1069#
1070# Use v320n for SCO's LYRIX.  Otherwise, use Adam Thompson's vt320-nam.
1071#
1072vt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode:\
1073	:am@:\
1074	:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220:
1075
1076# These entries are not DEC's official ones, they were purpose-built for the
1077# VT320.  Here are the designer's notes:
1078# <kel> is end on a PC kbd.  Actually 'select' on a VT.  Mapped to
1079# 'Erase to End of Field'... since nothing seems to use 'end' anyways...
1080# khome is Home on a PC kbd.  Actually 'FIND' on a VT.
1081# Things that use <knxt> usually use tab anyways... and things that don't use
1082# tab usually use <knxt> instead...
1083# kprv is same as tab - Backtab is useless...
1084# I left out :sa: because of its RIDICULOUS complexity,
1085# and the resulting fact that it causes the termcap translation of the entry
1086# to SMASH the 1k-barrier...
1087# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
1088# (vt320: uncommented :fs:, comnmmented out <kslt> to avoid a conflict --esr)
1089# (untranslatable capabilities removed to fit entry within 1023 bytes)
1090# (sgr removed to fit entry within 1023 bytes)
1091# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
1092vt320|vt300|dec vt320 7 bit terminal:\
1093	:am:es:hs:mi:ms:xn:\
1094	:co#80:li#24:ws#80:\
1095	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
1096	:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
1097	:RI=\E[%dC:UP=\E[%dA:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:\
1098	:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\
1099	:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:\
1100	:ei=\E[4l:fs=\E[0$}:ho=\E[H:im=\E[4h:\
1101	:is=\E>\E[?3l\E[?4l\E[5?l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
1102	:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\
1103	:k8=\E[19~:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\
1104	:kb=\177:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:kl=\EOD:kr=\EOC:\
1105	:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\
1106	:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:sc=\E7:se=\E[m:sf=\ED:\
1107	:so=\E[7m:sr=\EM:st=\EH:ta=^I:ts=\E[1$}\E[H\E[K:ue=\E[m:\
1108	:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
1109vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy:\
1110	:am@:\
1111	:is=\E>\E[?3l\E[?4l\E[5?l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
1112	:r2=\E>\E[?3l\E[?4l\E[5?l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
1113	:tc=vt320:
1114# We have to init 132-col mode, not 80-col mode.
1115vt320-w|vt300-w|dec vt320 wide 7 bit terminal:\
1116	:co#132:ws#132:\
1117	:is=\E>\E[?3h\E[?4l\E[5?l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
1118	:r2=\E>\E[?3h\E[?4l\E[5?l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
1119	:tc=vt320:
1120vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am:\
1121	:am@:\
1122	:is=\E>\E[?3h\E[?4l\E[5?l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
1123	:r2=\E>\E[?3h\E[?4l\E[5?l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
1124	:tc=vt320-w:
1125
1126# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals
1127#   which are pretty much a superset of the VT320.  They have the
1128#   host writable status line, yet another different DRCS matrix size,
1129#   and such, but they add the DEC Technical character set, Multiple text
1130#   pages, selectable length pages, and the like.  The difference between
1131#   the vt330 and vt340 is that the latter has only 2 planes and a monochrome
1132#   monitor, the former has 4 planes and a color monitor.  These terminals
1133#   support VT131 and ANSI block mode, but as with much of these things,
1134#   termcap/terminfo doesn't deal with these features.
1135#
1136# Note that this entry is are set up in what was the standard way for GNU
1137# Emacs v18 terminal modes to deal with the cursor keys in that the arrow
1138# keys were switched into application mode at the same time the numeric pad
1139# is switched into application mode.  This changes the definitions of the
1140# arrow keys.  Emacs v19 is smarter and mines its keys directly out of
1141# your termcap or terminfo entry,
1142#
1143# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993
1144# (vt340: string capability "sb=\E[M" corrected to "sr";
1145# also, added <rmam>/<smam> based on the init string -- esr)
1146vt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page:\
1147	:am:es:hs:mi:ms:xn:xo:\
1148	:co#80:it#8:li#24:vt#3:\
1149	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
1150	:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
1151	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
1152	:ae=^O:al=\E[L:as=^N:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
1153	:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
1154	:dl=\E[M:do=^J:ds=\E[2$~\r\E[1$}\E[K\E[$}:ei=\E[4l:\
1155	:fs=\E[$}:ho=\E[H:im=\E[4h:\
1156	:is=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
1157	:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\
1158	:k8=\E[19~:k9=\E[20~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\
1159	:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l1=pf1:l2=pf2:l3=pf3:l4=pf4:\
1160	:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=^M\ED:\
1161	:r1=\E[?3l:rc=\E8:rf=/usr/share/tabset/vt300:sc=\E7:\
1162	:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
1163	:ts=\E[2$~\E[1$}\E[1;%dH:ue=\E[24m:up=\E[A:us=\E[4m:\
1164	:vb=200\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h:
1165
1166# DEC doesn't supply a vt400 description, so we add Daniel Glasser's
1167# (originally written with vt420 as its primary name, and usable for it).
1168#
1169# VT400/420 -- This terminal is a superset of the vt320.  It adds the multiple
1170#    text pages and long text pages with selectable length of the vt340, along
1171#    with left and right margins, rectangular area text copy, fill, and erase
1172#    operations, selected region character attribute change operations,
1173#    page memory and rectangle checksums, insert/delete column, reception
1174#    macros, and other features too numerous to remember right now.  TERMCAP
1175#    can only take advantage of a few of these added features.
1176#
1177# Note that this entry is are set up in what was the standard way for GNU
1178# Emacs v18 terminal modes to deal with the cursor keys in that the arrow
1179# keys were switched into application mode at the same time the numeric pad
1180# is switched into application mode.  This changes the definitions of the
1181# arrow keys.  Emacs v19 is smarter and mines its keys directly out of
1182# your termcap entry,
1183#
1184# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993
1185# (vt400: string capability ":sb=\E[M:" corrected to ":sr=\E[M:";
1186# also, added <rmam>/<smam> based on the init string -- esr)
1187# (untranslatable capabilities removed to fit entry within 1023 bytes)
1188# (sgr removed to fit entry within 1023 bytes)
1189# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
1190vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap:\
1191	:am:es:hs:mi:ms:xn:xo:\
1192	:co#80:it#8:li#24:vt#3:\
1193	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
1194	:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:\
1195	:cd=10\E[J:ce=4\E[K:cl=10\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
1196	:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
1197	:ds=\E[2$~\r\E[1$}\E[K\E[$}:ei=\E[4l:fs=\E[$}:ho=\E[H:\
1198	:ic=\E[@:im=\E[4h:\
1199	:is=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
1200	:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\
1201	:k8=\E[19~:k9=\E[20~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\
1202	:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:\
1203	:me=\E[m:mr=\E[7m:nd=\E[C:nw=^M\ED:rc=\E8:sc=\E7:se=\E[27m:\
1204	:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
1205	:ts=\E[2$~\E[1$}\E[1;%dH:ue=\E[24m:up=\E[A:us=\E[4m:\
1206	:vb=200\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:vs=\E[?25h:
1207
1208# (vt420: I removed :k0:, it collided with <kf10>.  I also restored
1209# a missing :sc: -- esr)
1210vt420|DEC VT420:\
1211	:am:mi:xn:xo:\
1212	:co#80:li#24:vt#3:\
1213	:*6=\E[4~:@0=\E[1~:RA=\E[?7l:\
1214	:S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
1215	:SA=\E[?7h:\
1216	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
1217	:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
1218	:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
1219	:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
1220	:i2=\E[?67h\E[64;1"p:if=/usr/share/tabset/vt300:\
1221	:im=\E[4h:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:\
1222	:k4=\EOS:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:\
1223	:k9=\E[21~:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\
1224	:kb=^H:kd=\E[B:ke=\E>:kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:le=^H:\
1225	:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\
1226	:r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/share/tabset/vt300:\
1227	:..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\
1228	:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\
1229	:up=\E[A:us=\E[4m:
1230
1231#
1232# DEC VT220 and up support DECUDK (user-defined keys).  DECUDK (i.e., pfx)
1233# takes two parameters, the key and the string.  Translating the key is
1234# straightforward (keys 1-5 are not defined on real terminals, though some
1235# emulators define these):
1236#
1237#               if (key < 16) then  value = key;
1238#               else if (key < 21) then value = key + 1;
1239#               else if (key < 25) then value = key + 2;
1240#               else if (key < 27) then value = key + 3;
1241#               else if (key < 30) then value = key + 4;
1242#               else value = key + 5;
1243#
1244# The string must be the hexadecimal equivalent, e.g., "5052494E" for "PRINT".
1245# There's no provision in terminfo for emitting a string in this format, so the
1246# application has to know it.
1247#
1248vt420pc|DEC VT420 w/PC keyboard:\
1249	:@7=\E[4~:F1=\E[23~:F2=\E[24~:F3=\E[11;2~:F4=\E[12;2~:\
1250	:F5=\E[13;2~:F6=\E[14;2~:F7=\E[15;2~:F8=\E[17;2~:\
1251	:F9=\E[18;2~:FA=\E[19;2~:FB=\E[20;2~:FC=\E[21;2~:\
1252	:FD=\E[23;2~:FE=\E[24;2~:FF=\E[23~:FG=\E[24~:FH=\E[25~:\
1253	:FI=\E[26~:FJ=\E[28~:FK=\E[29~:FL=\E[31~:FM=\E[32~:\
1254	:FN=\E[33~:FO=\E[34~:FP=\E[35~:FQ=\E[36~:FR=\E[23;2~:\
1255	:FS=\E[24;2~:FT=\E[25;2~:FU=\E[26;2~:FV=\E[28;2~:\
1256	:FW=\E[29;2~:FX=\E[31;2~:FY=\E[32;2~:FZ=\E[33;2~:\
1257	:Fa=\E[34;2~:Fb=\E[35;2~:Fc=\E[36;2~:\
1258	:S6=USR_TERM\072vt420pcdos\072:k1=\E[11~:k2=\E[12~:\
1259	:k3=\E[13~:k4=\E[14~:k5=\E[15~:k6=\E[17~:k7=\E[18~:\
1260	:k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\177:kh=\E[H:\
1261	:..px=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\:tc=vt420:
1262
1263vt420pcdos|DEC VT420 w/PC for DOS Merge:\
1264	:li#25:\
1265	:S1=%?%p2%{19}%=%t\E\023\021%e%p2%{32}%<%t\E%p2%c%e%p2%{127}%=%t\E\177%e%p2%c%;:\
1266	:S4=\E[?1;2r\E[34h:\
1267	:S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:S6@:\
1268	:me=\E[m:sa@:\
1269	:tc=vt420pc:
1270
1271vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys:\
1272	:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
1273	:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
1274	:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
1275	:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\
1276	:kD=\177:kh=\E[H:l1=\EOP:l2=\EOQ:l3=\EOR:l4=\EOS:\
1277	:tc=vt420:
1278
1279vt510|DEC VT510:\
1280	:tc=vt420:
1281vt510pc|DEC VT510 w/PC keyboard:\
1282	:tc=vt420pc:
1283vt510pcdos|DEC VT510 w/PC for DOS Merge:\
1284	:tc=vt420pcdos:
1285
1286# VT520/VT525
1287#
1288# The VT520 is a monochrome text terminal capable of managing up to
1289# four independent sessions in the terminal.  It has multiple ANSI
1290# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console)
1291# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950,
1292# 925 910+, ADDS A2).  This terminfo data is for the ANSI emulations only.
1293#
1294# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or
1295# [Alt]/[Print Screen] depending upon which keyboard and which
1296# terminal mode is being used.  If Set-Up has been disabled or
1297# assigned to an unknown key, Set-Up may be entered by pressing
1298# [F3] as the first key after power up, regardless of keyboard type.
1299# (vt520: I added <rmam>/<smam> based on the init string, also :sc: -- esr)
1300# (untranslatable capabilities removed to fit entry within 1023 bytes)
1301vt520|DEC VT520:\
1302	:am:mi:xn:xo:\
1303	:co#80:li#24:vt#3:\
1304	:*6=\E[4~:@0=\E[1~:RA=\E[?7l:\
1305	:S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
1306	:SA=\E[?7h:\
1307	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
1308	:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
1309	:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
1310	:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
1311	:i2=\E[?67h\E[64;1"p:if=/usr/share/tabset/vt300:\
1312	:im=\E[4h:is=\E[1;24r\E[24;1H:k0=\E[29~:k1=\EOP:k2=\EOQ:\
1313	:k3=\EOR:k4=\EOS:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:\
1314	:k9=\E[21~:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\
1315	:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:\
1316	:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:r3=\E[?67h\E[64;1"p:\
1317	:rc=\E8:rf=/usr/share/tabset/vt300:sc=\E7:se=\E[m:sf=\ED:\
1318	:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:
1319
1320# (vt525: I added <rmam>/<smam> based on the init string;
1321# removed :se:=\E[m, :ue:=\E[m, added :sc: -- esr)
1322# (untranslatable capabilities removed to fit entry within 1023 bytes)
1323vt525|DEC VT525:\
1324	:am:mi:xn:xo:\
1325	:co#80:li#24:vt#3:\
1326	:*6=\E[4~:@0=\E[1~:RA=\E[?7l:\
1327	:S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
1328	:SA=\E[?7h:\
1329	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
1330	:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
1331	:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
1332	:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
1333	:i2=\E[?67h\E[64;1"p:if=/usr/share/tabset/vt300:\
1334	:im=\E[4h:is=\E[1;24r\E[24;1H:k0=\E[29~:k1=\EOP:k2=\EOQ:\
1335	:k3=\EOR:k4=\EOS:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:\
1336	:k9=\E[21~:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\
1337	:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:\
1338	:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:r3=\E[?67h\E[64;1"p:\
1339	:rc=\E8:rf=/usr/share/tabset/vt300:sc=\E7:se=\E[m:sf=\ED:\
1340	:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:
1341