xref: /illumos-gate/usr/src/data/terminfo/termcap.src (revision 503609a9)
113cfc972SYuri Pankov######## TERMINAL TYPE DESCRIPTIONS SOURCE FILE
213cfc972SYuri Pankov#
313cfc972SYuri Pankov# This version of terminfo.src is distributed with ncurses and is maintained
413cfc972SYuri Pankov# by Thomas E. Dickey (TD).
513cfc972SYuri Pankov#
613cfc972SYuri Pankov# Report bugs and new terminal descriptions to
713cfc972SYuri Pankov#	bug-ncurses@gnu.org
813cfc972SYuri Pankov#
913cfc972SYuri Pankov#	$Revision: 1.162 $
1013cfc972SYuri Pankov#	$Date: 2011/08/20 20:52:51 $
1113cfc972SYuri Pankov#
1213cfc972SYuri Pankov# The original header is preserved below for reference.  It is noted that there
1313cfc972SYuri Pankov# is a "newer" version which differs in some cosmetic details (but actually
1413cfc972SYuri Pankov# stopped updates several years ago); we have decided to not change the header
1513cfc972SYuri Pankov# unless there is also a change in content.
1613cfc972SYuri Pankov#
1713cfc972SYuri Pankov# To further muddy the waters, it is noted that changes to this file as part of
1813cfc972SYuri Pankov# maintenance of ncurses (since 1996) are generally conceded to be copyright
1913cfc972SYuri Pankov# under the ncurses MIT-style license.  That was the effect of the agreement
2013cfc972SYuri Pankov# which the principal authors of ncurses made in 1998.  However, since much of
2113cfc972SYuri Pankov# the file itself is of unknown authorship (and the disclaimer below makes it
2213cfc972SYuri Pankov# obvious that Raymond cannot or will not convey rights over those parts),
2313cfc972SYuri Pankov# there is no explicit copyright notice on the file itself.
2413cfc972SYuri Pankov#
2513cfc972SYuri Pankov# It would also be a nuisance to split the file into unknown/known authorship
2613cfc972SYuri Pankov# and move pieces as they are maintained, since many of the maintenance changes
2713cfc972SYuri Pankov# have been small corrections to Raymond's translations to/from termcap format,
2813cfc972SYuri Pankov# correcting the data but not the accompanying annotations.
2913cfc972SYuri Pankov#
3013cfc972SYuri Pankov# In any case, note that almost half of this file is not data but annotations
3113cfc972SYuri Pankov# which reflect creative effort.  Furthermore, the structure of entries to
3213cfc972SYuri Pankov# reuse common chunks also is creative (and subject to copyright).  Finally,
3313cfc972SYuri Pankov# some portions of the data are derivative work under a compatible MIT-style
3413cfc972SYuri Pankov# license from xterm.
3513cfc972SYuri Pankov#
3613cfc972SYuri Pankov#------------------------------------------------------------------------------
3713cfc972SYuri Pankov#	Version 10.2.1
3813cfc972SYuri Pankov#	terminfo syntax
3913cfc972SYuri Pankov#
4013cfc972SYuri Pankov#	Eric S. Raymond		(current maintainer)
4113cfc972SYuri Pankov#	John Kunze, Berkeley
4213cfc972SYuri Pankov#	Craig Leres, Berkeley
4313cfc972SYuri Pankov#
4413cfc972SYuri Pankov# Please e-mail changes to terminfo@thyrsus.com; the old termcap@berkeley.edu
4513cfc972SYuri Pankov# address is no longer valid.  The latest version can always be found at
4613cfc972SYuri Pankov# <http://www.tuxedo.org/terminfo>.
4713cfc972SYuri Pankov#
4813cfc972SYuri Pankov# PURPOSE OF THIS FILE:
4913cfc972SYuri Pankov#
5013cfc972SYuri Pankov# This file describes the capabilities of various character-cell terminals,
5113cfc972SYuri Pankov# as needed by software such as screen-oriented editors.
5213cfc972SYuri Pankov#
5313cfc972SYuri Pankov# Other terminfo and termcap files exist, supported by various OS vendors
5413cfc972SYuri Pankov# or as relics of various older versions of UNIX.  This one is the longest
5513cfc972SYuri Pankov# and most comprehensive one in existence.  It subsumes not only the entirety
5613cfc972SYuri Pankov# of the historical 4.4BSD, GNU, System V and SCO termcap files and the BRL
5713cfc972SYuri Pankov# termcap file, but also large numbers of vendor-maintained termcap and
5813cfc972SYuri Pankov# terminfo entries more complete and carefully tested than those in historical
5913cfc972SYuri Pankov# termcap/terminfo versions.
6013cfc972SYuri Pankov#
6113cfc972SYuri Pankov# Pointers to related resources (including the ncurses distribution) may
6213cfc972SYuri Pankov# be found at <http://www.tuxedo.org/terminfo>.
6313cfc972SYuri Pankov#
6413cfc972SYuri Pankov# INTERNATIONALIZATION:
6513cfc972SYuri Pankov#
6613cfc972SYuri Pankov# This file uses only the US-ASCII character set (no ISO8859 characters).
6713cfc972SYuri Pankov#
6813cfc972SYuri Pankov# This file assumes a US-ASCII character set. If you need to fix this, start
6913cfc972SYuri Pankov# by global-replacing \E(B and \E)B with the appropriate ISO 6429 enablers
7013cfc972SYuri Pankov# for your character set.  \E(A and \E)A enables the British character set
7113cfc972SYuri Pankov# with the pound sign at position 2/3.
7213cfc972SYuri Pankov#
7313cfc972SYuri Pankov# In a Japanese-processing environment using EUC/Japanese or Shift-JIS,
7413cfc972SYuri Pankov# C1 characters are considered the first-byte set of the Japanese encodings,
7513cfc972SYuri Pankov# so \E)0 should be avoided in <enacs> and initialization strings.
7613cfc972SYuri Pankov#
7713cfc972SYuri Pankov# FILE FORMAT:
7813cfc972SYuri Pankov#
7913cfc972SYuri Pankov# The version you are looking at may be in any of three formats: master
8013cfc972SYuri Pankov# (terminfo with OT capabilities), stock terminfo, or termcap.  You can tell
8113cfc972SYuri Pankov# which by the format given in the header above.
8213cfc972SYuri Pankov#
8313cfc972SYuri Pankov# The master format is accepted and generated by the terminfo tools in the
8413cfc972SYuri Pankov# ncurses suite; it differs from stock (System V-compatible) terminfo only
8513cfc972SYuri Pankov# in that it admits a group of capabilities (prefixed `OT') equivalent to
8613cfc972SYuri Pankov# various obsolete termcap capabilities.  You can, thus, convert from master
8713cfc972SYuri Pankov# to stock terminfo simply by filtering with `sed "/OT[^,]*,/s///"'; but if
8813cfc972SYuri Pankov# you have ncurses `tic -I' is nicer (among other things, it automatically
8913cfc972SYuri Pankov# outputs entries in a canonical form).
9013cfc972SYuri Pankov#
9113cfc972SYuri Pankov# The termcap version is generated automatically from the master version
9213cfc972SYuri Pankov# using tic -C.  This filtering leaves in the OT capabilities under their
9313cfc972SYuri Pankov# original termcap names.  All translated entries fit within the 1023-byte
9413cfc972SYuri Pankov# string-table limit of archaic termcap libraries except where explicitly
9513cfc972SYuri Pankov# noted below.  Note that the termcap translation assumes that your termcap
9613cfc972SYuri Pankov# library can handle multiple tc capabilities in an entry. 4.4BSD has this
9713cfc972SYuri Pankov# capability.  Older versions of GNU termcap, through 1.3, do not.
9813cfc972SYuri Pankov#
9913cfc972SYuri Pankov# For details on these formats, see terminfo(5) in the ncurses distribution,
10013cfc972SYuri Pankov# and termcap(5) in the 4.4BSD Unix Programmer's Manual.  Be aware that 4.4BSD
10113cfc972SYuri Pankov# curses has been declared obsolete by the caretakers of the 4.4BSD sources
10213cfc972SYuri Pankov# as of June 1995; they are encouraging everyone to migrate to ncurses.
10313cfc972SYuri Pankov#
10413cfc972SYuri Pankov# Note: unlike some other distributed terminfo files (Novell Unix & SCO's),
10513cfc972SYuri Pankov# no entry in this file has embedded comments.  This is so source translation
10613cfc972SYuri Pankov# to termcap only has to carry over leading comments.  Also, no name field
10713cfc972SYuri Pankov# contains embedded whitespace (such whitespace confuses rdist).
10813cfc972SYuri Pankov#
10913cfc972SYuri Pankov# Further note: older versions of this file were often installed with an editor
11013cfc972SYuri Pankov# script (reorder) that moved the most common terminal types to the front of
11113cfc972SYuri Pankov# the file.  This should no longer be necessary, as the file is now ordered
11213cfc972SYuri Pankov# roughly by type frequency with ANSI/VT100 and other common types up front.
11313cfc972SYuri Pankov#
11413cfc972SYuri Pankov# Some information has been merged in from terminfo files distributed by
11513cfc972SYuri Pankov# USL and SCO (see COPYRIGHTS AND OTHER DELUSIONS below).  Much information
11613cfc972SYuri Pankov# comes from vendors who maintain official terminfos for their hardware
11713cfc972SYuri Pankov# (notably DEC and Wyse).
11813cfc972SYuri Pankov#
11913cfc972SYuri Pankov# A detailed change history is included at the end of this file.
12013cfc972SYuri Pankov#
12113cfc972SYuri Pankov# FILE ORGANIZATION:
12213cfc972SYuri Pankov#
12313cfc972SYuri Pankov# Comments in this file begin with # - they cannot appear in the middle
12413cfc972SYuri Pankov# of a terminfo/termcap entry (this feature had to be sacrificed in order
12513cfc972SYuri Pankov# to allow standard terminfo and termcap syntax to be generated cleanly from
12613cfc972SYuri Pankov# the master format).  Individual capabilities are commented out by
12713cfc972SYuri Pankov# placing a period between the colon and the capability name.
12813cfc972SYuri Pankov#
12913cfc972SYuri Pankov# The file is divided up into major sections (headed by lines beginning with
13013cfc972SYuri Pankov# the string "########") and minor sections (beginning with "####"); do
13113cfc972SYuri Pankov#
13213cfc972SYuri Pankov#	grep "^####" <file> | more
13313cfc972SYuri Pankov#
13413cfc972SYuri Pankov# to see a listing of section headings.  The intent of the divisions is
13513cfc972SYuri Pankov# (a) to make it easier to find things, and (b) to order the database so
13613cfc972SYuri Pankov# that important and frequently-encountered terminal types are near the
13713cfc972SYuri Pankov# front (so that you'll get reasonable search efficiency from a linear
13813cfc972SYuri Pankov# search of the termcap form even if you don't use reorder).  Minor sections
13913cfc972SYuri Pankov# usually correspond to manufacturers or standard terminal classes.
14013cfc972SYuri Pankov# Parenthesized words following manufacturer names are type prefixes or
14113cfc972SYuri Pankov# product line names used by that manufacturers.
14213cfc972SYuri Pankov#
14313cfc972SYuri Pankov# HOW TO READ THE ENTRIES:
14413cfc972SYuri Pankov#
14513cfc972SYuri Pankov# The first name in an entry is the canonical name for the model or
14613cfc972SYuri Pankov# type, last entry is a verbose description.  Others are mnemonic synonyms for
14713cfc972SYuri Pankov# the terminal.
14813cfc972SYuri Pankov#
14913cfc972SYuri Pankov# Terminal names look like <manufacturer> <model> - <modes/options>
15013cfc972SYuri Pankov# The part to the left of the dash, if a dash is present, describes the
15113cfc972SYuri Pankov# particular hardware of the terminal.  The part to the right may be used
15213cfc972SYuri Pankov# for flags indicating special ROMs, extra memory, particular terminal modes,
15313cfc972SYuri Pankov# or user preferences.
15413cfc972SYuri Pankov#
15513cfc972SYuri Pankov# All names should be in lower case, for consistency in typing.
15613cfc972SYuri Pankov#
15713cfc972SYuri Pankov# The following are conventionally used suffixes:
15813cfc972SYuri Pankov#	-2p	Has two pages of memory.  Likewise 4p, 8p, etc.
15913cfc972SYuri Pankov#	-am	Enable auto-margin.
16013cfc972SYuri Pankov#	-m	Monochrome.  Suppress color support
16113cfc972SYuri Pankov#	-mc	Magic-cookie.  Some terminals (notably older Wyses) can
16213cfc972SYuri Pankov#		only support one attribute without magic-cookie lossage.
16313cfc972SYuri Pankov#		Their base entry is usually paired with another that
16413cfc972SYuri Pankov#		uses magic cookies to support multiple attributes.
16513cfc972SYuri Pankov#	-nam	No auto-margin - suppress :am: capability
16613cfc972SYuri Pankov#	-nl	No labels - suppress soft labels
16713cfc972SYuri Pankov#	-ns	No status line - suppress status line
16813cfc972SYuri Pankov#	-rv	Terminal in reverse video mode (black on white)
16913cfc972SYuri Pankov#	-s	Enable status line.
17013cfc972SYuri Pankov#	-vb	Use visible bell (:vb:) rather than :bl:.
17113cfc972SYuri Pankov#	-w	Wide - in 132 column mode.
17213cfc972SYuri Pankov# If a name has multiple suffixes and one is a line height, that one should
17313cfc972SYuri Pankov# go first.  Thus `aaa-30-s-rv' is recommended over `aaa-s-rv-30'.
17413cfc972SYuri Pankov#
17513cfc972SYuri Pankov# Entries with embedded plus signs are designed to be included through use/tc
17613cfc972SYuri Pankov# capabilities, not used as standalone entries.
17713cfc972SYuri Pankov#
17813cfc972SYuri Pankov# To avoid search clashes, some older all-numeric names for terminals have
17913cfc972SYuri Pankov# been removed (i.e., "33" for the Model 33 Teletype, "2621" for the HP2621).
18013cfc972SYuri Pankov# All primary names of terminals now have alphanumeric prefixes.
18113cfc972SYuri Pankov#
18213cfc972SYuri Pankov# Comments marked "esr" are mostly results of applying the termcap-compiler
18313cfc972SYuri Pankov# code packaged with ncurses and contemplating the resulting error messages.
18413cfc972SYuri Pankov# In many cases, these indicated obvious fixes to syntax garbled by the
18513cfc972SYuri Pankov# composers.  In a few cases, I was able to deduce corrected forms for garbled
18613cfc972SYuri Pankov# capabilities by looking at context.  All the information in the original
18713cfc972SYuri Pankov# entries is preserved in the comments.
18813cfc972SYuri Pankov#
18913cfc972SYuri Pankov# In the comments, terminfo capability names are bracketed with <> (angle
19013cfc972SYuri Pankov# brackets).  Termcap capability names are bracketed with :: (colons).
19113cfc972SYuri Pankov#
19213cfc972SYuri Pankov# INTERPRETATION OF USER CAPABILITIES
19313cfc972SYuri Pankov#
19413cfc972SYuri Pankov# The System V Release 4 and XPG4 terminfo format defines ten string
19513cfc972SYuri Pankov# capabilities for use by applications, <u0>...<u9>.   In this file, we use
19613cfc972SYuri Pankov# certain of these capabilities to describe functions which are not covered
19713cfc972SYuri Pankov# by terminfo.  The mapping is as follows:
19813cfc972SYuri Pankov#
19913cfc972SYuri Pankov#	u9	terminal enquire string (equiv. to ANSI/ECMA-48 DA)
20013cfc972SYuri Pankov#	u8	terminal answerback description
20113cfc972SYuri Pankov#	u7	cursor position request (equiv. to VT100/ANSI/ECMA-48 DSR 6)
20213cfc972SYuri Pankov#	u6	cursor position report (equiv. to ANSI/ECMA-48 CPR)
20313cfc972SYuri Pankov#
20413cfc972SYuri Pankov# The terminal enquire string <u9> should elicit an answerback response
20513cfc972SYuri Pankov# from the terminal.  Common values for <u9> will be ^E (on older ASCII
20613cfc972SYuri Pankov# terminals) or \E[c (on newer VT100/ANSI/ECMA-48-compatible terminals).
20713cfc972SYuri Pankov#
20813cfc972SYuri Pankov# The cursor position request (<u7>) string should elicit a cursor position
20913cfc972SYuri Pankov# report.  A typical value (for VT100 terminals) is \E[6n.
21013cfc972SYuri Pankov#
21113cfc972SYuri Pankov# The terminal answerback description (u8) must consist of an expected
21213cfc972SYuri Pankov# answerback string.  The string may contain the following scanf(3)-like
21313cfc972SYuri Pankov# escapes:
21413cfc972SYuri Pankov#
21513cfc972SYuri Pankov#	%c	Accept any character
21613cfc972SYuri Pankov#	%[...]	Accept any number of characters in the given set
21713cfc972SYuri Pankov#
21813cfc972SYuri Pankov# The cursor position report (<u6>) string must contain two scanf(3)-style
21913cfc972SYuri Pankov# %d format elements.  The first of these must correspond to the Y coordinate
22013cfc972SYuri Pankov# and the second to the %d.  If the string contains the sequence %i, it is
22113cfc972SYuri Pankov# taken as an instruction to decrement each value after reading it (this is
22213cfc972SYuri Pankov# the inverse sense from the cup string).  The typical CPR value is
22313cfc972SYuri Pankov# \E[%i%d;%dR (on VT100/ANSI/ECMA-48-compatible terminals).
22413cfc972SYuri Pankov#
22513cfc972SYuri Pankov# These capabilities are used by tack(1m), the terminfo action checker
22613cfc972SYuri Pankov# (distributed with ncurses 5.0).
22713cfc972SYuri Pankov#
22813cfc972SYuri Pankov# TABSET FILES
22913cfc972SYuri Pankov#
23013cfc972SYuri Pankov# All the entries in this file have been edited to assume that the tabset
23113cfc972SYuri Pankov# files directory is /usr/share/tabset, in conformance with the File Hierarchy
23213cfc972SYuri Pankov# Standard for Linux and open-source BSD systems.  Some vendors (notably Sun)
23313cfc972SYuri Pankov# use /usr/lib/tabset or (more recently) /usr/share/lib/tabset.
23413cfc972SYuri Pankov#
23513cfc972SYuri Pankov# No curses package we know of actually uses these files.  If their location
23613cfc972SYuri Pankov# is an issue, you will have to hand-patch the file locations before compiling
23713cfc972SYuri Pankov# this file.
23813cfc972SYuri Pankov#
23913cfc972SYuri Pankov# REQUEST FOR CONTACT INFORMATION AND HISTORICAL MATERIAL
24013cfc972SYuri Pankov#
24113cfc972SYuri Pankov# As the ANSI/ECMA-48 standard and variants take firmer hold, and as
24213cfc972SYuri Pankov# character-cell terminals are increasingly replaced by X displays, much of
24313cfc972SYuri Pankov# this file is becoming a historical document (this is part of the reason for
24413cfc972SYuri Pankov# the new organization, which puts ANSI types, xterm, Unix consoles,
24513cfc972SYuri Pankov# and vt100 up front in confidence that this will catch 95% of new hardware).
24613cfc972SYuri Pankov#
24713cfc972SYuri Pankov# For the terminal types still alive, I'd like to have manufacturer's
24813cfc972SYuri Pankov# contact data (Internet address and/or snail-mail + phone).
24913cfc972SYuri Pankov#
25013cfc972SYuri Pankov# I'm also interested in enriching the comments so that the latter portions of
25113cfc972SYuri Pankov# the file do in fact become a potted history of VDT technology as seen by
25213cfc972SYuri Pankov# UNIX hackers.  Ideally, I'd like the headers for each manufacturer to
25313cfc972SYuri Pankov# include its live/dead/out-of-the-business status, and for as many
25413cfc972SYuri Pankov# terminal types as possible to be tagged with information like years
25513cfc972SYuri Pankov# of heaviest use, popularity, and interesting features.
25613cfc972SYuri Pankov#
25713cfc972SYuri Pankov# I'm especially interested in identifying the obscure entries listed under
25813cfc972SYuri Pankov# `Miscellaneous obsolete terminals, manufacturers unknown' before the tribal
25913cfc972SYuri Pankov# wisdom about them gets lost.  If you know a lot about obscure old terminals,
26013cfc972SYuri Pankov# please go to the terminfo resource page, grab the UFO file (ufo.ti), and
26113cfc972SYuri Pankov# eyeball it for things you can identify and describe.
26213cfc972SYuri Pankov#
26313cfc972SYuri Pankov# If you have been around long enough to contribute, please read the file
26413cfc972SYuri Pankov# with this in mind and send me your annotations.
26513cfc972SYuri Pankov#
26613cfc972SYuri Pankov# COPYRIGHTS AND OTHER DELUSIONS
26713cfc972SYuri Pankov#
26813cfc972SYuri Pankov# The BSD ancestor of this file had a standard Regents of the University of
26913cfc972SYuri Pankov# California copyright with dates from 1980 to 1993.
27013cfc972SYuri Pankov#
27113cfc972SYuri Pankov# Some information has been merged in from a terminfo file SCO distributes.
27213cfc972SYuri Pankov# It has an obnoxious boilerplate copyright which I'm ignoring because they
27313cfc972SYuri Pankov# took so much of the content from the ancestral BSD versions of this file
27413cfc972SYuri Pankov# and didn't attribute it, thereby violating the BSD Regents' copyright.
27513cfc972SYuri Pankov#
27613cfc972SYuri Pankov# Not that anyone should care.  However many valid functions copyrights may
27713cfc972SYuri Pankov# serve, putting one on a termcap/terminfo file with hundreds of anonymous
27813cfc972SYuri Pankov# contributors makes about as much sense as copyrighting a wall-full of
27913cfc972SYuri Pankov# graffiti -- it's legally dubious, ethically bogus, and patently ridiculous.
28013cfc972SYuri Pankov#
28113cfc972SYuri Pankov# This file deliberately has no copyright.  It belongs to no one and everyone.
28213cfc972SYuri Pankov# If you claim you own it, you will merely succeed in looking like a fool.
28313cfc972SYuri Pankov# Use it as you like.  Use it at your own risk.  Copy and redistribute freely.
28413cfc972SYuri Pankov# There are no guarantees anywhere.  Svaha!
28513cfc972SYuri Pankov#
28613cfc972SYuri Pankov
28713cfc972SYuri Pankov######## ANSI, UNIX CONSOLE, AND SPECIAL TYPES
28813cfc972SYuri Pankov#
28913cfc972SYuri Pankov# This section describes terminal classes and brands that are still
29013cfc972SYuri Pankov# quite common.
29113cfc972SYuri Pankov#
29213cfc972SYuri Pankov
29313cfc972SYuri Pankov#### Specials
29413cfc972SYuri Pankov#
29513cfc972SYuri Pankov# Special "terminals".  These are used to label tty lines when you don't
29613cfc972SYuri Pankov# know what kind of terminal is on it.  The characteristics of an unknown
29713cfc972SYuri Pankov# terminal are the lowest common denominator - they look about like a ti 700.
29813cfc972SYuri Pankov#
29913cfc972SYuri Pankov
30013cfc972SYuri Pankovdumb|80-column dumb tty:\
30113cfc972SYuri Pankov	:am:\
30213cfc972SYuri Pankov	:co#80:\
30313cfc972SYuri Pankov	:bl=^G:cr=^M:do=^J:sf=^J:
30413cfc972SYuri Pankovunknown|unknown terminal type:\
30513cfc972SYuri Pankov	:gn:tc=dumb:
30613cfc972SYuri Pankovlpr|printer|line printer:\
30713cfc972SYuri Pankov	:bs:hc:os:\
30813cfc972SYuri Pankov	:co#132:li#66:\
30913cfc972SYuri Pankov	:bl=^G:cr=^M:do=^J:ff=^L:le=^H:sf=^J:
31013cfc972SYuri Pankovglasstty|classic glass tty interpreting ASCII control characters:\
31113cfc972SYuri Pankov	:am:bs:\
31213cfc972SYuri Pankov	:co#80:\
31313cfc972SYuri Pankov	:bl=^G:cl=^L:cr=^M:do=^J:kd=^J:kl=^H:le=^H:nw=^M^J:ta=^I:
31413cfc972SYuri Pankov
31513cfc972SYuri Pankovvanilla|dumb tty:\
31613cfc972SYuri Pankov	:bs:\
31713cfc972SYuri Pankov	:bl=^G:cr=^M:do=^J:sf=^J:
31813cfc972SYuri Pankov
31913cfc972SYuri Pankov# This is almost the same as "dumb", but with no prespecified width.
32013cfc972SYuri Pankov# DEL and ^C are hardcoded to act as kill characters.
32113cfc972SYuri Pankov# ^D acts as a line break (just like newline).
32213cfc972SYuri Pankov# It also interprets
32313cfc972SYuri Pankov#      \033];xxx\007
32413cfc972SYuri Pankov# for compatibility with xterm -TD
32513cfc972SYuri Pankov9term|Plan9 terminal emulator for X:\
32613cfc972SYuri Pankov	:am:\
32713cfc972SYuri Pankov	:bl=^G:do=^J:nl=^J:
32813cfc972SYuri Pankov
32913cfc972SYuri Pankov#### ANSI.SYS/ISO 6429/ECMA-48 Capabilities
33013cfc972SYuri Pankov#
33113cfc972SYuri Pankov# See the end-of-file comment for more on these.
33213cfc972SYuri Pankov#
33313cfc972SYuri Pankov
33413cfc972SYuri Pankov# ANSI capabilities are broken up into pieces, so that a terminal
33513cfc972SYuri Pankov# implementing some ANSI subset can use many of them.
33613cfc972SYuri Pankovansi+local1:\
33713cfc972SYuri Pankov	:do=\E[B:le=\E[D:nd=\E[C:up=\E[A:
33813cfc972SYuri Pankovansi+local:\
33913cfc972SYuri Pankov	:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:tc=ansi+local1:
34013cfc972SYuri Pankovansi+tabs:\
34113cfc972SYuri Pankov	:bt=\E[Z:ct=\E[3g:st=\EH:ta=^I:
34213cfc972SYuri Pankovansi+inittabs:\
34313cfc972SYuri Pankov	:it#8:tc=ansi+tabs:
34413cfc972SYuri Pankovansi+erase:\
34513cfc972SYuri Pankov	:cd=\E[J:ce=\E[K:cl=\E[H\E[J:
34613cfc972SYuri Pankovansi+rca:\
34713cfc972SYuri Pankov	:ch=\E[%+^AG:cv=\E[%+^Ad:
34813cfc972SYuri Pankovansi+cup:\
34913cfc972SYuri Pankov	:cm=\E[%i%d;%dH:ho=\E[H:
35013cfc972SYuri Pankovansi+rep:
35113cfc972SYuri Pankovansi+idl1:\
35213cfc972SYuri Pankov	:al=\E[L:dl=\E[M:
35313cfc972SYuri Pankovansi+idl:\
35413cfc972SYuri Pankov	:AL=\E[%dL:DL=\E[%dM:tc=ansi+idl1:
35513cfc972SYuri Pankovansi+idc:\
35613cfc972SYuri Pankov	:IC=\E[%d@:dc=\E[P:ei=\E6:ic=\E[@:im=\E6:
35713cfc972SYuri Pankovansi+arrows:\
35813cfc972SYuri Pankov	:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:
35913cfc972SYuri Pankovansi+sgr|ansi graphic renditions:\
36013cfc972SYuri Pankov	:mb=\E[5m:me=\E[0m:mk=\E[8m:mr=\E[7m:
36113cfc972SYuri Pankovansi+sgrso|ansi standout only:\
36213cfc972SYuri Pankov	:se=\E[m:so=\E[7m:
36313cfc972SYuri Pankovansi+sgrul|ansi underline only:\
36413cfc972SYuri Pankov	:ue=\E[m:us=\E[4m:
36513cfc972SYuri Pankovansi+sgrbold|ansi graphic renditions; assuming terminal has bold; not dim:\
36613cfc972SYuri Pankov	:md=\E[1m:tc=ansi+sgr:tc=ansi+sgrso:tc=ansi+sgrul:
36713cfc972SYuri Pankovansi+sgrdim|ansi graphic renditions; assuming terminal has dim; not bold:\
36813cfc972SYuri Pankov	:mh=\E[2m:tc=ansi+sgr:tc=ansi+sgrso:tc=ansi+sgrul:
36913cfc972SYuri Pankovansi+pp|ansi printer port:\
37013cfc972SYuri Pankov	:pf=\E[4i:po=\E[5i:ps=\E[0i:
37113cfc972SYuri Pankovansi+csr|ansi scroll-region plus cursor save & restore:\
37213cfc972SYuri Pankov	:cs=\E[%i%d;%dr:rc=\E8:sc=\E7:
37313cfc972SYuri Pankov
37413cfc972SYuri Pankov# The IBM PC alternate character set.  Plug this into any Intel console entry.
37513cfc972SYuri Pankov# We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the
37613cfc972SYuri Pankov# ROM graphics for control characters such as the diamond, up- and down-arrow.
37713cfc972SYuri Pankov# This works with the System V, Linux, and BSDI consoles.  It's a safe bet this
37813cfc972SYuri Pankov# will work with any Intel console, they all seem to have inherited \E[11m
37913cfc972SYuri Pankov# from the ANSI.SYS de-facto standard.
38013cfc972SYuri Pankovklone+acs|alternate character set for ansi.sys displays:\
38113cfc972SYuri Pankov	:ac=+\020,\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:\
38213cfc972SYuri Pankov	:ae=\E[10m:as=\E[11m:
38313cfc972SYuri Pankov
38413cfc972SYuri Pankov# Highlight controls corresponding to the ANSI.SYS standard.  Most
38513cfc972SYuri Pankov# console drivers for Intel boxes obey these.  Makes the same assumption
38613cfc972SYuri Pankov# about \E[11m as klone+acs.  True ANSI/ECMA-48 would have :se=\E[27m:,
38713cfc972SYuri Pankov# :ue=\E[24m:, but this isn't a documented feature of ANSI.SYS.
38813cfc972SYuri Pankovklone+sgr|attribute control for ansi.sys displays:\
38913cfc972SYuri Pankov	:S2=\E[11m:S3=\E[10m:mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:\
39013cfc972SYuri Pankov	:se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:tc=klone+acs:
39113cfc972SYuri Pankov
39213cfc972SYuri Pankov# Most Intel boxes do not treat "invis" (invisible) text.
39313cfc972SYuri Pankovklone+sgr8|attribute control for ansi.sys displays:\
39413cfc972SYuri Pankov	:mk=\E[8m:tc=klone+sgr:
39513cfc972SYuri Pankov
39613cfc972SYuri Pankov# Highlight controls corresponding to the ANSI.SYS standard.  *All*
39713cfc972SYuri Pankov# console drivers for Intel boxes obey these.  Does not assume \E[11m will
39813cfc972SYuri Pankov# work; uses \E[12m instead, which is pretty bulletproof but loses you the ACS
39913cfc972SYuri Pankov# diamond and arrow characters under curses.
40013cfc972SYuri Pankovklone+sgr-dumb|attribute control for ansi.sys displays (no ESC [ 11 m):\
40113cfc972SYuri Pankov	:as=\E[12m:mb=\E[5m:md=\E[1m:me=\E[0m:mk=\E[8m:mr=\E[7m:\
40213cfc972SYuri Pankov	:se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:tc=klone+acs:
40313cfc972SYuri Pankov
40413cfc972SYuri Pankov# KOI8-R (RFC1489) acs (alternate character set)
40513cfc972SYuri Pankov# From: Qing Long <qinglong@Bolizm.ihep.su>, 24 Feb 1996.
40613cfc972SYuri Pankovklone+koi8acs|alternate character set for ansi.sys displays with KOI8 charset:\
40713cfc972SYuri Pankov	:ac=+\020,\021-\036.^_0\215`\004a\237f\234g\232h\222i\220j\205k\203l\202m\204n\212o\213p\216q\200r\217s\214t\206u\207v\210w\211x\201y\230z\231{\267|\274}L~\225:\
40813cfc972SYuri Pankov	:ae=\E[10m:as=\E[11m:
40913cfc972SYuri Pankov
41013cfc972SYuri Pankov# ANSI.SYS color control.  The setab/setaf caps depend on the coincidence
41113cfc972SYuri Pankov# between SVr4/XPG4's color numbers and ANSI.SYS attributes.  Here are longer
41213cfc972SYuri Pankov# but equivalent strings that don't rely on that coincidence:
41313cfc972SYuri Pankov# setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
41413cfc972SYuri Pankov# setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
41513cfc972SYuri Pankov# The DOS 5 manual asserts that these sequences meet the ISO 6429 standard.
41613cfc972SYuri Pankov# They match a subset of ECMA-48.
41713cfc972SYuri Pankovklone+color|color control for ansi.sys and ISO6429-compatible displays:\
41813cfc972SYuri Pankov	:Co#8:NC#3:pa#64:\
41913cfc972SYuri Pankov	:AB=\E[4%dm:AF=\E[3%dm:op=\E[37;40m:
42013cfc972SYuri Pankov
42113cfc972SYuri Pankov# This is better than klone+color, it doesn't assume white-on-black as the
42213cfc972SYuri Pankov# default color pair,  but many `ANSI' terminals don't grok the <op> cap.
42313cfc972SYuri Pankovecma+color|color control for ECMA-48-compatible terminals:\
42413cfc972SYuri Pankov	:AX:\
42513cfc972SYuri Pankov	:Co#8:NC#3:pa#64:\
42613cfc972SYuri Pankov	:AB=\E[4%dm:AF=\E[3%dm:op=\E[39;49m:
42713cfc972SYuri Pankov
42813cfc972SYuri Pankov# Attribute control for ECMA-48-compatible terminals
42913cfc972SYuri Pankovecma+sgr|attribute capabilities for true ECMA-48 terminals:\
43013cfc972SYuri Pankov	:se=\E[27m:ue=\E[24m:tc=klone+sgr8:
43113cfc972SYuri Pankov
43213cfc972SYuri Pankov# For comparison, here are all the capabilities implied by the Intel
43313cfc972SYuri Pankov# Binary Compatibility Standard (level 2) that fit within terminfo.
43413cfc972SYuri Pankov# For more detail on this rather pathetic standard, see the comments
43513cfc972SYuri Pankov# near the end of this file.
43613cfc972SYuri Pankovibcs2|Intel Binary Compatibility Standard prescriptions:\
43713cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\
43813cfc972SYuri Pankov	:RA=\E[?7l:RI=\E[%dC:S1=\E=%dg:SA=\E[?7h:SF=\E[%dS:\
43913cfc972SYuri Pankov	:SR=\E[%dT:UP=\E[%dA:bt=\E[Z:ch=\E[%i%dG:cl=\Ec:\
44013cfc972SYuri Pankov	:cm=\E[%i%d;%dH:ct=\E[g:cv=\E[%i%dd:do=\E[1B:ec=\E[%dX:\
44113cfc972SYuri Pankov	:ei=:im=:le=\E[1D:nd=\E[1C:rc=\E7:sc=\E7:st=\EH:up=\E[1A:
44213cfc972SYuri Pankov
44313cfc972SYuri Pankov#### ANSI/ECMA-48 terminals and terminal emulators
44413cfc972SYuri Pankov#
44513cfc972SYuri Pankov# See near the end of this file for details on ANSI conformance.
44613cfc972SYuri Pankov# Don't mess with these entries!  Lots of other entries depend on them!
44713cfc972SYuri Pankov#
44813cfc972SYuri Pankov# This section lists entries in a least-capable to most-capable order.
44913cfc972SYuri Pankov# if you're in doubt about what `ANSI' matches yours, try them in that
45013cfc972SYuri Pankov# order and back off from the first that breaks.
45113cfc972SYuri Pankov
45213cfc972SYuri Pankov# ansi-mr is for ANSI terminals with ONLY relative cursor addressing
45313cfc972SYuri Pankov# and more than one page of memory.  It uses local motions instead of
45413cfc972SYuri Pankov# direct cursor addressing, and makes almost no assumptions. It does
45513cfc972SYuri Pankov# assume auto margins, no padding and/or xon/xoff, and a 24x80 screen.
45613cfc972SYuri Pankovansi-mr|mem rel cup ansi:\
45713cfc972SYuri Pankov	:am:xo:\
45813cfc972SYuri Pankov	:co#80:li#24:tc=vanilla:tc=ansi+erase:tc=ansi+local1:
45913cfc972SYuri Pankov
46013cfc972SYuri Pankov# ansi-mini is a bare minimum ANSI terminal. This should work on anything, but
46113cfc972SYuri Pankov# beware of screen size problems and memory relative cursor addressing.
46213cfc972SYuri Pankovansi-mini|any ansi terminal with pessimistic assumptions:\
46313cfc972SYuri Pankov	:am:xo:\
46413cfc972SYuri Pankov	:co#80:li#24:tc=vanilla:tc=ansi+cup:tc=ansi+erase:
46513cfc972SYuri Pankov
46613cfc972SYuri Pankov# ansi-mtabs adds relative addressing and minimal tab support
46713cfc972SYuri Pankovansi-mtabs|any ansi terminal with pessimistic assumptions:\
46813cfc972SYuri Pankov	:it#8:\
46913cfc972SYuri Pankov	:ta=^I:tc=ansi+local1:tc=ansi-mini:
47013cfc972SYuri Pankov
47113cfc972SYuri Pankov# ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL
47213cfc972SYuri Pankov#
47313cfc972SYuri Pankov# The following is an entry for the full ANSI 3.64 (1977).  It lacks
47413cfc972SYuri Pankov# padding, but most terminals using the standard are "fast" enough
47513cfc972SYuri Pankov# not to require any -- even at 9600 bps.  If you encounter problems,
47613cfc972SYuri Pankov# try including the padding specifications.
47713cfc972SYuri Pankov#
47813cfc972SYuri Pankov# Note: the :as: and :ae: specifications are not implemented here, for
47913cfc972SYuri Pankov# the available termcap documentation does not make clear WHICH alternate
48013cfc972SYuri Pankov# character set to specify.  ANSI 3.64 seems to make allowances for several.
48113cfc972SYuri Pankov# Please make the appropriate adjustments to fit your needs -- that is
48213cfc972SYuri Pankov# if you will be using alternate character sets.
48313cfc972SYuri Pankov#
48413cfc972SYuri Pankov# There are very few terminals running the full ANSI 3.64 standard,
48513cfc972SYuri Pankov# so I could only test this entry on one verified terminal (Visual 102).
48613cfc972SYuri Pankov# I would appreciate the results on other terminals sent to me.
48713cfc972SYuri Pankov#
48813cfc972SYuri Pankov# Please report comments, changes, and problems to:
48913cfc972SYuri Pankov#
49013cfc972SYuri Pankov# U.S. MAIL:   Hugh Hansard
49113cfc972SYuri Pankov#              Box: 22830
49213cfc972SYuri Pankov#              Emory University
49313cfc972SYuri Pankov#              Atlanta, GA. 30322.
49413cfc972SYuri Pankov#
49513cfc972SYuri Pankov# USENET {akgua,msdc,sb1,sb6,gatech}!emory!mlhhh.
49613cfc972SYuri Pankov#
49713cfc972SYuri Pankov# (Added vt100 :rc:,:sc: to quiet a tic warning --esr)
49813cfc972SYuri Pankovansi77|ansi 3.64 standard 1977 version:\
49913cfc972SYuri Pankov	:am:bs:mi:\
50013cfc972SYuri Pankov	:co#80:it#8:li#24:\
50113cfc972SYuri Pankov	:al=5*\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
50213cfc972SYuri Pankov	:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=5*\E[M:\
50313cfc972SYuri Pankov	:do=\E[B:ei=\E[4l:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOR:k4=\EOS:\
50413cfc972SYuri Pankov	:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
50513cfc972SYuri Pankov	:nd=\E[C:nw=^M\ED:rc=\E8:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:\
50613cfc972SYuri Pankov	:sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:
50713cfc972SYuri Pankov
50813cfc972SYuri Pankov# Procomm and some other ANSI emulations don't recognize all of the ANSI-
50913cfc972SYuri Pankov# standard capabilities.  This entry deletes :UP:, :RI:, :DO:, :LE:, and
51013cfc972SYuri Pankov# <vpa>/<hpa> capabilities, forcing curses to use repetitions of :up:,
51113cfc972SYuri Pankov# :nd:, :do: and :le:.  Also deleted :IC: and :ic:, as QModem up to
51213cfc972SYuri Pankov# 5.03 doesn't recognize these.  Finally, we delete :rp: and :sr:, which seem
51313cfc972SYuri Pankov# to confuse many emulators.  On the other hand, we can count on these programs
51413cfc972SYuri Pankov# doing :ae:/:as:/:sa:. Older versions of this entry featured
51513cfc972SYuri Pankov# <invis=\E[9m>, but <invis=\E[8m> now seems to be more common under
51613cfc972SYuri Pankov# ANSI.SYS influence.
51713cfc972SYuri Pankov# From: Eric S. Raymond <esr@snark.thyrsus.com> Oct 30 1995
51813cfc972SYuri Pankovpcansi-m|pcansi-mono|ibm-pc terminal programs claiming to be ansi (mono mode):\
51913cfc972SYuri Pankov	:am:bs:mi:ms:\
52013cfc972SYuri Pankov	:co#80:it#8:li#24:\
52113cfc972SYuri Pankov	:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
52213cfc972SYuri Pankov	:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:\
52313cfc972SYuri Pankov	:ho=\E[H:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
52413cfc972SYuri Pankov	:le=\E[D:nd=\E[C:sf=^J:st=\EH:ta=^I:up=\E[A:\
52513cfc972SYuri Pankov	:tc=klone+sgr-dumb:
52613cfc972SYuri Pankovpcansi-25-m|pcansi25m|ibm-pc terminal programs with 25 lines (mono mode):\
52713cfc972SYuri Pankov	:li#25:tc=pcansi-m:
52813cfc972SYuri Pankovpcansi-33-m|pcansi33m|ibm-pc terminal programs with 33 lines (mono mode):\
52913cfc972SYuri Pankov	:li#33:tc=pcansi-m:
53013cfc972SYuri Pankovpcansi-43-m|ansi43m|ibm-pc terminal programs with 43 lines (mono mode):\
53113cfc972SYuri Pankov	:li#43:tc=pcansi-m:
53213cfc972SYuri Pankov# The color versions.  All PC emulators do color...
53313cfc972SYuri Pankovpcansi|ibm-pc terminal programs claiming to be ansi:\
53413cfc972SYuri Pankov	:tc=klone+color:tc=pcansi-m:
53513cfc972SYuri Pankovpcansi-25|pcansi25|ibm-pc terminal programs with 25 lines:\
53613cfc972SYuri Pankov	:li#25:tc=pcansi:
53713cfc972SYuri Pankovpcansi-33|pcansi33|ibm-pc terminal programs with 33 lines:\
53813cfc972SYuri Pankov	:li#33:tc=pcansi:
53913cfc972SYuri Pankovpcansi-43|pcansi43|ibm-pc terminal programs with 43 lines:\
54013cfc972SYuri Pankov	:li#43:tc=pcansi:
54113cfc972SYuri Pankov
54213cfc972SYuri Pankov# ansi-m -- full ANSI X3.64 with ANSI.SYS-compatible attributes, no color.
54313cfc972SYuri Pankov# If you want pound signs rather than dollars, replace `B' with `A'
54413cfc972SYuri Pankov# in the <s0ds>, <s1ds>, <s2ds>, and <s3ds> capabilities.
54513cfc972SYuri Pankov# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995
54613cfc972SYuri Pankovansi-m|ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes:\
54713cfc972SYuri Pankov	:5i:\
54813cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
54913cfc972SYuri Pankov	:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
55013cfc972SYuri Pankov	:cb=\E[1K:ch=\E[%i%dG:ct=\E[3g:cv=\E[%i%dd:ec=\E[%dX:ei=:\
55113cfc972SYuri Pankov	:im=:kB=\E[Z:kI=\E[L:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:\
55213cfc972SYuri Pankov	:nw=\r\E[S:pf=\E[4i:po=\E[5i:s0=\E(B:s1=\E)B:s2=\E*B:\
55313cfc972SYuri Pankov	:s3=\E+B:ta=\E[I:tc=pcansi-m:
55413cfc972SYuri Pankov
55513cfc972SYuri Pankovansi+enq|ncurses extension for ANSI ENQ:\
55613cfc972SYuri Pankov	:u6=\E[%i%d;%dR:u7=\E[6n:u9=\E[c:
55713cfc972SYuri Pankov
55813cfc972SYuri Pankov# ansi -- this terminfo expresses the largest subset of X3.64 that will fit in
55913cfc972SYuri Pankov# standard terminfo.  Assumes ANSI.SYS-compatible attributes and color.
56013cfc972SYuri Pankov# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995
56113cfc972SYuri Pankovansi|ansi/pc-term compatible with color:\
56213cfc972SYuri Pankov	:tc=ansi+enq:tc=ecma+color:tc=klone+sgr8:tc=ansi-m:
56313cfc972SYuri Pankov
56413cfc972SYuri Pankov# ansi-generic is a vanilla ANSI terminal. This is assumed to implement
56513cfc972SYuri Pankov# all the normal ANSI stuff with no extensions. It assumes
56613cfc972SYuri Pankov# insert/delete line/char is there, so it won't work with
56713cfc972SYuri Pankov# vt100 clones. It assumes video attributes for bold, blink,
56813cfc972SYuri Pankov# underline, and reverse, which won't matter much if the terminal
56913cfc972SYuri Pankov# can't do some of those. Padding is assumed to be zero, which
57013cfc972SYuri Pankov# shouldn't hurt since xon/xoff is assumed.
57113cfc972SYuri Pankovansi-generic|generic ansi standard terminal:\
57213cfc972SYuri Pankov	:am:xo:\
57313cfc972SYuri Pankov	:co#80:li#24:tc=vanilla:tc=ansi+csr:tc=ansi+cup:\
57413cfc972SYuri Pankov	:tc=ansi+rca:tc=ansi+erase:tc=ansi+tabs:tc=ansi+local:\
57513cfc972SYuri Pankov	:tc=ansi+idc:tc=ansi+idl:tc=ansi+rep:tc=ansi+sgrbold:\
57613cfc972SYuri Pankov	:tc=ansi+arrows:
57713cfc972SYuri Pankov
57813cfc972SYuri Pankov#### DOS ANSI.SYS variants
57913cfc972SYuri Pankov#
58013cfc972SYuri Pankov# This completely describes the sequences specified in the DOS 2.1 ANSI.SYS
58113cfc972SYuri Pankov# documentation (except for the keyboard key reassignment feature, which
58213cfc972SYuri Pankov# doesn't fit the <pfkey> model well).  The klone+acs sequences were valid
58313cfc972SYuri Pankov# though undocumented.  The <pfkey> capability is untested but should work for
58413cfc972SYuri Pankov# keys F1-F10 (%p1 values outside this range will yield unpredictable results).
58513cfc972SYuri Pankov# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 7 1995
58613cfc972SYuri Pankovansi.sys-old|ANSI.SYS under PC-DOS 2.1:\
58713cfc972SYuri Pankov	:am:bs:mi:ms:xo:\
58813cfc972SYuri Pankov	:co#80:li#25:\
58913cfc972SYuri Pankov	:RA=\E[?7l:SA=\E[?7h:ce=\E[k:cl=\E[2J:cm=\E[%i%d;%dH:\
59013cfc972SYuri Pankov	:do=\E[B:ho=\E[H:is=\E[m\E[?7h:kd=^J:kh=^^:kl=^H:kr=^L:\
59113cfc972SYuri Pankov	:ku=^K:le=^H:nd=\E[C:rc=\E[u:sc=\E[s:u6=\E[%i%d;%dR:\
59213cfc972SYuri Pankov	:u7=\E[6n:up=\E[A:tc=klone+color:tc=klone+sgr8:
59313cfc972SYuri Pankov
59413cfc972SYuri Pankov# Keypad:	Home=\0G	Up=\0H	PrPag=\0I
59513cfc972SYuri Pankov#		ka1,kh		kcuu1		kpp,ka3
59613cfc972SYuri Pankov#
59713cfc972SYuri Pankov#		Left=\0K	5=\0L		Right=\0M
59813cfc972SYuri Pankov#		kcub1		kb2		kcuf1
59913cfc972SYuri Pankov#
60013cfc972SYuri Pankov#		End=\0O		Down=\0P	NxPag=\0Q
60113cfc972SYuri Pankov#		kc1,kend	kcud1		kc3,knp
60213cfc972SYuri Pankov#
60313cfc972SYuri Pankov#		Ins=\0R		Del=\0S
60413cfc972SYuri Pankov#		kich1		kdch1
60513cfc972SYuri Pankov#
60613cfc972SYuri Pankov# On keyboard with 12 function keys,
60713cfc972SYuri Pankov#	shifted f-keys: F13-F24
60813cfc972SYuri Pankov#	control f-keys: F25-F36
60913cfc972SYuri Pankov#	alt f-keys:     F37-F48
61013cfc972SYuri Pankov# The shift/control/alt keys do not modify each other, but alt overrides both,
61113cfc972SYuri Pankov# and control overrides shift.
61213cfc972SYuri Pankov#
61313cfc972SYuri Pankov# <pfkey> capability for F1-F48 -TD
61413cfc972SYuri Pankovansi.sys|ANSI.SYS 3.1 and later versions:\
61513cfc972SYuri Pankov	:@7=\200O:F1=\200\205:F2=\200\206:F3=\200T:F4=\200U:\
61613cfc972SYuri Pankov	:F5=\200V:F6=\200W:F7=\200X:F8=\200Y:F9=\200Z:FA=\200[:\
61713cfc972SYuri Pankov	:FB=\200\\:FC=\200]:FD=\200\207:FE=\200\210:FF=\200\136:\
61813cfc972SYuri Pankov	:FG=\200_:FH=\200`:FI=\200a:FJ=\200b:FK=\200c:FL=\200d:\
61913cfc972SYuri Pankov	:FM=\200e:FN=\200f:FO=\200g:FP=\200\211:FQ=\200\212:\
62013cfc972SYuri Pankov	:FR=\200h:FS=\200i:FT=\200j:FU=\200k:FV=\200l:FW=\200m:\
62113cfc972SYuri Pankov	:FX=\200n:FY=\200o:FZ=\200p:Fa=\200q:Fb=\200\213:\
62213cfc972SYuri Pankov	:Fc=\200\214:K1=\200G:K2=\200L:K3=\200I:K4=\200O:K5=\200Q:\
62313cfc972SYuri Pankov	:ce=\E[K:k1=\200;:k2=\200<:k3=\200=:k4=\200>:k5=\200?:\
62413cfc972SYuri Pankov	:k6=\200@:k7=\200A:k8=\200B:k9=\200C:k;=\200D:kB=\200^O:\
62513cfc972SYuri Pankov	:kD=\200S:kI=\200R:kN=\200Q:kP=\200I:kb=^H:kd=\200P:\
62613cfc972SYuri Pankov	:kh=\200G:kl=\200K:kr=\200M:ku=\200H:tc=ansi.sys-old:
62713cfc972SYuri Pankov
62813cfc972SYuri Pankov#
62913cfc972SYuri Pankov# Define IBM PC keypad keys for vi as per MS-Kermit while using ANSI.SYS.
63013cfc972SYuri Pankov# This should only be used when the terminal emulator cannot redefine the keys.
63113cfc972SYuri Pankov# Since redefining keys with ansi.sys also affects PC-DOS programs, the key
63213cfc972SYuri Pankov# definitions must be restored.  If the terminal emulator is quit while in vi
63313cfc972SYuri Pankov# or others using :ks:/:ke:, the keypad will not be defined as per PC-DOS.
63413cfc972SYuri Pankov# The PgUp and PgDn are prefixed with ESC so that tn3270 can be used on Unix
63513cfc972SYuri Pankov# (^U and ^D are already defined for tn3270).  The ESC is safe for vi but it
63613cfc972SYuri Pankov# does "beep".  ESC ESC i is used for Ins to avoid tn3270 ESC i for coltab.
63713cfc972SYuri Pankov# Note that :kl: is always BS, because PC-dos can tolerate this change.
63813cfc972SYuri Pankov# Caution: vi is limited to 256 string bytes, longer crashes or weirds out vi.
63913cfc972SYuri Pankov# Consequently the End keypad key could not be set (it is relatively safe and
64013cfc972SYuri Pankov# actually useful because it sends ^@ O, which beeps and opens a line above).
64113cfc972SYuri Pankovansi.sysk|ansisysk|PC-DOS 3.1 ANSI.SYS with keypad redefined for vi:\
64213cfc972SYuri Pankov	:is=U2 PC-DOS 3.1 ANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\
64313cfc972SYuri Pankov	: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:\
64413cfc972SYuri Pankov	: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:\
64513cfc972SYuri Pankov	:tc=ansi.sys:
64613cfc972SYuri Pankov#
64713cfc972SYuri Pankov# Adds ins/del line/character, hence vi reverse scrolls/inserts/deletes nicer.
64813cfc972SYuri Pankovnansi.sys|nansisys|PC-DOS Public Domain NANSI.SYS:\
64913cfc972SYuri Pankov	:al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\
65013cfc972SYuri Pankov	:is=U3 PC-DOS Public Domain NANSI.SYS 9-23-86\n:\
65113cfc972SYuri Pankov	:tc=ansi.sys:
65213cfc972SYuri Pankov#
65313cfc972SYuri Pankov# See ansi.sysk and nansi.sys above.
65413cfc972SYuri Pankovnansi.sysk|nansisysk|PC-DOS Public Domain NANSI.SYS with keypad redefined for vi:\
65513cfc972SYuri Pankov	:al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\
65613cfc972SYuri Pankov	:is=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\
65713cfc972SYuri Pankov	:tc=ansi.sysk:
65813cfc972SYuri Pankov
65913cfc972SYuri Pankov#### ANSI console types
66013cfc972SYuri Pankov
66113cfc972SYuri Pankov#
66213cfc972SYuri Pankov# Atari ST terminals.
66313cfc972SYuri Pankov# From Guido Flohr <gufl0000@stud.uni-sb.de>.
66413cfc972SYuri Pankov#
66513cfc972SYuri Pankovtw52|tw52-color|Toswin window manager with color:\
66613cfc972SYuri Pankov	:ut:\
66713cfc972SYuri Pankov	:Co#16:pa#256:\
66813cfc972SYuri Pankov	:oc=\Eb?\Ec0:op=\Eb?\Ec0:tc=tw52-m:
66913cfc972SYuri Pankovtw52-m|Toswin window manager monochrome:\
67013cfc972SYuri Pankov	:ul:\
67113cfc972SYuri Pankov	:ma#999:\
67213cfc972SYuri Pankov	:dc=\Ea:is=\Ev\Eq\Ez_\Ee\Ei\Eb?\Ec0:md=\Eya:me=\Ez_:\
67313cfc972SYuri Pankov	:mh=\EyB:mr=\EyP:rs=\Ev\Eq\Ez_\Ee\Ei\Eb?\Ec0:se=\EzQ:\
67413cfc972SYuri Pankov	:so=\EyQ:ue=\EzH:us=\EyH:tc=at-m:
67513cfc972SYuri Pankovtt52|Atari TT medium and high resolution:\
67613cfc972SYuri Pankov	:li#30:tc=at-color:
67713cfc972SYuri Pankovst52-color|at-color|atari-color|atari_st-color|Atari ST with color:\
67813cfc972SYuri Pankov	:ut:\
67913cfc972SYuri Pankov	:Co#16:pa#256:\
68013cfc972SYuri Pankov	:is=\Ev\Eq\Ee\Eb1\Ec0:rs=\Ev\Eq\Ee\Eb1\Ec0:tc=st52:
68113cfc972SYuri Pankovst52|st52-m|at|at-m|atari|atari-m|atari_st|atarist-m|Atari ST:\
68213cfc972SYuri Pankov	:NP:am:eo:mi:\
68313cfc972SYuri Pankov	:co#80:it#8:li#24:\
68413cfc972SYuri Pankov	:#4=\Ed:%1=\EH:%i=\Ec:&8=\EK:F1=\Ep:F2=\Eq:F3=\Er:F4=\Es:\
68513cfc972SYuri Pankov	:F5=\Et:F6=\Eu:F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:al=\EL:bl=^G:\
68613cfc972SYuri Pankov	:cb=\Eo:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:dl=\EM:\
68713cfc972SYuri Pankov	:do=\EB:ho=\EH:is=\Ev\Eq\Ee:k1=\EP:k2=\EQ:k3=\ER:k4=\ES:\
68813cfc972SYuri Pankov	:k5=\ET:k6=\EU:k7=\EV:k8=\EW:k9=\EX:k;=\EY:kD=\177:kI=\EI:\
68913cfc972SYuri Pankov	:kN=\Eb:kP=\Ea:kb=^H:kd=\EB:kh=\EE:kl=\ED:kr=\EC:ku=\EA:\
69013cfc972SYuri Pankov	:le=\ED:me=\Eq:mr=\Ep:nd=\EC:nw=^M^J:rc=\Ek:rs=\Ev\Eq\Ee:\
69113cfc972SYuri Pankov	:sc=\Ej:se=\Eq:sf=^J:so=\Ep:sr=\EI:ta=^I:up=\EA:ve=\Ee:\
69213cfc972SYuri Pankov	:vi=\Ef:
69313cfc972SYuri Pankovtw100|toswin vt100 window mgr:\
69413cfc972SYuri Pankov	:eo:mi:ms:xo:\
69513cfc972SYuri Pankov	:Co#8:co#80:it#8:li#24:pa#64:vt#3:\
69613cfc972SYuri Pankov	:%1=\EH:&8=\EK:DL=\E[%dM:DO=\E[%dB:F1=\Ep:F2=\Eq:F3=\Er:\
69713cfc972SYuri Pankov	:F4=\Es:F5=\Et:F6=\Eu:F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:IC=\E[%d@:\
69813cfc972SYuri Pankov	:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
69913cfc972SYuri Pankov	:ac=++,,--..00II``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
70013cfc972SYuri Pankov	:ae=^O:al=\EL:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
70113cfc972SYuri Pankov	:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
70213cfc972SYuri Pankov	:ct=\E[3g:dc=\Ea:dl=\E[M:do=\EB:ei=\Ei:ho=\E[H:im=\Eh:\
70313cfc972SYuri Pankov	:is=\E<\E)0:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\
70413cfc972SYuri Pankov	:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:k;=\EOY:kD=\177:kI=\EI:\
70513cfc972SYuri Pankov	:kN=\Eb:kP=\E\Ea:kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\E\EE:\
70613cfc972SYuri Pankov	:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:ll=\E[24H:\
70713cfc972SYuri Pankov	:mb=\E[5m:md=\E[1m:me=\E[m:mh=\E[2m:mr=\E[7m:nd=\EC:nw=\EE:\
70813cfc972SYuri Pankov	:oc=\E[30;47m:op=\E[30;47m:\
70913cfc972SYuri Pankov	:r1=\E<\E[20l\E[?3;6;9l\E[r\Eq\E(B\017\E)0\E>:rc=\E8:\
71013cfc972SYuri Pankov	:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
71113cfc972SYuri Pankov	:te=\E[?7h:ti=\E[?7l:ue=\E[m:up=\EA:us=\E[4m:ve=\Ee:vi=\Ef:
71213cfc972SYuri Pankov# The entries for stv52 and stv52pc probably need a revision.
71313cfc972SYuri Pankovstv52|MiNT virtual console:\
71413cfc972SYuri Pankov	:am:ms:\
71513cfc972SYuri Pankov	:co#80:it#8:li#30:\
71613cfc972SYuri Pankov	:%1=\EH:&8=\EK:F1=\Ep:F2=\Eq:F3=\Er:F4=\Es:F5=\Et:F6=\Eu:\
71713cfc972SYuri Pankov	:F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:al=\EL:bl=^G:cd=\EJ:ce=\EK:\
71813cfc972SYuri Pankov	:cl=\EE:cm=\EY%+ %+ :cr=^M:dl=\EM:do=\EB:ho=\EH:k1=\EP:\
71913cfc972SYuri Pankov	:k2=\EQ:k3=\ER:k4=\ES:k5=\ET:k6=\EU:k7=\EV:k8=\EW:k9=\EX:\
72013cfc972SYuri Pankov	:k;=\EY:kD=\177:kI=\EI:kN=\Eb:kP=\Ea:kb=^H:kd=\EB:kh=\EE:\
72113cfc972SYuri Pankov	:kl=\ED:kr=\EC:ku=\EA:le=^H:mb=\Er:md=\EyA:me=\Ez_:mh=\Em:\
72213cfc972SYuri Pankov	:mr=\Ep:nd=\EC:nw=2*\r\n:op=\Eb@\EcO:r1=\Ez_\Eb@\EcA:\
72313cfc972SYuri Pankov	:se=\Eq:sf=2*\n:so=\Ep:sr=2*\EI:ta=^I:te=\Ev\E. \Ee\Ez_:\
72413cfc972SYuri Pankov	:ti=\Ev\Ee\Ez_:ue=\EzH:up=\EA:us=\EyH:ve=\E. \Ee:vi=\Ef:\
72513cfc972SYuri Pankov	:vs=\E.":
72613cfc972SYuri Pankovstv52pc|MiNT virtual console with PC charset:\
72713cfc972SYuri Pankov	:am:ms:\
72813cfc972SYuri Pankov	:co#80:it#8:li#30:\
72913cfc972SYuri Pankov	:%1=\EH:&8=\EK:F1=\Ep:F2=\Eq:F3=\Er:F4=\Es:F5=\Et:F6=\Eu:\
73013cfc972SYuri Pankov	:F7=\Ev:F8=\Ew:F9=\Ex:FA=\Ey:\
73113cfc972SYuri Pankov	:ac=+\257,\256-\136.v0\333I\374`\177a\260f\370g\361h\261j\331k\277l\332m\300n\305o\377p-q\304r-s_t+u+v+w+x\263y\363z\362{\343|\366}\234~\371:\
73213cfc972SYuri Pankov	:al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:\
73313cfc972SYuri Pankov	:dl=\EM:do=\EB:ho=\EH:k1=\EP:k2=\EQ:k3=\ER:k4=\ES:k5=\ET:\
73413cfc972SYuri Pankov	:k6=\EU:k7=\EV:k8=\EW:k9=\EX:k;=\EY:kD=\177:kI=\EI:kN=\Eb:\
73513cfc972SYuri Pankov	:kP=\Ea:kb=^H:kd=\EB:kh=\EE:kl=\ED:kr=\EC:ku=\EA:le=^H:\
73613cfc972SYuri Pankov	:mb=\Er:md=\EyA:me=\Ez_:mh=\Em:mr=\Ep:nd=\EC:nw=2*\r\n:\
73713cfc972SYuri Pankov	:r1=\Ez_\Eb@\EcA:se=\Eq:sf=2*\n:so=\Ep:sr=2*\EI:ta=^I:\
73813cfc972SYuri Pankov	:te=\Ev\E. \Ee\Ez_:ti=\Ev\Ee\Ez_:ue=\EzH:up=\EA:us=\EyH:\
73913cfc972SYuri Pankov	:ve=\E. \Ee:vi=\Ef:vs=\E.":
74013cfc972SYuri Pankov
74113cfc972SYuri Pankov#### Atari ST
74213cfc972SYuri Pankov#
74313cfc972SYuri Pankov
74413cfc972SYuri Pankov# From: Simson L. Garfinkel <simsong@media-lab.mit.edu>
74513cfc972SYuri Pankovatari-old|atari st:\
74613cfc972SYuri Pankov	:am:bs:\
74713cfc972SYuri Pankov	:co#80:it#8:li#25:\
74813cfc972SYuri Pankov	:al=\EL:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :dl=\EM:do=\EB:\
74913cfc972SYuri Pankov	:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=\ED:me=\Eq:nd=\EC:se=\Eq:\
75013cfc972SYuri Pankov	:so=\Ep:sr=\EI:ta=^I:up=\EA:
75113cfc972SYuri Pankov# UniTerm terminal program for the Atari ST:  49-line VT220 emulation mode
75213cfc972SYuri Pankov# From: Paul M. Aoki <aoki@ucbvax.berkeley.edu>
75313cfc972SYuri Pankovuniterm|uniterm49|UniTerm VT220 emulator with 49 lines:\
75413cfc972SYuri Pankov	:li#49:\
75513cfc972SYuri Pankov	:is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;49r\E[49;1H:\
75613cfc972SYuri Pankov	:tc=vt220:
75713cfc972SYuri Pankov# MiNT VT52 emulation. 80 columns, 25 rows.
75813cfc972SYuri Pankov# MiNT is Now TOS, the operating system which comes with all Ataris now
75913cfc972SYuri Pankov# (mainly Atari Falcon). This termcap is for the VT52 emulation you get
76013cfc972SYuri Pankov# under tcsh/zsh/bash/sh/ksh/ash/csh when you run MiNT in `console' mode
76113cfc972SYuri Pankov# From: Per Persson <pp@gnu.ai.mit.edu>, 27 Feb 1996
76213cfc972SYuri Pankovst52-old|Atari ST with VT52 emulation:\
76313cfc972SYuri Pankov	:am:km:\
76413cfc972SYuri Pankov	:co#80:li#25:\
76513cfc972SYuri Pankov	:K1=\E#7:K2=\E#9:K3=\E#5:K4=\E#1:K5=\E#3:al=\EL:bl=^G:\
76613cfc972SYuri Pankov	:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:dl=\EM:do=\EB:\
76713cfc972SYuri Pankov	:ho=\EH:k0=\E#D:k1=\E#;:k2=\E#<:k3=\E#=:k4=\E#>:k5=\E#?:\
76813cfc972SYuri Pankov	:k6=\E#@:k7=\E#A:k8=\E#B:k9=\E#C:kA=\E#R:kC=\E#7:kF=\E#2:\
76913cfc972SYuri Pankov	:kR=\E#8:kb=^H:kd=\E#P:kh=\E#G:kl=\E#K:kr=\E#M:ku=\E#H:\
77013cfc972SYuri Pankov	:l0=f10:le=\ED:me=\Eq:nd=\EC:nw=^M^J:r1=\Ez_\Eb@\EcA:\
77113cfc972SYuri Pankov	:rc=\Ek:sc=\Ej:se=\Eq:sf=^J:so=\Ep:sr=\EI:ta=^I:te=:ti=\Ee:\
77213cfc972SYuri Pankov	:up=\EA:ve=\Ee:vi=\Ef:
77313cfc972SYuri Pankov
77413cfc972SYuri Pankov#### BeOS
77513cfc972SYuri Pankov#
77613cfc972SYuri Pankov# BeOS entry for Terminal program Seems to be almost ANSI
77713cfc972SYuri Pankovbeterm|BeOS Terminal:\
77813cfc972SYuri Pankov	:am:eo:mi:ms:xn:xo:\
77913cfc972SYuri Pankov	:Co#8:NC#5:co#80:it#8:li#25:pa#64:\
78013cfc972SYuri Pankov	:&7=^Z:@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:AL=\E[%dL:DC=\E[%dP:\
78113cfc972SYuri Pankov	:DL=\E[%dM:DO=\E[%dB:F1=\E[21~:F2=\E[22~:IC=\E[%d@:\
78213cfc972SYuri Pankov	:LE=\E[%dD:RI=\E[%dC:Sb=\E[%+(m:Sf=\E[%+^^m:UP=\E[%dA:\
78313cfc972SYuri Pankov	:al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:ch=\E[%i%dG:\
78413cfc972SYuri Pankov	:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
78513cfc972SYuri Pankov	:cv=\E[%i%dd:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:\
78613cfc972SYuri Pankov	:ho=\E[H:ic=\E[@:im=\E[4h:k1=\E[11~:k2=\E[12~:k3=\E[13~:\
78713cfc972SYuri Pankov	:k4=\E[14~:k5=\E[15~:k6=\E[16~:k7=\E[17~:k8=\E[18~:\
78813cfc972SYuri Pankov	:k9=\E[19~:k;=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\
78913cfc972SYuri Pankov	:kb=^H:kd=\E[B:ke=\E[?4l:kh=\E[1~:kl=\E[D:kr=\E[C:\
79013cfc972SYuri Pankov	:ks=\E[?4h:ku=\E[A:le=^H:md=\E[1m:me=\E[0;10m:mr=\E[7m:\
79113cfc972SYuri Pankov	:nd=\E[C:nw=^M^J:op=\E[m:r1=\Ec:rc=\E8:sc=\E7:se=\E[m:sf=^J:\
79213cfc972SYuri Pankov	:so=\E[7m:sr=\EM:st=\EH:ta=^I:u6=\E[%i%d;%dR:u7=\E[6n:\
79313cfc972SYuri Pankov	:ue=\E[24m:up=\E[A:us=\E[4m:
79413cfc972SYuri Pankov
79513cfc972SYuri Pankov#### Linux consoles
79613cfc972SYuri Pankov#
79713cfc972SYuri Pankov
79813cfc972SYuri Pankov# This entry is good for the 1.2.13 or later version of the Linux console.
79913cfc972SYuri Pankov#
80013cfc972SYuri Pankov# ***************************************************************************
80113cfc972SYuri Pankov# *                                                                         *
80213cfc972SYuri Pankov# *                           WARNING:                                      *
80313cfc972SYuri Pankov# * Linuxes come with a default keyboard mapping kcbt=^I.  This entry, in   *
80413cfc972SYuri Pankov# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab *
80513cfc972SYuri Pankov# * character. Here are the keymap replacement lines that will set this up: *
80613cfc972SYuri Pankov# *                                                                         *
80713cfc972SYuri Pankov#	keycode  15 = Tab             Tab
80813cfc972SYuri Pankov#		alt     keycode  15 = Meta_Tab
80913cfc972SYuri Pankov#		shift	keycode  15 = F26
81013cfc972SYuri Pankov#	string F26 ="\033[Z"
81113cfc972SYuri Pankov# *                                                                         *
81213cfc972SYuri Pankov# * This has to use a key slot which is unfortunate (any unused one will    *
81313cfc972SYuri Pankov# * do, F26 is the higher-numbered one).  The change ought to be built      *
81413cfc972SYuri Pankov# * into the kernel tables.                                                 *
81513cfc972SYuri Pankov# *                                                                         *
81613cfc972SYuri Pankov# ***************************************************************************
81713cfc972SYuri Pankov#
81813cfc972SYuri Pankov# All linux kernels since 1.2.13 (at least) set the screen size
81913cfc972SYuri Pankov# themselves; this entry assumes that capability.
82013cfc972SYuri Pankov#
82113cfc972SYuri Pankov# (sgr removed to fit entry within 1023 bytes)
82213cfc972SYuri Pankov# (rmacs/smacs removed for consistency)
82313cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
82413cfc972SYuri Pankovlinux-basic|linux console:\
82513cfc972SYuri Pankov	:am:eo:mi:ms:ut:xn:xo:\
82613cfc972SYuri Pankov	:NC#18:it#8:U8#1:\
82713cfc972SYuri Pankov	:&7=^Z:@7=\E[4~:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\
82813cfc972SYuri Pankov	:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
82913cfc972SYuri Pankov	:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
83013cfc972SYuri Pankov	:IC=\E[%d@:K2=\E[G:Km=\E[M:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\
83113cfc972SYuri Pankov	:SA=\E[?7h:UP=\E[%dA:al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:\
83213cfc972SYuri Pankov	:ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
83313cfc972SYuri Pankov	:cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\
83413cfc972SYuri Pankov	:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:\
83513cfc972SYuri Pankov	:k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:\
83613cfc972SYuri Pankov	:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:\
83713cfc972SYuri Pankov	:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\E[B:kh=\E[1~:\
83813cfc972SYuri Pankov	:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mh=\E[2m:mr=\E[7m:nd=\E[C:\
83913cfc972SYuri Pankov	:nw=^M^J:r1=\Ec\E]R:rc=\E8:sc=\E7:se=\E[27m:sf=^J:sr=\EM:\
84013cfc972SYuri Pankov	:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\
84113cfc972SYuri Pankov	:vb=200\E[?5h\E[?5l:tc=vt102+enq:tc=klone+sgr:\
84213cfc972SYuri Pankov	:tc=ecma+color:
84313cfc972SYuri Pankov
84413cfc972SYuri Pankovlinux-m|Linux console no color:\
84513cfc972SYuri Pankov	:Co@:pa@:\
84613cfc972SYuri Pankov	:AB@:AF@:Sb@:Sf@:tc=linux:
84713cfc972SYuri Pankov
84813cfc972SYuri Pankov# The 1.3.x kernels add color-change capabilities; if yours doesn't have this
84913cfc972SYuri Pankov# and it matters, turn off <ccc>.  The %02x escape used to implement this is
85013cfc972SYuri Pankov# not supposedly back-portable to older SV curses (although it has worked fine
85113cfc972SYuri Pankov# on Solaris for several years) and not supported in ncurses versions before
85213cfc972SYuri Pankov# 1.9.9.
85313cfc972SYuri Pankovlinux-c-nc|linux console with color-change:\
85413cfc972SYuri Pankov	:cc:\
85513cfc972SYuri Pankov	:oc=\E]R:tc=linux-basic:
85613cfc972SYuri Pankov# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996
85713cfc972SYuri Pankovlinux-c|linux console 1.3.6+ for older ncurses:\
85813cfc972SYuri Pankov	:cc:\
85913cfc972SYuri Pankov	:oc=\E]R:tc=linux-basic:
86013cfc972SYuri Pankov
86113cfc972SYuri Pankov# The 2.2.x kernels add a private mode that sets the cursor type; use that to
86213cfc972SYuri Pankov# get a block cursor for cvvis.
86313cfc972SYuri Pankov# reported by Frank Heckenbach <frank@g-n-u.de>.
86413cfc972SYuri Pankovlinux2.2|linux 2.2.x console:\
86513cfc972SYuri Pankov	:ve=\E[?25h\E[?0c:vi=\E[?25l\E[?1c:vs=\E[?25h\E[?8c:\
86613cfc972SYuri Pankov	:tc=linux-c-nc:
86713cfc972SYuri Pankov
86813cfc972SYuri Pankov# Linux 2.6.x has a fix for SI/SO to work with UTF-8 encoding added here:
86913cfc972SYuri Pankov#	http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html
87013cfc972SYuri Pankov# Using SI/SO has the drawback that it confuses screen.  SCS would work.
87113cfc972SYuri Pankov# However, SCS is buggy (see comment in Debian #515609) -TD
87213cfc972SYuri Pankovlinux2.6|linux 2.6.x console:\
87313cfc972SYuri Pankov	:ae=^O:as=^N:me=\E[m\017:tc=linux2.2:
87413cfc972SYuri Pankov
87513cfc972SYuri Pankov# The 3.0 kernel adds support for clearing scrollback buffer (capability E3).
87613cfc972SYuri Pankovlinux3.0|linux 3.0 kernels:\
87713cfc972SYuri Pankov	:E3=\E[3;J:tc=linux2.6:
87813cfc972SYuri Pankov
87913cfc972SYuri Pankovlinux|linux console:\
88013cfc972SYuri Pankov	:tc=linux3.0:
88113cfc972SYuri Pankov
88213cfc972SYuri Pankov# Subject: linux 2.6.26 vt back_color_erase
88313cfc972SYuri Pankov# Changes to the Linux console driver broke bce model as reported in
88413cfc972SYuri Pankov#	https://bugzilla.novell.com/show_bug.cgi?id=418613
88513cfc972SYuri Pankov# apparently from
88613cfc972SYuri Pankov#	http://lkml.org/lkml/2008/4/26/305
88713cfc972SYuri Pankov#	http://groups.google.com/group/fa.linux.kernel/browse_thread/thread/87f98338f0d636bb/aa96e8b86cee0d1e?lnk=st&q=#aa96e8b86cee0d1e
88813cfc972SYuri Pankovlinux2.6.26|linux console w/o bce:\
88913cfc972SYuri Pankov	:ut@:tc=linux2.6:
89013cfc972SYuri Pankov
89113cfc972SYuri Pankov# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
89213cfc972SYuri Pankovlinux-nic|linux with ich/ich1 suppressed for non-curses programs:\
89313cfc972SYuri Pankov	:IC@:ic@:tc=linux:
89413cfc972SYuri Pankov
89513cfc972SYuri Pankov# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts.
89613cfc972SYuri Pankov# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997.
89713cfc972SYuri Pankovlinux-koi8|linux with koi8 alternate character set:\
89813cfc972SYuri Pankov	:ac=+\020,\021-\030.^Y0\215`\004a\221f\234g\237h\220i\276j\205k\203l\202m\204n\212o~p\200q\200r\200s_t\206u\207v\211w\210x\201y\230z\231{\267|\274~\224:\
89913cfc972SYuri Pankov	:tc=linux:tc=klone+koi8acs:
90013cfc972SYuri Pankov
90113cfc972SYuri Pankov# Another entry for KOI8-r with Qing Long's acsc.
90213cfc972SYuri Pankov# (which one better complies with the standard?)
90313cfc972SYuri Pankovlinux-koi8r|linux with koi8-r alternate character set:\
90413cfc972SYuri Pankov	:tc=linux:tc=klone+koi8acs:
90513cfc972SYuri Pankov
90613cfc972SYuri Pankov# Entry for the latin1 and latin2 fonts
90713cfc972SYuri Pankovlinux-lat|linux with latin1 or latin2 alternate character set:\
90813cfc972SYuri Pankov	:ac=+\020,\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:\
90913cfc972SYuri Pankov	:tc=linux:
91013cfc972SYuri Pankov
91113cfc972SYuri Pankov# This uses graphics from VT codeset instead of from cp437.
91213cfc972SYuri Pankov# reason: cp437 (aka "straight to font") is not functional under luit.
91313cfc972SYuri Pankov# from: Andrey V Lukyanov <land@long.yar.ru>.
91413cfc972SYuri Pankovlinux-vt|linux console using VT codes for graphics:\
91513cfc972SYuri Pankov	:S2@:S3@:\
91613cfc972SYuri Pankov	:ac=++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~:\
91713cfc972SYuri Pankov	:ae=\E(K:as=\E(0:me=\E[0m\E(K\017:sa@:tc=linux:
91813cfc972SYuri Pankov
91913cfc972SYuri Pankov# This is based on the Linux console (relies on the console to perform some
92013cfc972SYuri Pankov# of the functionality), but does not recognize as many control sequences.
92113cfc972SYuri Pankov# The program comes bundled with an old (circa 1998) copy of the Linux
92213cfc972SYuri Pankov# console terminfo.  It recognizes some non-ANSI/VT100 sequences such as
92313cfc972SYuri Pankov#	\E*	move cursor to home, as as \E[H
92413cfc972SYuri Pankov#	\E,X	same as \E(X
92513cfc972SYuri Pankov#	\EE	move cursor to beginning of row
92613cfc972SYuri Pankov#	\E[y,xf	same as \E[y,xH
92713cfc972SYuri Pankov#
92813cfc972SYuri Pankov# Note: The status-line support is buggy (dsl does not work).
92913cfc972SYuri Pankovkon|kon2|jfbterm|Kanji ON Linux console:\
93013cfc972SYuri Pankov	:cc@:hs:\
93113cfc972SYuri Pankov	:Ic@:Ip@:ds=\E[?H:fs=\E[?F:kB@:oc@:op=\E[37;40m:r1=\Ec:\
93213cfc972SYuri Pankov	:ts=\E[?T:vb@:ve@:vi@:vs@:tc=linux:
93313cfc972SYuri Pankov
93413cfc972SYuri Pankov# 16-color linux console entry; this works with a 256-character
93513cfc972SYuri Pankov# console font but bright background colors turn into dim ones when
93613cfc972SYuri Pankov# you use a 512-character console font. This uses bold for bright
93713cfc972SYuri Pankov# foreground colors and blink for bright background colors.
93813cfc972SYuri Pankovlinux-16color|linux console with 16 colors:\
93913cfc972SYuri Pankov	:Co#16:NC#54:pa#256:tc=linux:
94013cfc972SYuri Pankov
94113cfc972SYuri Pankov# bterm (bogl 0.1.18)
94213cfc972SYuri Pankov# Implementation is in bogl-term.c
94313cfc972SYuri Pankov# Key capabilities from linux terminfo entry
94413cfc972SYuri Pankov#
94513cfc972SYuri Pankov# Notes:
94613cfc972SYuri Pankov# bterm only supports acs using wide-characters, has case for these: qjxamlkut
94713cfc972SYuri Pankov# bterm does not support sgr, since it only processes one parameter -TD
94813cfc972SYuri Pankovbterm|bogl virtual terminal:\
94913cfc972SYuri Pankov	:am:ut:\
95013cfc972SYuri Pankov	:Co#8:co#80:li#24:pa#64:\
95113cfc972SYuri Pankov	:&7=^Z:@7=\E[4~:AB=\E[4%dm:AF=\E[3%dm:F1=\E[23~:F2=\E[24~:\
95213cfc972SYuri Pankov	:F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\
95313cfc972SYuri Pankov	:F8=\E[32~:F9=\E[33~:FA=\E[34~:K2=\E[G:Km=\E[M:\
95413cfc972SYuri Pankov	:ac=aajjkkllmmqqttuuxx:ae=^O:as=^N:cd=\E[J:ce=\E[K:\
95513cfc972SYuri Pankov	:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:do=^J:ho=\E[H:k1=\E[[A:\
95613cfc972SYuri Pankov	:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:\
95713cfc972SYuri Pankov	:k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:kI=\E[2~:\
95813cfc972SYuri Pankov	:kN=\E[6~:kP=\E[5~:kb=\177:kd=\E[B:kh=\E[1~:kl=\E[D:\
95913cfc972SYuri Pankov	:kr=\E[C:ku=\E[A:le=^H:md=\E[1m:me=\E[0m:mr=\E[7m:nw=^M^J:\
96013cfc972SYuri Pankov	:op=\E49;39m:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:ue=\E[24m:\
96113cfc972SYuri Pankov	:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
96213cfc972SYuri Pankov
96313cfc972SYuri Pankov#### Mach
96413cfc972SYuri Pankov#
96513cfc972SYuri Pankov
96613cfc972SYuri Pankov# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk>
96713cfc972SYuri Pankovmach|Mach Console:\
96813cfc972SYuri Pankov	:am:km:\
96913cfc972SYuri Pankov	:co#80:it#8:li#25:\
97013cfc972SYuri Pankov	:@7=\E[Y:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:\
97113cfc972SYuri Pankov	:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\Ec:\
97213cfc972SYuri Pankov	:cm=\E[%i%d;%dH:cr=^M:dl=\E[M:do=^J:ho=\E[H:k1=\EOP:\
97313cfc972SYuri Pankov	:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:\
97413cfc972SYuri Pankov	:k9=\EOX:k;=\EOY:kD=\E[9:kH=\E[F:kI=\E[@:kN=\E[U:kP=\E[V:\
97513cfc972SYuri Pankov	:kb=\177:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
97613cfc972SYuri Pankov	:mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:se=\E[0m:\
97713cfc972SYuri Pankov	:sf=^J:so=\E[7m:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:
97813cfc972SYuri Pankovmach-bold|Mach Console with bold instead of underline:\
97913cfc972SYuri Pankov	:ue=\E[0m:us=\E[1m:tc=mach:
98013cfc972SYuri Pankovmach-color|Mach Console with ANSI color:\
98113cfc972SYuri Pankov	:Co#8:pa#64:\
98213cfc972SYuri Pankov	:AB=\E[4%dm:AF=\E[3%dm:mh=\E[2m:mk=\E[8m:op=\E[37;40m:\
98313cfc972SYuri Pankov	:se=\E[27m:tc=mach:
98413cfc972SYuri Pankov
98513cfc972SYuri Pankov# From: Marcus Brinkmann
98613cfc972SYuri Pankov# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/
98713cfc972SYuri Pankov#
98813cfc972SYuri Pankov# Comments in the original are summarized here:
98913cfc972SYuri Pankov#
99013cfc972SYuri Pankov# hurd uses 8-bit characters (km).
99113cfc972SYuri Pankov#
99213cfc972SYuri Pankov# Although it doesn't do XON/XOFF, we don't want padding characters (xon).
99313cfc972SYuri Pankov#
99413cfc972SYuri Pankov# Regarding compatibility to vt100:  hurd doesn't specify :xn:, as we don't
99513cfc972SYuri Pankov# have the eat_newline_glitch.  It doesn't support setting or removing tab
99613cfc972SYuri Pankov# stops (hts/tbc).
99713cfc972SYuri Pankov#
99813cfc972SYuri Pankov# hurd uses ^H instead of \E[D for cub1, as only ^H implements :bw: and it is
99913cfc972SYuri Pankov# one byte instead three.
100013cfc972SYuri Pankov#
100113cfc972SYuri Pankov# :ic: is not included because hurd has insert mode.
100213cfc972SYuri Pankov#
100313cfc972SYuri Pankov# hurd doesn't use ^J for scrolling, because this could put things into the
100413cfc972SYuri Pankov# scrollback buffer.
100513cfc972SYuri Pankov#
100613cfc972SYuri Pankov# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode.
100713cfc972SYuri Pankov# This is a GNU extension.
100813cfc972SYuri Pankov#
100913cfc972SYuri Pankov# The original has commented-out ncv, but is restored here.
101013cfc972SYuri Pankov#
101113cfc972SYuri Pankov# Reading the source, RIS resets cnorm, but not xmous.
101213cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
101313cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
101413cfc972SYuri Pankovhurd|The GNU Hurd console server:\
101513cfc972SYuri Pankov	:am:bw:eo:km:mi:ms:xo:\
101613cfc972SYuri Pankov	:it#8:\
101713cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
101813cfc972SYuri Pankov	:K2=\E[G:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:\
101913cfc972SYuri Pankov	:UP=\E[%dA:ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:bt=\E[Z:\
102013cfc972SYuri Pankov	:cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%d;%dH:cr=^M:\
102113cfc972SYuri Pankov	:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ec=\E[%dX:\
102213cfc972SYuri Pankov	:ei=\E[4l:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
102313cfc972SYuri Pankov	:k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
102413cfc972SYuri Pankov	:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:\
102513cfc972SYuri Pankov	:kh=\E[1~:kl=\EOD:kr=\EOC:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:\
102613cfc972SYuri Pankov	:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=^M^J:rc=\E8:sc=\E7:\
102713cfc972SYuri Pankov	:se=\E[27m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[24m:\
102813cfc972SYuri Pankov	:up=\E[A:us=\E[4m:vb=\Eg:ve=\E[?25h:vi=\E[?25l:vs=\E[34l:
102913cfc972SYuri Pankov
103013cfc972SYuri Pankov#### OSF Unix
103113cfc972SYuri Pankov#
103213cfc972SYuri Pankov
103313cfc972SYuri Pankov# OSF/1 1.1 Snapshot 2
103413cfc972SYuri Pankovpmcons|pmconsole|PMAX console:\
103513cfc972SYuri Pankov	:am:\
103613cfc972SYuri Pankov	:co#128:li#57:\
103713cfc972SYuri Pankov	:bl=^G:cl=^L:cr=^M:do=^J:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
103813cfc972SYuri Pankov	:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:sf=^J:ta=^I:up=^K:
103913cfc972SYuri Pankov
104013cfc972SYuri Pankov# SCO console and SOS-Syscons console for 386bsd
104113cfc972SYuri Pankov# (scoansi: had unknown capabilities
104213cfc972SYuri Pankov#	:Gc=N:Gd=K:Gh=M:Gl=L:Gu=J:Gv=\072:\
104313cfc972SYuri Pankov#	:GC=E:GD=B:GH=D:GL=\64:GU=A:GV=\63:GR=C:
104413cfc972SYuri Pankov#	:G1=?:G2=Z:G3=@:G4=Y:G5=;:G6=I:G7=H:G8=<:\
104513cfc972SYuri Pankov#	:CW=\E[M:NU=\E[N:RF=\E[O:RC=\E[P:\
104613cfc972SYuri Pankov#	:WL=\E[S:WR=\E[T:CL=\E[U:CR=\E[V:\
104713cfc972SYuri Pankov# I renamed GS/GE/HM/EN/PU/PD/RT and added klone+sgr-dumb, based
104813cfc972SYuri Pankov# on the :as:=\E[12m  -- esr)
104913cfc972SYuri Pankov#
105013cfc972SYuri Pankov# klone+sgr-dumb is an error since the acsc does not match -TD
105113cfc972SYuri Pankov#
105213cfc972SYuri Pankov# In this description based on SCO's keyboard(HW) manpage list of default
105313cfc972SYuri Pankov# function key values:
105413cfc972SYuri Pankov#	F13-F24 are shifted F1-F12
105513cfc972SYuri Pankov#	F25-F36 are control F1-F12
105613cfc972SYuri Pankov#	F37-F48 are shift+control F1-F12
105713cfc972SYuri Pankov#
105813cfc972SYuri Pankov# hpa/vpa work in the console, but not in scoterm:
105913cfc972SYuri Pankov#	hpa=\E[%p1%dG,
106013cfc972SYuri Pankov#	vpa=\E[%p1%dd,
106113cfc972SYuri Pankov#
106213cfc972SYuri Pankov# SCO's terminfo uses
106313cfc972SYuri Pankov#	kLFT=\E[d,
106413cfc972SYuri Pankov#	kRIT=\E[c,
106513cfc972SYuri Pankov# which do not work (console or scoterm).
106613cfc972SYuri Pankov#
106713cfc972SYuri Pankov# Console documents only 3 attributes can be set with SGR (so we don't use sgr).
106813cfc972SYuri Pankov# (rmacs/smacs removed for consistency)
106913cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
107013cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
107113cfc972SYuri Pankovscoansi-old|SCO Extended ANSI standard crt (5.0.5):\
107213cfc972SYuri Pankov	:am:bs:eo:xo:\
107313cfc972SYuri Pankov	:co#80:it#8:li#25:\
107413cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
107513cfc972SYuri Pankov	:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
107613cfc972SYuri Pankov	:al=\E[L:bl=^G:bt=\E[Z:cd=\E[m\E[J:ce=\E[m\E[K:\
107713cfc972SYuri Pankov	:cl=\E[H\E[2J:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=:\
107813cfc972SYuri Pankov	:ho=\E[H:ic=\E[@:im=:k1=\E[M:k2=\E[N:k3=\E[O:k4=\E[P:\
107913cfc972SYuri Pankov	:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:kD=\177:kI=\E[L:\
108013cfc972SYuri Pankov	:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\
108113cfc972SYuri Pankov	:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;10m:mr=\E[7m:\
108213cfc972SYuri Pankov	:nd=\E[C:rc=\E8:sc=\E7:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\
108313cfc972SYuri Pankov	:st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=10;12C:\
108413cfc972SYuri Pankov	:vi=\E[=14;12C:vs=\E[=0;12C:
108513cfc972SYuri Pankovscoansi-new|SCO Extended ANSI standard crt (5.0.6):\
108613cfc972SYuri Pankov	:km:\
108713cfc972SYuri Pankov	:MC=\E[=r:MR=\E[=3;0m:Zk=\E[=1;0m:Zl=\E[=1;%i%dm:\
108813cfc972SYuri Pankov	:Zm=\E[=2;%i%dm:Zn=\E[=3;%i%dm:Zo=\E[=0;0m:\
108913cfc972SYuri Pankov	:Zp=\E[=0;%i%dm:cs=\E[%i%d;%dr:mm=\E[=10L:mo=\E[=11L:\
109013cfc972SYuri Pankov	:oc=\E[51m:op=\E[50m:rp=\E[%d;%db:ve=\E[=1c:vi=\E[=0c:\
109113cfc972SYuri Pankov	:vs=\E[=2c:tc=scoansi-old:
109213cfc972SYuri Pankov# make this easy to change...
109313cfc972SYuri Pankovscoansi|SCO Extended ANSI standard crt:\
109413cfc972SYuri Pankov	:tc=scoansi-old:
109513cfc972SYuri Pankov
109613cfc972SYuri Pankov# This actually describes the generic SVr4 display driver for Intel boxes.
109713cfc972SYuri Pankov# The :mh=\E[2m: isn't documented and therefore may not be reliable.
109813cfc972SYuri Pankov# From: Eric Raymond <esr@snark.thyrsus.com> Mon Nov 27 19:00:53 EST 1995
109913cfc972SYuri Pankovatt6386|at386|386at|AT&T WGS 6386 console:\
110013cfc972SYuri Pankov	:am:bw:eo:xo:\
110113cfc972SYuri Pankov	:co#80:it#8:li#25:\
110213cfc972SYuri Pankov	:@7=\E[Y:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOZ:\
110313cfc972SYuri Pankov	:F2=\EOA:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\
110413cfc972SYuri Pankov	:SR=\E[%dT:UP=\E[%dA:\
110513cfc972SYuri Pankov	:ac=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~:\
110613cfc972SYuri Pankov	:ae=\E[10m:al=\E[1L:as=\E[12m:bl=^G:bt=\E[Z:cd=\E[J:\
110713cfc972SYuri Pankov	:ce=\E[K:ch=\E[%i%dG:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:\
110813cfc972SYuri Pankov	:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[1M:do=\E[B:ec=\E[%dX:\
110913cfc972SYuri Pankov	:ei=:ho=\E[H:ic=\E[1@:im=:is=\E[0;10;39m:k1=\EOP:k2=\EOQ:\
111013cfc972SYuri Pankov	:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:\
111113cfc972SYuri Pankov	:k;=\EOY:kB=^]:kD=\E[P:kI=\E[@:kM=\E0:kN=\E[U:kP=\E[V:kb=^H:\
111213cfc972SYuri Pankov	:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:\
111313cfc972SYuri Pankov	:md=\E[1m:me=\E[0;10m:mh=\E[2m:mk=\E[9m:mr=\E[7m:nd=\E[C:\
111413cfc972SYuri Pankov	:nw=\r\E[S:rc=\E8:sc=\E7:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\
111513cfc972SYuri Pankov	:st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=1C:vi=\E[=C:\
111613cfc972SYuri Pankov	:tc=klone+color:
111713cfc972SYuri Pankov# (pc6300plus: removed ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr)
111813cfc972SYuri Pankovpc6300plus|AT&T 6300 plus:\
111913cfc972SYuri Pankov	:am:bs:xo:\
112013cfc972SYuri Pankov	:co#80:li#24:\
112113cfc972SYuri Pankov	:al=\E[1L:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[2J\E[H:\
112213cfc972SYuri Pankov	:cm=\E[%i%2;%2H:cr=^M:ct=\E[3g:dc=\E[1P:dl=\E[1M:do=\E[B:\
112313cfc972SYuri Pankov	:ei=:ho=\E[H:ic=\E[1@:im=:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:\
112413cfc972SYuri Pankov	:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:k9=\EOk:k;=\EOu:kb=^H:\
112513cfc972SYuri Pankov	:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\
112613cfc972SYuri Pankov	:me=\E[m:mh=\E[2m:mk=\E[9m:mr=\E[7m:nd=\E[C:nw=^M^J:\
112713cfc972SYuri Pankov	:se=\E[m:sf=^J:so=\E[7m:st=\EH:ue=\E[m:up=\E[A:us=\E[4m:\
112813cfc972SYuri Pankov	:ve=\E[=1C:vi=\E[=C:
112913cfc972SYuri Pankov
113013cfc972SYuri Pankov# From: Benjamin C. W. Sittler <bsittler@nmt.edu>
113113cfc972SYuri Pankov#
113213cfc972SYuri Pankov# I have a UNIX PC which I use as a terminal attached to my Linux PC.
113313cfc972SYuri Pankov# Unfortunately, the UNIX PC terminfo entry that comes with ncurses
113413cfc972SYuri Pankov# is broken. All the special key sequences are broken, making it unusable
113513cfc972SYuri Pankov# with Emacs. The problem stems from the following:
113613cfc972SYuri Pankov#
113713cfc972SYuri Pankov# The UNIX PC has a plethora of keys (103 of them, and there's no numeric
113813cfc972SYuri Pankov# keypad!), loadable fonts, and strange highlighting modes ("dithered"
113913cfc972SYuri Pankov# half-intensity, "smeared" bold, and real strike-out, for example.) It also
114013cfc972SYuri Pankov# uses resizable terminal windows, but the bundled terminal program always
114113cfc972SYuri Pankov# uses an 80x24 window (and doesn't support seem to support a 132-column
114213cfc972SYuri Pankov# mode.)
114313cfc972SYuri Pankov#
114413cfc972SYuri Pankov# HISTORY: The UNIX PC was one of the first machines with a GUI, and used a
114513cfc972SYuri Pankov# library which was a superset of SVr3.5 curses (called tam, for "terminal
114613cfc972SYuri Pankov# access method".) tam includes support for real, overlapping windows,
114713cfc972SYuri Pankov# onscreen function key labels, and bitmap graphics. But since the primary
114813cfc972SYuri Pankov# user interface on the UNIX PC was a GUI program (ua, for "user
114913cfc972SYuri Pankov# assistant",) and remote administration was considered important for the
115013cfc972SYuri Pankov# machine, tam also supported VT100-compatible terminals attached to the
115113cfc972SYuri Pankov# serial port or used across the StarLan network. To simulate the extra keys
115213cfc972SYuri Pankov# not present on a VT100, users could press ESC and a two-letter sequence,
115313cfc972SYuri Pankov# such as u d (Undo) or U D (Shift-Undo.) These two-letter sequences,
115413cfc972SYuri Pankov# however, were not the same as those sent by the actual Undo key. The
115513cfc972SYuri Pankov# actual Undo key sends ESC 0 s unshifted, and ESC 0 S shifted, for example.
115613cfc972SYuri Pankov# (If you're interested in adding some of the tam calls to ncurses, btw, I
115713cfc972SYuri Pankov# have the full documentation and several programs which use tam. It also
115813cfc972SYuri Pankov# used an extended terminfo format to describe key sequences, special
115913cfc972SYuri Pankov# highlighting modes, etc.)
116013cfc972SYuri Pankov#
116113cfc972SYuri Pankov# KEYS: This means that ncurses would quite painful on the UNIX PC, since
116213cfc972SYuri Pankov# there are two sequences for every key-modifier combination (local keyboard
116313cfc972SYuri Pankov# sequence and remote "VT100" sequence.) But I doubt many people are trying
116413cfc972SYuri Pankov# to use ncurses on the UNIX PC, since ncurses doesn't properly handle the
116513cfc972SYuri Pankov# GUI. Unfortunately, the terminfo entry (and the termcap, too, I presume)
116613cfc972SYuri Pankov# seem to have been built from the manual describing the VT100 sequences.
116713cfc972SYuri Pankov# This means it doesn't work for a real live UNIX PC.
116813cfc972SYuri Pankov#
116913cfc972SYuri Pankov# FONTS: The UNIX PC also has a strange interpretation of "alternate
117013cfc972SYuri Pankov# character set". Rather than the VT100 graphics you might expect, it allows
117113cfc972SYuri Pankov# up to 8 custom fonts to be loaded at any given time. This means that
117213cfc972SYuri Pankov# programs expecting VT100 graphics will usually be disappointed. For this
117313cfc972SYuri Pankov# reason I have disabled the smacs/rmacs sequences, but they could easily be
117413cfc972SYuri Pankov# re-enabled. Here are the relevant control sequences (from the ESCAPE(7)
117513cfc972SYuri Pankov# manpage), should you wish to do so:
117613cfc972SYuri Pankov#
117713cfc972SYuri Pankov# SGR10 - Select font 0 - ESC [ 10 m or SO
117813cfc972SYuri Pankov# SGR11 - Select font 1 - ESC [ 11 m or SI
117913cfc972SYuri Pankov# SGR12 - Select font 2 - ESC [ 12 m
118013cfc972SYuri Pankov# ... (etc.)
118113cfc972SYuri Pankov# SGR17 - Select font 7 - ESC [ 17 m
118213cfc972SYuri Pankov#
118313cfc972SYuri Pankov# Graphics for line drawing are not reliably found at *any* character
118413cfc972SYuri Pankov# location because the UNIX PC has dynamically reloadable fonts. I use font
118513cfc972SYuri Pankov# 0 for regular text and font 1 for italics, but this is by no means
118613cfc972SYuri Pankov# universal. So ASCII line drawing is in order if smacs/rmacs are enabled.
118713cfc972SYuri Pankov#
118813cfc972SYuri Pankov# MISC: The cursor visible/cursor invisible sequences were swapped in the
118913cfc972SYuri Pankov# distributed terminfo.
119013cfc972SYuri Pankov#
119113cfc972SYuri Pankov# To ameliorate these problems (and fix a few highlighting bugs) I rewrote
119213cfc972SYuri Pankov# the UNIX PC terminfo entry. The modified version works great with Lynx,
119313cfc972SYuri Pankov# Emacs, and XEmacs running on my Linux PC and displaying on the UNIX PC
119413cfc972SYuri Pankov# attached by serial cable. In Emacs, even the Undo key works, and many
119513cfc972SYuri Pankov# applications can now use the F1-F8 keys.
119613cfc972SYuri Pankov#
119713cfc972SYuri Pankov# esr's notes:
119813cfc972SYuri Pankov#	Terminfo entry for the AT&T Unix PC 7300
119913cfc972SYuri Pankov#	from escape(7) in Unix PC 7300 Manual.
120013cfc972SYuri Pankov#	Somewhat similar to a vt100-am (but different enough
120113cfc972SYuri Pankov#	to redo this from scratch.)
120213cfc972SYuri Pankov#
120313cfc972SYuri Pankov#	/***************************************************************
120413cfc972SYuri Pankov#	*
120513cfc972SYuri Pankov#	*           FONT LOADING PROGRAM FOR THE UNIX PC
120613cfc972SYuri Pankov#	*
120713cfc972SYuri Pankov#	*     This routine loads a font defined in the file ALTFONT
120813cfc972SYuri Pankov#	*     into font memory slot #1.  Once the font has been loaded,
120913cfc972SYuri Pankov#	*     it can be used as an alternative character set.
121013cfc972SYuri Pankov#	*
121113cfc972SYuri Pankov#	*     The call to ioctl with the argument WIOCLFONT is the key
121213cfc972SYuri Pankov#	*     to this routine.  For more information, see window(7) in
121313cfc972SYuri Pankov#	*     the PC 7300 documentation.
121413cfc972SYuri Pankov#	***************************************************************/
121513cfc972SYuri Pankov#	#include <string.h>		/* needed for strcpy call */
121613cfc972SYuri Pankov#	#include <sys/window.h>         /* needed for ioctl call */
121713cfc972SYuri Pankov#	#define FNSIZE	60		/* font name size */
121813cfc972SYuri Pankov#	#define ALTFONT  "/usr/lib/wfont/special.8.ft"  /* font file */
121913cfc972SYuri Pankov#	/*
122013cfc972SYuri Pankov#	*     The file /usr/lib/wfont/special.8.ft comes with the
122113cfc972SYuri Pankov#	*     standard PC software.  It defines a graphics character set
122213cfc972SYuri Pankov#	*     similar to that of the Teletype 5425 terminal.  To view
122313cfc972SYuri Pankov#	*     this or other fonts in /usr/lib/wfont, use the command
122413cfc972SYuri Pankov#	*     cfont <filename>.  For further information on fonts see
122513cfc972SYuri Pankov#	*     cfont(1) in the PC 7300 documentation.
122613cfc972SYuri Pankov#	*/
122713cfc972SYuri Pankov#
122813cfc972SYuri Pankov#	struct altfdata 	/* structure for alt font data */
122913cfc972SYuri Pankov#	{
123013cfc972SYuri Pankov#	short	altf_slot;		/* memory slot number */
123113cfc972SYuri Pankov#	char	altf_name[FNSIZE];	/* font name (file name) */
123213cfc972SYuri Pankov#	};
123313cfc972SYuri Pankov#	ldfont()
123413cfc972SYuri Pankov#	{
123513cfc972SYuri Pankov#		int wd;		/* window in which altfont will be */
123613cfc972SYuri Pankov#		struct altfdata altf;
123713cfc972SYuri Pankov#		altf.altf_slot=1;
123813cfc972SYuri Pankov#		strcpy(altf.altf_name,ALTFONT);
123913cfc972SYuri Pankov#		for (wd =1; wd < 12; wd++) {
124013cfc972SYuri Pankov#		     ioctl(wd, WIOCLFONT,&altf);
124113cfc972SYuri Pankov#	        }
124213cfc972SYuri Pankov#	}
124313cfc972SYuri Pankov#
124413cfc972SYuri Pankov# (att7300: added :vi:/:ve:/:ic:/<invis> from the BSDI entry,
124513cfc972SYuri Pankov# they're confirmed by the man page for the System V display---esr)
124613cfc972SYuri Pankov#
124713cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
124813cfc972SYuri Pankovatt7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300:\
124913cfc972SYuri Pankov	:am:xo:\
125013cfc972SYuri Pankov	:co#80:it#8:li#24:\
125113cfc972SYuri Pankov	:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\
125213cfc972SYuri Pankov	:UP=\E[%dA:al=\E[L:bl=^G:bt=\E^I:cd=\E[0J:ce=\E[0K:\
125313cfc972SYuri Pankov	:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\
125413cfc972SYuri Pankov	:do=\E[B:ei=:ho=\E[H:i1=\017\E[=1w:ic=\E[@:im=:k1=\EOc:\
125513cfc972SYuri Pankov	:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:\
125613cfc972SYuri Pankov	:kD=\ENf:kI=\ENj:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:\
125713cfc972SYuri Pankov	:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[9m:md=\E[1m:\
125813cfc972SYuri Pankov	:me=\E[0;10m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:se=\E[m:\
125913cfc972SYuri Pankov	:sf=^J:so=\E[7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=0C:\
126013cfc972SYuri Pankov	:vi=\E[=1C:
126113cfc972SYuri Pankov
126213cfc972SYuri Pankov# Sent by Stefan Stapelberg <stefan@rent-a-guru.de>, 24 Feb 1997, this is
126313cfc972SYuri Pankov# from SGI's terminfo database.  SGI's entry shows F9-F12 with the codes
126413cfc972SYuri Pankov# for the application keypad mode.  We have added iris-ansi-ap rather than
126513cfc972SYuri Pankov# change the original to keypad mode.
126613cfc972SYuri Pankov#
126713cfc972SYuri Pankov# (iris-ansi: added rmam/smam based on init string -- esr)
126813cfc972SYuri Pankov#
126913cfc972SYuri Pankov# This entry, and those derived from it, is used in xwsh (also known as
127013cfc972SYuri Pankov# winterm).  Some capabilities that do not fit into the terminfo model
127113cfc972SYuri Pankov# include the shift- and control-functionkeys:
127213cfc972SYuri Pankov#
127313cfc972SYuri Pankov# F1-F12 generate different codes when shift or control modifiers are used.
127413cfc972SYuri Pankov# For example:
127513cfc972SYuri Pankov#	F1      	\E[001q
127613cfc972SYuri Pankov#	shift F1	\E[013q
127713cfc972SYuri Pankov#	control-F1	\E[025q
127813cfc972SYuri Pankov#
127913cfc972SYuri Pankov# In application keypad mode, F9-F12 generate codes like vt100 PF1-PF4, i.e.,
128013cfc972SYuri Pankov# \EOP to \EOS.  The shifted and control modifiers still do the same thing.
128113cfc972SYuri Pankov#
128213cfc972SYuri Pankov# The cursor keys also have different codes:
128313cfc972SYuri Pankov#	control-up	\E[162q
128413cfc972SYuri Pankov#	control-down	\E[165q
128513cfc972SYuri Pankov#	control-left	\E[159q
128613cfc972SYuri Pankov#	control-right	\E[168q
128713cfc972SYuri Pankov#
128813cfc972SYuri Pankov#	shift-up	\E[161q
128913cfc972SYuri Pankov#	shift-down	\E[164q
129013cfc972SYuri Pankov#	shift-left	\E[158q
129113cfc972SYuri Pankov#	shift-right	\E[167q
129213cfc972SYuri Pankov#
129313cfc972SYuri Pankov#	control-tab	\[072q
129413cfc972SYuri Pankov#
129513cfc972SYuri Pankoviris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100):\
129613cfc972SYuri Pankov	:am:\
129713cfc972SYuri Pankov	:co#80:it#8:li#40:\
129813cfc972SYuri Pankov	:!2=\E[218q:#2=\E[143q:#4=\E[158q:%9=\E[209q:%f=\E[210q:\
129913cfc972SYuri Pankov	:%i=\E[167q:&7=\E[217q:*4=\E[P:*7=\E[147q:@7=\E[146q:\
130013cfc972SYuri Pankov	:@8=^M:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:F1=\E[011q:\
130113cfc972SYuri Pankov	:F2=\E[012q:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\
130213cfc972SYuri Pankov	:UP=\E[%dA:al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
130313cfc972SYuri Pankov	:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dl=\E[M:do=^J:\
130413cfc972SYuri Pankov	:ho=\E[H:is=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8:\
130513cfc972SYuri Pankov	:k1=\E[001q:k2=\E[002q:k3=\E[003q:k4=\E[004q:k5=\E[005q:\
130613cfc972SYuri Pankov	:k6=\E[006q:k7=\E[007q:k8=\E[008q:k9=\E[009q:k;=\E[010q:\
130713cfc972SYuri Pankov	:kB=\E[Z:kD=\177:kI=\E[139q:kM=\E[146q:kN=\E[154q:\
130813cfc972SYuri Pankov	:kP=\E[150q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
130913cfc972SYuri Pankov	:le=\E[D:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:rc=\E8:\
131013cfc972SYuri Pankov	:sc=\E7:se=\E[m:sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\
131113cfc972SYuri Pankov	:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[9/y\E[12/y\E[=6l:\
131213cfc972SYuri Pankov	:vs=\E[10/y\E[=1h\E[=2l\E[=6h:
131313cfc972SYuri Pankoviris-ansi-ap|IRIS ANSI in application-keypad mode:\
131413cfc972SYuri Pankov	:@8=\EOM:F1=\E[011q:F2=\E[012q:is=\E[?1l\E=\E[?7h:\
131513cfc972SYuri Pankov	:k9=\E[009q:k;=\E[010q:tc=iris-ansi:
131613cfc972SYuri Pankov
131713cfc972SYuri Pankov# From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX
131813cfc972SYuri Pankov# (T.Dickey 98/1/24)
131913cfc972SYuri Pankoviris-color|xwsh|IRIX ANSI with color:\
132013cfc972SYuri Pankov	:NC#33:\
132113cfc972SYuri Pankov	:DC=\E[%dP:IC=\E[%d@:ZH=\E[3m:ZR=\E[23m:cs=\E[%i%d;%dr:\
132213cfc972SYuri Pankov	:ec=\E[%dX:ei=:im=:mh=\E[2m:r1=\Ec:\
132313cfc972SYuri Pankov	:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\
132413cfc972SYuri Pankov	:ue=\E[24m:tc=vt100+enq:tc=klone+color:tc=iris-ansi-ap:
132513cfc972SYuri Pankov
132613cfc972SYuri Pankov# The following is a version of the ibm-pc entry distributed with PC/IX,
132713cfc972SYuri Pankov# (Interactive Systems' System 3 for the Big Blue), modified by Richard
132813cfc972SYuri Pankov# McIntosh at UCB/CSM.  The :pt: and :uc: have been removed from the original,
132913cfc972SYuri Pankov# (the former is untrue, and the latter failed under UCB/man); standout and
133013cfc972SYuri Pankov# underline modes have been added.  Note: this entry describes the "native"
133113cfc972SYuri Pankov# capabilities of the PC monochrome display, without ANY emulation; most
133213cfc972SYuri Pankov# communications packages (but NOT PC/IX connect) do some kind of emulation.
133313cfc972SYuri Pankovpcix|PC/IX console:\
133413cfc972SYuri Pankov	:am:bw:eo:\
133513cfc972SYuri Pankov	:co#80:li#24:\
133613cfc972SYuri Pankov	:cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:ho=\E[H:\
133713cfc972SYuri Pankov	:le=^H:me=\E[m:nd=\E[C:se=\E[m:so=\E[7m:ue=\E[m:up=\E[A:\
133813cfc972SYuri Pankov	:us=\E[4m:
133913cfc972SYuri Pankov
134013cfc972SYuri Pankov# (ibmpcx: this entry used to be known as ibmx.
134113cfc972SYuri Pankov# It formerly included the following extension capabilities:
134213cfc972SYuri Pankov#	:GC=b:GL=v:GR=t:RT=^J:\
134313cfc972SYuri Pankov#	:GH=\E[196g:GV=\E[179g:\
134413cfc972SYuri Pankov#	:GU=\E[193g:GD=\E[194g:\
134513cfc972SYuri Pankov#	:G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\
134613cfc972SYuri Pankov#	:CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\
134713cfc972SYuri Pankov#	:WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\
134813cfc972SYuri Pankov# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate
134913cfc972SYuri Pankov# ":kh=\E[Y:".  Added IBM-PC forms characters and highlights, they match
135013cfc972SYuri Pankov# what was there before. -- esr)
135113cfc972SYuri Pankovibmpcx|xenix|ibmx|IBM PC xenix console display:\
135213cfc972SYuri Pankov	:am:bs:ms:\
135313cfc972SYuri Pankov	:co#80:li#25:\
135413cfc972SYuri Pankov	:@7=\E[d:al=\E[L:cd=\E[J:ce=\E[K:cl=^L:cm=\E[%d;%dH:\
135513cfc972SYuri Pankov	:dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[K:\
135613cfc972SYuri Pankov	:k2=\E[L:k3=\E[M:k4=\E[N:kN=\E[e:kP=\E[Z:kb=^H:kd=\E[B:\
135713cfc972SYuri Pankov	:kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:nd=\E[C:up=\E[A:\
135813cfc972SYuri Pankov	:tc=klone+acs:tc=klone+sgr8:
135913cfc972SYuri Pankov
136013cfc972SYuri Pankov#### QNX
136113cfc972SYuri Pankov#
136213cfc972SYuri Pankov
136313cfc972SYuri Pankov# QNX 4.0 Console
136413cfc972SYuri Pankov# Michael's original version of this entry had <am@>, :ti=\Ei:,
136513cfc972SYuri Pankov# :te=\Eh\ER:; this was so terminfo applications could write the lower
136613cfc972SYuri Pankov# right corner without triggering a scroll.  The ncurses terminfo library can
136713cfc972SYuri Pankov# handle this case with the :ic: capability, and prefers :am: for better
136813cfc972SYuri Pankov# optimization.  Bug: The <op> capability resets attributes.
136913cfc972SYuri Pankov# From: Michael Hunter <mphunter@qnx.com> 30 Jul 1996
137013cfc972SYuri Pankov# (removed: :sa=%?%p1%t\E<%;%p2%t\E[%;%p3%t\E(%;%p4%t\E{%;%p6%t\E<%;,:)
137113cfc972SYuri Pankov# (rmacs/smacs removed for consistency)
137213cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
137313cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
137413cfc972SYuri Pankovqnx|qnx4|qnx console:\
137513cfc972SYuri Pankov	:km:mi:ms:xt:\
137613cfc972SYuri Pankov	:co#80:it#4:li#25:\
137713cfc972SYuri Pankov	:al=\EE:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:\
137813cfc972SYuri Pankov	:dc=\Ef:dl=\EF:do=^J:ei=:ho=\EH:ic=\Ee:im=:k1=\377\201:\
137913cfc972SYuri Pankov	:k2=\377\202:k3=\377\203:k4=\377\204:k5=\377\205:\
138013cfc972SYuri Pankov	:k6=\377\206:k7=\377\207:k8=\377\210:k9=\377\211:\
138113cfc972SYuri Pankov	:kD=\377\254:kI=\377\253:kN=\377\252:kP=\377\242:\
138213cfc972SYuri Pankov	:kd=\377\251:kh=\377\240:kl=\377\244:kr=\377\246:\
138313cfc972SYuri Pankov	:ku=\377\241:le=^H:mb=\E{:md=\E<:me=\E}\E]\E>\E):mr=\E(:\
138413cfc972SYuri Pankov	:nd=\EC:rp=\Eg%r%+ %.:se=\E):sf=^J:so=\E(:sr=\EI:ta=^I:\
138513cfc972SYuri Pankov	:te=\Eh\ER:ti=\Ei:ue=\E]:up=\EA:us=\E[:ve=\Ey1:vi=\Ey0:\
138613cfc972SYuri Pankov	:vs=\Ey2:
138713cfc972SYuri Pankov#
138813cfc972SYuri Pankov#
138913cfc972SYuri Pankovqnxt|qnxt4|QNX4 terminal:\
139013cfc972SYuri Pankov	:YB:tc=qnx4:
139113cfc972SYuri Pankov#
139213cfc972SYuri Pankovqnxm|QNX4 with mouse events:\
139313cfc972SYuri Pankov	:Yd#1:\
139413cfc972SYuri Pankov	:ZC=\E/:ZD=\E":ZJ=\E/>2h:ZT=\E/>2l:ZZ=\E/>1l\E/>9h:\
139513cfc972SYuri Pankov	:Za=\E/>7h:Zb=\E/>7l:Zd=\E/>6l:Zf=\E/>1h:Zg=\E/>1h:\
139613cfc972SYuri Pankov	:Zh=\E/>1h\E/>9l:Zi=\E/>6h:i1=\E/0t:tc=qnx4:
139713cfc972SYuri Pankov#
139813cfc972SYuri Pankovqnxw|QNX4 windows:\
139913cfc972SYuri Pankov	:YD:tc=qnxm:
140013cfc972SYuri Pankov#
140113cfc972SYuri Pankov#	Monochrome QNX4 terminal or console. Setting this terminal type will
140213cfc972SYuri Pankov#	allow an application running on a color console to behave as if it
140313cfc972SYuri Pankov#	were a monochrome terminal. Output will be through stdout instead of
140413cfc972SYuri Pankov#	console writes because the term routines will recognize that the
140513cfc972SYuri Pankov#	terminal name starts with 'qnxt'.
140613cfc972SYuri Pankov#
140713cfc972SYuri Pankovqnxtmono|Monochrome QNX4 terminal or console:\
140813cfc972SYuri Pankov	:Co@:pa@:\
140913cfc972SYuri Pankov	:sp@:tc=qnx4:
141013cfc972SYuri Pankov
141113cfc972SYuri Pankov# From: Federico Bianchi <bianchi@pc-arte2.arte.unipi.it>, 1 Jul 1998
141213cfc972SYuri Pankov# (esr: commented out <scp> and :te: to avoid warnings.)
141313cfc972SYuri Pankov# (TD: derive from original qnx4 entry)
141413cfc972SYuri Pankovqnxt2|qnx 2.15 serial terminal:\
141513cfc972SYuri Pankov	:am:\
141613cfc972SYuri Pankov	:!3@:%h@:%j@:&7@:Sb@:Sf@:dc@:ic@:rp@:se=\E>:so=\E<:te@:ti@:ve@:vi@:\
141713cfc972SYuri Pankov	:vs@:tc=qnx4:
141813cfc972SYuri Pankov
141913cfc972SYuri Pankov# QNX ANSI terminal definition
142013cfc972SYuri Pankov# (sgr removed to fit entry within 1023 bytes)
142113cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
142213cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
142313cfc972SYuri Pankovqansi-g|QNX ANSI:\
142413cfc972SYuri Pankov	:am:es:hs:xo:\
142513cfc972SYuri Pankov	:co#80:it#8:li#25:ws#80:\
142613cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
142713cfc972SYuri Pankov	:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:\
142813cfc972SYuri Pankov	:al=\E[1L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\
142913cfc972SYuri Pankov	:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
143013cfc972SYuri Pankov	:dl=\E[1M:do=\E[B:ds=\E[r:ec=\E[%dX:ei=:fs=\E[?6h\E8:\
143113cfc972SYuri Pankov	:ho=\E[H:i2=\E(B\E)0:ic=\E[1@:im=:\
143213cfc972SYuri Pankov	:is=\E>\E[?1l\E[?7h\E[0;10;39;49m:k1=\EOP:k2=\EOQ:\
143313cfc972SYuri Pankov	:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:\
143413cfc972SYuri Pankov	:kD=\E[P:kI=\E[@:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:\
143513cfc972SYuri Pankov	:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:ll=\E[99H:mb=\E[5m:\
143613cfc972SYuri Pankov	:md=\E[1m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:\
143713cfc972SYuri Pankov	:se=\E[27m:sf=\E[S:so=\E[7m:sr=\E[T:st=\EH:ta=^I:\
143813cfc972SYuri Pankov	:ts=\E7\E1;24r\E[?6l\E[25;%i%dH:ue=\E[24m:up=\E[A:\
143913cfc972SYuri Pankov	:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\
144013cfc972SYuri Pankov	:vs=\E[?12;25h:
144113cfc972SYuri Pankov#
144213cfc972SYuri Pankovqansi|QNX ansi with console writes:\
144313cfc972SYuri Pankov	:YA:YC:tc=qansi-g:
144413cfc972SYuri Pankov#
144513cfc972SYuri Pankovqansi-t|QNX ansi without console writes:\
144613cfc972SYuri Pankov	:YB:tc=qansi:
144713cfc972SYuri Pankov#
144813cfc972SYuri Pankovqansi-m|QNX ansi with mouse:\
144913cfc972SYuri Pankov	:Yd#1:\
145013cfc972SYuri Pankov	:ZC=\E[:ZD=\E]:ZJ=\E[>2h:ZT=\E[>2l:ZZ=\E[>1l\E[>9h:\
145113cfc972SYuri Pankov	:Za=\E[>7h:Zb=\E[>7l:Zd=\E[>6l:Zf=\E[>1h:Zg=\E[>1h:\
145213cfc972SYuri Pankov	:Zh=\E[>1h\E[>9l:Zi=\E[>6h:i1=\E[0t:tc=qansi:
145313cfc972SYuri Pankov#
145413cfc972SYuri Pankovqansi-w|QNX ansi for windows:\
145513cfc972SYuri Pankov	:YD:tc=qansi-m:
145613cfc972SYuri Pankov
145713cfc972SYuri Pankov#### NetBSD consoles
145813cfc972SYuri Pankov#
145913cfc972SYuri Pankov# pcvt termcap database entries (corresponding to release 3.31)
146013cfc972SYuri Pankov# Author's last edit-date: [Fri Sep 15 20:29:10 1995]
146113cfc972SYuri Pankov#
146213cfc972SYuri Pankov# (For the terminfo master file, I translated these into terminfo syntax.
146313cfc972SYuri Pankov# Then I dropped all the pseudo-HP entries. we don't want and can't use
146413cfc972SYuri Pankov# the :Xs: flag. Then I split :is: into a size-independent :i1: and a
146513cfc972SYuri Pankov# size-dependent :is:.  Finally, I added <rmam>/<smam> -- esr)
146613cfc972SYuri Pankov
146713cfc972SYuri Pankov# NOTE: :ic: has been taken out of this entry. for reference, it should
146813cfc972SYuri Pankov# be <ich1=\E[@>.  For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below.
146913cfc972SYuri Pankov# (esr: added :vi: and :ve: to resolve NetBSD Problem Report #4583)
147013cfc972SYuri PankovpcvtXX|pcvt vt200 emulator (DEC VT220):\
147113cfc972SYuri Pankov	:am:km:mi:ms:xn:\
147213cfc972SYuri Pankov	:it#8:vt#3:\
147313cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
147413cfc972SYuri Pankov	:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\
147513cfc972SYuri Pankov	:SR=\E[%dT:UP=\E[%dA:\
147613cfc972SYuri Pankov	:ac=++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~:\
147713cfc972SYuri Pankov	:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
147813cfc972SYuri Pankov	:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
147913cfc972SYuri Pankov	:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
148013cfc972SYuri Pankov	:i1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:im=\E[4h:\
148113cfc972SYuri Pankov	:k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:\
148213cfc972SYuri Pankov	:k6=\E[23~:k7=\E[24~:k8=\E[25~:kD=\E[3~:kH=\E[4~:kI=\E[2~:\
148313cfc972SYuri Pankov	:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:\
148413cfc972SYuri Pankov	:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
148513cfc972SYuri Pankov	:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:\
148613cfc972SYuri Pankov	:r1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
148713cfc972SYuri Pankov	:rf=/usr/share/tabset/vt100:sc=\E7:se=\E[27m:sf=\ED:\
148813cfc972SYuri Pankov	:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\
148913cfc972SYuri Pankov	:ve=\E[?25h:vi=\E[?25l:
149013cfc972SYuri Pankov
149113cfc972SYuri Pankov#	NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
149213cfc972SYuri Pankov#	termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
149313cfc972SYuri Pankov#	50 lines entries; 80 columns
149413cfc972SYuri Pankovpcvt25|dec vt220 emulation with 25 lines:\
149513cfc972SYuri Pankov	:co#80:li#25:\
149613cfc972SYuri Pankov	:is=\E[1;25r\E[25;1H:tc=pcvtXX:
149713cfc972SYuri Pankovpcvt28|dec vt220 emulation with 28 lines:\
149813cfc972SYuri Pankov	:co#80:li#28:\
149913cfc972SYuri Pankov	:is=\E[1;28r\E[28;1H:tc=pcvtXX:
150013cfc972SYuri Pankovpcvt35|dec vt220 emulation with 35 lines:\
150113cfc972SYuri Pankov	:co#80:li#35:\
150213cfc972SYuri Pankov	:is=\E[1;35r\E[35;1H:tc=pcvtXX:
150313cfc972SYuri Pankovpcvt40|dec vt220 emulation with 40 lines:\
150413cfc972SYuri Pankov	:co#80:li#40:\
150513cfc972SYuri Pankov	:is=\E[1;40r\E[40;1H:tc=pcvtXX:
150613cfc972SYuri Pankovpcvt43|dec vt220 emulation with 43 lines:\
150713cfc972SYuri Pankov	:co#80:li#43:\
150813cfc972SYuri Pankov	:is=\E[1;43r\E[43;1H:tc=pcvtXX:
150913cfc972SYuri Pankovpcvt50|dec vt220 emulation with 50 lines:\
151013cfc972SYuri Pankov	:co#80:li#50:\
151113cfc972SYuri Pankov	:is=\E[1;50r\E[50;1H:tc=pcvtXX:
151213cfc972SYuri Pankov
151313cfc972SYuri Pankov#	NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
151413cfc972SYuri Pankov#	termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
151513cfc972SYuri Pankov#	50 lines entries; 132 columns
151613cfc972SYuri Pankovpcvt25w|dec vt220 emulation with 25 lines and 132 cols:\
151713cfc972SYuri Pankov	:co#132:li#25:\
151813cfc972SYuri Pankov	:is=\E[1;25r\E[25;1H:tc=pcvtXX:
151913cfc972SYuri Pankovpcvt28w|dec vt220 emulation with 28 lines and 132 cols:\
152013cfc972SYuri Pankov	:co#132:li#28:\
152113cfc972SYuri Pankov	:is=\E[1;28r\E[28;1H:tc=pcvtXX:
152213cfc972SYuri Pankovpcvt35w|dec vt220 emulation with 35 lines and 132 cols:\
152313cfc972SYuri Pankov	:co#132:li#35:\
152413cfc972SYuri Pankov	:is=\E[1;35r\E[35;1H:tc=pcvtXX:
152513cfc972SYuri Pankovpcvt40w|dec vt220 emulation with 40 lines and 132 cols:\
152613cfc972SYuri Pankov	:co#132:li#40:\
152713cfc972SYuri Pankov	:is=\E[1;40r\E[40;1H:tc=pcvtXX:
152813cfc972SYuri Pankovpcvt43w|dec vt220 emulation with 43 lines and 132 cols:\
152913cfc972SYuri Pankov	:co#132:li#43:\
153013cfc972SYuri Pankov	:is=\E[1;43r\E[43;1H:tc=pcvtXX:
153113cfc972SYuri Pankovpcvt50w|dec vt220 emulation with 50 lines and 132 cols:\
153213cfc972SYuri Pankov	:co#132:li#50:\
153313cfc972SYuri Pankov	:is=\E[1;50r\E[50;1H:tc=pcvtXX:
153413cfc972SYuri Pankov
153513cfc972SYuri Pankov#	OpenBSD implements a color variation
153613cfc972SYuri Pankovpcvt25-color|dec vt220 emulation with 25 lines and color:\
153713cfc972SYuri Pankov	:co#80:li#25:\
153813cfc972SYuri Pankov	:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
153913cfc972SYuri Pankov	:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
154013cfc972SYuri Pankov	:is=\E[1;25r\E[25;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
154113cfc972SYuri Pankov	:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:k9=\E[21~:\
154213cfc972SYuri Pankov	:k;=\E[29~:tc=pcvtXX:tc=ecma+color:
154313cfc972SYuri Pankov
154413cfc972SYuri Pankov# Terminfo entries to enable the use of the ncurses library in colour on a
154513cfc972SYuri Pankov# NetBSD-arm32 console (only tested on a RiscPC).
154613cfc972SYuri Pankov# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98
154713cfc972SYuri Pankov# modified codes for setf/setb to setaf/setab, then to klone+color, corrected
154813cfc972SYuri Pankov# typo in invis - TD
154913cfc972SYuri Pankovarm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480):\
155013cfc972SYuri Pankov	:am:ms:ut:xn:xo:\
155113cfc972SYuri Pankov	:co#80:it#8:li#30:\
155213cfc972SYuri Pankov	:@8=\E[M:DO=\E[%dB:K1=\E[q:K2=\E[r:K3=\E[s:K4=\E[p:K5=\E[n:\
155313cfc972SYuri Pankov	:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
155413cfc972SYuri Pankov	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
155513cfc972SYuri Pankov	:ae=^O:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\
155613cfc972SYuri Pankov	:cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
155713cfc972SYuri Pankov	:ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:k0=\E[y:k1=\E[P:\
155813cfc972SYuri Pankov	:k2=\E[Q:k3=\E[R:k4=\E[S:k5=\E[t:k6=\E[u:k7=\E[v:k8=\E[l:\
155913cfc972SYuri Pankov	:k9=\E[w:k;=\E[x:kb=^H:kd=\E[B:ke=\E[?1l\E>:kl=\E[D:\
156013cfc972SYuri Pankov	:kr=\E[C:ks=\E[?1h\E=:ku=\E[A:le=^H:mb=2\E[5m:md=2\E[1m:\
156113cfc972SYuri Pankov	:me=2\E[0m:mk=2\E[8m:mr=2\E[7m:nd=2\E[C:rc=\E8:\
156213cfc972SYuri Pankov	:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\
156313cfc972SYuri Pankov	:sf=^J:so=2\E[7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\
156413cfc972SYuri Pankov	:us=2\E[4m:tc=ecma+sgr:tc=klone+color:
156513cfc972SYuri Pankov
156613cfc972SYuri Pankovarm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768):\
156713cfc972SYuri Pankov	:co#132:li#50:tc=arm100:
156813cfc972SYuri Pankov
156913cfc972SYuri Pankov# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine
157013cfc972SYuri Pankov# manufactured by Sharp for the Japenese market.
157113cfc972SYuri Pankov# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996
157213cfc972SYuri Pankovx68k|x68k-ite|NetBSD/x68k ITE:\
157313cfc972SYuri Pankov	:co#96:li#32:\
157413cfc972SYuri Pankov	:%1=\E[28~:kC=\E[9~:tc=vt220:
157513cfc972SYuri Pankov
157613cfc972SYuri Pankov# <tv@pobox.com>:
157713cfc972SYuri Pankov# Entry for the DNARD OpenFirmware console, close to ANSI but not quite.
157813cfc972SYuri Pankov#
157913cfc972SYuri Pankov# (still unfinished, but good enough so far.)
158013cfc972SYuri Pankovofcons|DNARD OpenFirmware console:\
158113cfc972SYuri Pankov	:bw:\
158213cfc972SYuri Pankov	:co#80:li#30:\
158313cfc972SYuri Pankov	:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\
158413cfc972SYuri Pankov	:LE=\233%dD:RI=\233%dC:UP=\233%dA:al=\233L:bl=^G:cd=\233J:\
158513cfc972SYuri Pankov	:ce=\233K:cl=^L:cm=\233%i%d;%dH:cr=^M:dc=\233P:dl=\233M:\
158613cfc972SYuri Pankov	:do=\233B:ei=:ic=\233@:im=:k1=\2330P:k2=\2330Q:k3=\2330W:\
158713cfc972SYuri Pankov	:k4=\2330x:k5=\2330t:k6=\2330u:k7=\2330q:k8=\2330r:\
158813cfc972SYuri Pankov	:k9=\2330p:k;=\2330M:kD=\233P:kN=\233/:kP=\233?:kb=^H:\
158913cfc972SYuri Pankov	:kd=\233B:kl=\233D:kr=\233C:ku=\233A:le=\233D:mb=\2337;2m:\
159013cfc972SYuri Pankov	:md=\2331m:me=\2330m:mh=\2332m:mk=\2338m:mr=\2337m:\
159113cfc972SYuri Pankov	:nd=\233C:nw=^M^J:se=\2330m:sf=^J:ta=^I:ue=\2330m:up=\233A:\
159213cfc972SYuri Pankov	:vb=^G:
159313cfc972SYuri Pankov
159413cfc972SYuri Pankov# NetBSD "wscons" emulator in vt220 mode.
159513cfc972SYuri Pankov# This entry is based on the NetBSD termcap entry, correcting the ncv value.
159613cfc972SYuri Pankov# The emulator renders underlined text in red.  Colors are otherwise usable.
159713cfc972SYuri Pankov#
159813cfc972SYuri Pankov# Testing the emulator and reading the source code (NetBSD 2.0), it appears
159913cfc972SYuri Pankov# that "vt220" is inaccurate.  There are a few vt220-features, but most of the
160013cfc972SYuri Pankov# vt220 screens in vttest do not work with this emulator.  For instance, it
160113cfc972SYuri Pankov# identifies itself (primary DA response) as a vt220 with selective erase.  But
160213cfc972SYuri Pankov# the selective erase feature does not work.  The secondary response is copied
160313cfc972SYuri Pankov# from Kermit's emulation of vt220, does not correspond to actual vt220.  At
160413cfc972SYuri Pankov# the level of detail in a termcap, it is a passable emulator, since ECH does
160513cfc972SYuri Pankov# work.  Don't use it on a VMS system -TD
160613cfc972SYuri Pankovwsvt25|NetBSD wscons in 25 line DEC VT220 mode:\
160713cfc972SYuri Pankov	:ms:ut:\
160813cfc972SYuri Pankov	:Co#8:NC#2:co#80:it#8:li#25:pa#64:\
160913cfc972SYuri Pankov	:@7=\E[8~:AB=\E[4%dm:AF=\E[3%dm:F1=\E[23~:F2=\E[24~:\
161013cfc972SYuri Pankov	:is=\E[r\E[25;1H:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\
161113cfc972SYuri Pankov	:k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
161213cfc972SYuri Pankov	:k;=\E[21~:kh=\E[7~:op=\E[m:r1=\Ec:tc=vt220:
161313cfc972SYuri Pankov
161413cfc972SYuri Pankovwsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta:\
161513cfc972SYuri Pankov	:km:tc=wsvt25:
161613cfc972SYuri Pankov
161713cfc972SYuri Pankov# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and
161813cfc972SYuri Pankov# DECstation/pmax.
161913cfc972SYuri Pankovrcons|BSD rasterconsole:\
162013cfc972SYuri Pankov	:tc=sun-il:
162113cfc972SYuri Pankov# Color version of above. Color currently only provided by NetBSD.
162213cfc972SYuri Pankovrcons-color|BSD rasterconsole with ANSI color:\
162313cfc972SYuri Pankov	:ut:\
162413cfc972SYuri Pankov	:Co#8:pa#64:\
162513cfc972SYuri Pankov	:AB=\E[4%dm:AF=\E[3%dm:op=\E[m:tc=rcons:
162613cfc972SYuri Pankov
162713cfc972SYuri Pankov# mgterm -- MGL/MGL2, MobileGear Graphic Library
162813cfc972SYuri Pankov# for PocketBSD,PocketLinux,NetBSD/{hpcmips,mac68k}
162913cfc972SYuri Pankov# -- the setf/setb are probably incorrect, more likely setaf/setab -TD
163013cfc972SYuri Pankov# -- compare with cons25w
163113cfc972SYuri Pankovmgterm:\
163213cfc972SYuri Pankov	:NP:am:bs:bw:eo:km:ms:pt:ut:\
163313cfc972SYuri Pankov	:Co#8:co#80:it#8:li#18:pa#64:\
163413cfc972SYuri Pankov	:@7=\E[F:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[W:\
163513cfc972SYuri Pankov	:F2=\E[X:IC=\E[%d@:K2=\E[E:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\
163613cfc972SYuri Pankov	:SR=\E[%dT:Sb=\E[4%dm:Sf=\E[3%dm:UP=\E[%dA:al=\E[L:bl=^G:\
163713cfc972SYuri Pankov	:bt=\E[Z:cb=\E[1K:cd=\E[J:ce=\E[K:ch=\E[%i%d`:cl=\E[H\E[J:\
163813cfc972SYuri Pankov	:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:cv=\E[%i%dd:dc=\E[P:\
163913cfc972SYuri Pankov	:dl=\E[M:do=\E[B:ec=\E[%dX:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[M:\
164013cfc972SYuri Pankov	:k2=\E[N:k3=\E[O:k4=\E[P:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:\
164113cfc972SYuri Pankov	:k9=\E[U:k;=\E[V:kB=\E[Z:kD=\177:kI=\E[L:kN=\E[G:kP=\E[I:\
164213cfc972SYuri Pankov	:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
164313cfc972SYuri Pankov	:mb=\E[5m:md=\E[1m:me=\E[m:mh=\E[30;1m:mr=\E[7m:nd=\E[C:\
164413cfc972SYuri Pankov	:nw=\E[E:op=\E[x:rc=\E8:rs=\E[x\E[m\Ec:sc=\E7:se=\E[m:\
164513cfc972SYuri Pankov	:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:up=\E[A:
164613cfc972SYuri Pankov
164713cfc972SYuri Pankov#### FreeBSD console entries
164813cfc972SYuri Pankov#
164913cfc972SYuri Pankov# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996
165013cfc972SYuri Pankov# Andrey Chernov maintains the FreeBSD termcap distributions.
165113cfc972SYuri Pankov#
165213cfc972SYuri Pankov# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade
165313cfc972SYuri Pankov# or comment out the :cb: capability in the console entry.
165413cfc972SYuri Pankov#
165513cfc972SYuri Pankov# Alexander Lukyanov reports:
165613cfc972SYuri Pankov# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there.
165713cfc972SYuri Pankov# Now el1 clears not only to the line beginning, but also a large chunk
165813cfc972SYuri Pankov# of previous line. But there is another bug - ech does not work at all.
165913cfc972SYuri Pankov#
166013cfc972SYuri Pankov
166113cfc972SYuri Pankov# for syscons
166213cfc972SYuri Pankov# common entry without semigraphics
166313cfc972SYuri Pankov# Bug: The <op> capability resets attributes.
166413cfc972SYuri Pankov# Bug? The ech and el1 attributes appear to move the cursor in some cases; for
166513cfc972SYuri Pankov# instance el1 does if the cursor is moved to the right margin first.  Removed
166613cfc972SYuri Pankov# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K)
166713cfc972SYuri Pankov#
166813cfc972SYuri Pankov# Setting colors turns off reverse; we cannot guarantee order, so use ncv.
166913cfc972SYuri Pankov# Note that this disables standout with color.
167013cfc972SYuri Pankov#
167113cfc972SYuri Pankov# The emulator sends difference strings based on shift- and control-keys,
167213cfc972SYuri Pankov# like scoansi:
167313cfc972SYuri Pankov#	F13-F24 are shifted F1-F12
167413cfc972SYuri Pankov#	F25-F36 are control F1-F12
167513cfc972SYuri Pankov#	F37-F48 are shift+control F1-F12
167613cfc972SYuri Pankov# (sgr removed to fit entry within 1023 bytes)
167713cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
167813cfc972SYuri Pankovcons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode):\
167913cfc972SYuri Pankov	:am:bw:eo:ms:\
168013cfc972SYuri Pankov	:co#80:it#8:li#25:\
168113cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
168213cfc972SYuri Pankov	:K2=\E[E:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:\
168313cfc972SYuri Pankov	:UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\
168413cfc972SYuri Pankov	:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:\
168513cfc972SYuri Pankov	:ec=\E[%dX:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[M:k2=\E[N:k3=\E[O:\
168613cfc972SYuri Pankov	:k4=\E[P:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:kD=\177:\
168713cfc972SYuri Pankov	:kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\
168813cfc972SYuri Pankov	:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\
168913cfc972SYuri Pankov	:mh=\E[30;1m:mr=\E[7m:nd=\E[C:nw=\E[E:rc=\E8:\
169013cfc972SYuri Pankov	:rs=\E[x\E[m\Ec:sc=\E7:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\
169113cfc972SYuri Pankov	:ta=^I:up=\E[A:ve=\E[=0C:vs=\E[=1C:
169213cfc972SYuri Pankovcons25|ansis|ansi80x25|freebsd console (25-line ansi mode):\
169313cfc972SYuri Pankov	:ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\
169413cfc972SYuri Pankov	:tc=cons25w:
169513cfc972SYuri Pankovcons25-debian|freebsd console with debian backspace (25-line ansi mode):\
169613cfc972SYuri Pankov	:kD=\E[3~:kb=\177:tc=cons25:
169713cfc972SYuri Pankovcons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode):\
169813cfc972SYuri Pankov	:Co@:pa@:\
169913cfc972SYuri Pankov	:AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25:
170013cfc972SYuri Pankovcons30|ansi80x30|freebsd console (30-line ansi mode):\
170113cfc972SYuri Pankov	:li#30:tc=cons25:
170213cfc972SYuri Pankovcons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode):\
170313cfc972SYuri Pankov	:li#30:tc=cons25-m:
170413cfc972SYuri Pankovcons43|ansi80x43|freebsd console (43-line ansi mode):\
170513cfc972SYuri Pankov	:li#43:tc=cons25:
170613cfc972SYuri Pankovcons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode):\
170713cfc972SYuri Pankov	:li#43:tc=cons25-m:
170813cfc972SYuri Pankovcons50|ansil|ansi80x50|freebsd console (50-line ansi mode):\
170913cfc972SYuri Pankov	:li#50:tc=cons25:
171013cfc972SYuri Pankovcons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode):\
171113cfc972SYuri Pankov	:li#50:tc=cons25-m:
171213cfc972SYuri Pankovcons60|ansi80x60|freebsd console (60-line ansi mode):\
171313cfc972SYuri Pankov	:li#60:tc=cons25:
171413cfc972SYuri Pankovcons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode):\
171513cfc972SYuri Pankov	:li#60:tc=cons25-m:
171613cfc972SYuri Pankovcons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic:\
171713cfc972SYuri Pankov	:ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\200t\206u\207v\211w\210x\201y\230z\231~\225:\
171813cfc972SYuri Pankov	:tc=cons25w:
171913cfc972SYuri Pankovcons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono):\
172013cfc972SYuri Pankov	:Co@:pa@:\
172113cfc972SYuri Pankov	:AB@:AF@:op@:ue=\E[m:us=\E[4m:tc=cons25r:
172213cfc972SYuri Pankovcons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines):\
172313cfc972SYuri Pankov	:li#50:tc=cons25r:
172413cfc972SYuri Pankovcons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono):\
172513cfc972SYuri Pankov	:li#50:tc=cons25r-m:
172613cfc972SYuri Pankovcons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines):\
172713cfc972SYuri Pankov	:li#60:tc=cons25r:
172813cfc972SYuri Pankovcons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono):\
172913cfc972SYuri Pankov	:li#60:tc=cons25r-m:
173013cfc972SYuri Pankov# ISO 8859-1 FreeBSD console
173113cfc972SYuri Pankovcons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars:\
173213cfc972SYuri Pankov	:ac=+\253,\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:\
173313cfc972SYuri Pankov	:tc=cons25w:
173413cfc972SYuri Pankovcons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono):\
173513cfc972SYuri Pankov	:Co@:pa@:\
173613cfc972SYuri Pankov	:AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25l1:
173713cfc972SYuri Pankovcons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines):\
173813cfc972SYuri Pankov	:li#50:tc=cons25l1:
173913cfc972SYuri Pankovcons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono):\
174013cfc972SYuri Pankov	:li#50:tc=cons25l1-m:
174113cfc972SYuri Pankovcons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines):\
174213cfc972SYuri Pankov	:li#60:tc=cons25l1:
174313cfc972SYuri Pankovcons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono):\
174413cfc972SYuri Pankov	:li#60:tc=cons25l1-m:
174513cfc972SYuri Pankov
174613cfc972SYuri Pankov#### 386BSD and BSD/OS Consoles
174713cfc972SYuri Pankov#
174813cfc972SYuri Pankov
174913cfc972SYuri Pankov# This was the original 386BSD console entry (I think).
175013cfc972SYuri Pankov# Some places it's named oldpc3|oldibmpc3.
175113cfc972SYuri Pankov# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu>
175213cfc972SYuri Pankovorigpc3|origibmpc3|IBM PC 386BSD Console:\
175313cfc972SYuri Pankov	:am:bs:bw:eo:xo:\
175413cfc972SYuri Pankov	:co#80:li#25:\
175513cfc972SYuri Pankov	:ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\
175613cfc972SYuri Pankov	:cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:ho=\E[H:\
175713cfc972SYuri Pankov	:kd=\E[B:kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[7m:\
175813cfc972SYuri Pankov	:me=\E[m\E[1;0x\E[2;7x:nd=\E[C:se=\E[1;0x\E[2;7x:\
175913cfc972SYuri Pankov	:sf=\E[S:so=\E[1;7x\E[2;0x:sr=\E[T:ue=\E[1;0x\E[2;7x:\
176013cfc972SYuri Pankov	:up=\E[A:us=\E[1;7x\E[2;0x:
176113cfc972SYuri Pankov
176213cfc972SYuri Pankov# description of BSD/386 console emulator in version 1.0 (supplied by BSDI)
176313cfc972SYuri Pankovoldpc3|oldibmpc3|old IBM PC BSD/386 Console:\
176413cfc972SYuri Pankov	:bs:km:\
176513cfc972SYuri Pankov	:li#25:\
176613cfc972SYuri Pankov	:al=\E[L:bl=^G:cr=^M:dl=\E[M:do=^J:kH=\E[F:kI=\E[L:kN=\E[G:\
176713cfc972SYuri Pankov	:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
176813cfc972SYuri Pankov	:md=\E[=15F:me=\E[=R:mh=\E[=8F:nw=^M^J:sf=^J:ta=^I:
176913cfc972SYuri Pankov
177013cfc972SYuri Pankov# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1
177113cfc972SYuri Pankov# Note, the emulator supports many of the additional console features
177213cfc972SYuri Pankov# listed in the iBCS2 (e.g. character-set selection) though not all
177313cfc972SYuri Pankov# are described here.  This entry really ought to be upgraded.
177413cfc972SYuri Pankov# Also note, the console will also work with fewer lines after doing
177513cfc972SYuri Pankov# "stty rows NN", e.g. to use 24 lines.
177613cfc972SYuri Pankov# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996)
177713cfc972SYuri Pankov# Bug: The <op> capability resets attributes.
177813cfc972SYuri Pankovbsdos-pc|IBM PC BSD/OS Console:\
177913cfc972SYuri Pankov	:tc=bsdos-pc-nobold:
178013cfc972SYuri Pankov
178113cfc972SYuri Pankovbsdos-pc-nobold|BSD/OS PC console w/o bold:\
178213cfc972SYuri Pankov	:tc=klone+color:tc=bsdos-pc-m:
178313cfc972SYuri Pankov
178413cfc972SYuri Pankovbsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono:\
178513cfc972SYuri Pankov	:am:bs:eo:km:xo:\
178613cfc972SYuri Pankov	:co#80:it#8:li#25:\
178713cfc972SYuri Pankov	:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\
178813cfc972SYuri Pankov	:UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\Ec:\
178913cfc972SYuri Pankov	:cm=\E[%i%d;%dH:cr=^M:dl=\E[M:do=^J:ho=\E[H:kH=\E[F:\
179013cfc972SYuri Pankov	:kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\
179113cfc972SYuri Pankov	:kr=\E[C:ku=\E[A:le=^H:nd=\E[C:nw=^M^J:rc=\E8:sc=\E7:sf=^J:\
179213cfc972SYuri Pankov	:ta=^I:up=\E[A:tc=klone+sgr8:
179313cfc972SYuri Pankov
179413cfc972SYuri Pankov# Old names for BSD/OS PC console used in releases before 4.1.
179513cfc972SYuri Pankovpc3|BSD/OS on the PC Console:\
179613cfc972SYuri Pankov	:tc=bsdos-pc-nobold:
179713cfc972SYuri Pankovibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline:\
179813cfc972SYuri Pankov	:tc=bsdos-pc:
179913cfc972SYuri Pankov
180013cfc972SYuri Pankov# BSD/OS on the SPARC
180113cfc972SYuri Pankovbsdos-sparc|Sun SPARC BSD/OS Console:\
180213cfc972SYuri Pankov	:tc=sun:
180313cfc972SYuri Pankov
180413cfc972SYuri Pankov# BSD/OS on the PowerPC
180513cfc972SYuri Pankovbsdos-ppc|PowerPC BSD/OS Console:\
180613cfc972SYuri Pankov	:tc=bsdos-pc:
180713cfc972SYuri Pankov
180813cfc972SYuri Pankov#### DEC VT52
180913cfc972SYuri Pankov# (<acsc>/:ae:/:as: capabilities aren't in DEC's official entry -- esr)
181013cfc972SYuri Pankov#
181113cfc972SYuri Pankov# Actually (TD pointed this out at the time the acsc string was added):
181213cfc972SYuri Pankov# vt52 shouldn't define full acsc since most of the cells don't match.
181313cfc972SYuri Pankov# see vt100 manual page A-31.  This is the list that does match:
181413cfc972SYuri Pankov#	f degree
181513cfc972SYuri Pankov#	g plus/minus
181613cfc972SYuri Pankov#	h right-arrow
181713cfc972SYuri Pankov#	k down-arrow
181813cfc972SYuri Pankov#	m scan-1
181913cfc972SYuri Pankov#	o scan-3
182013cfc972SYuri Pankov#	q scan-5
182113cfc972SYuri Pankov#	s scan-7
182213cfc972SYuri Pankov# The line-drawing happens to work in several terminal emulators, but should
182313cfc972SYuri Pankov# not be used as a guide to the capabilities of the vt52.  Note in particular
182413cfc972SYuri Pankov# that vt52 does not support line-drawing characters (the scan-X values refer
182513cfc972SYuri Pankov# to a crude plotting feature) -TD
182613cfc972SYuri Pankovvt52|dec vt52:\
182713cfc972SYuri Pankov	:bs:\
182813cfc972SYuri Pankov	:co#80:it#8:li#24:\
182913cfc972SYuri Pankov	:ac=+h.k0affggolpnqprrss:ae=\EG:as=\EF:bl=^G:cd=\EJ:\
183013cfc972SYuri Pankov	:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:do=\EB:ho=\EH:kb=^H:\
183113cfc972SYuri Pankov	:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=\ED:nd=\EC:nw=^M^J:sf=^J:\
183213cfc972SYuri Pankov	:sr=\EI:ta=^I:up=\EA:
183313cfc972SYuri Pankov
183413cfc972SYuri Pankov#### DEC VT100 and compatibles
183513cfc972SYuri Pankov#
183613cfc972SYuri Pankov# DEC terminals from the vt100 forward are collected here. Older DEC terminals
183713cfc972SYuri Pankov# and micro consoles can be found in the `obsolete' section.  More details on
183813cfc972SYuri Pankov# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be
183913cfc972SYuri Pankov# found near the end of this file.
184013cfc972SYuri Pankov#
184113cfc972SYuri Pankov# Except where noted, these entries are DEC's official terminfos.
184213cfc972SYuri Pankov# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support
184313cfc972SYuri Pankov# Engineering for more information.  Updated terminfos and termcaps
184413cfc972SYuri Pankov# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
184513cfc972SYuri Pankov#
184613cfc972SYuri Pankov# In October 1995 DEC sold its terminals business, including the VT and Dorio
184713cfc972SYuri Pankov# line and trademark, to SunRiver Data Systems.  SunRiver has since changed
184813cfc972SYuri Pankov# its name to Boundless Technologies; see http://www.boundless.com.
184913cfc972SYuri Pankov#
185013cfc972SYuri Pankov
185113cfc972SYuri Pankov# NOTE:  Any VT100 emulation, whether in hardware or software, almost
185213cfc972SYuri Pankov# certainly includes what DEC called the `Level 1 editing extension' codes;
185313cfc972SYuri Pankov# only the very oldest VT100s lacked these and there probably aren't any of
185413cfc972SYuri Pankov# those left alive.  To capture these, use one of the VT102 entries.
185513cfc972SYuri Pankov#
185613cfc972SYuri Pankov# Note that the :xn: glitch in vt100 is not quite the same as on the Concept,
185713cfc972SYuri Pankov# since the cursor is left in a different position while in the
185813cfc972SYuri Pankov# weird state (concept at beginning of next line, vt100 at end
185913cfc972SYuri Pankov# of this line) so all versions of vi before 3.7 don't handle
186013cfc972SYuri Pankov# :xn: right on vt100. The correct way to handle :xn: is when
186113cfc972SYuri Pankov# you output the char in column 80, immediately output CR LF
186213cfc972SYuri Pankov# and then assume you are in column 1 of the next line. If :xn:
186313cfc972SYuri Pankov# is on, am should be on too.
186413cfc972SYuri Pankov#
186513cfc972SYuri Pankov# I assume you have smooth scroll off or are at a slow enough baud
186613cfc972SYuri Pankov# rate that it doesn't matter (1200? or less). Also this assumes
186713cfc972SYuri Pankov# that you set auto-nl to "on", if you set it off use vt100-nam
186813cfc972SYuri Pankov# below.
186913cfc972SYuri Pankov#
187013cfc972SYuri Pankov# The padding requirements listed here are guesses. It is strongly
187113cfc972SYuri Pankov# recommended that xon/xoff be enabled, as this is assumed here.
187213cfc972SYuri Pankov#
187313cfc972SYuri Pankov# The vt100 uses <rs2> and <rf> rather than :is:/:ct:/:st: because the
187413cfc972SYuri Pankov# tab settings are in non-volatile memory and don't need to be
187513cfc972SYuri Pankov# reset upon login. Also setting the number of columns glitches
187613cfc972SYuri Pankov# the screen annoyingly. You can type "reset" to get them set.
187713cfc972SYuri Pankov#
187813cfc972SYuri Pankov# The VT100 series terminals have cursor ("arrows") keys which can operate
187913cfc972SYuri Pankov# in two different modes: Cursor Mode and Application Mode.  Cursor Mode
188013cfc972SYuri Pankov# is the reset state, and is assumed to be the normal state.  Application
188113cfc972SYuri Pankov# Mode is the "set" state.  In Cursor Mode, the cursor keys transmit
188213cfc972SYuri Pankov# "Esc [ {code}" sequences, conforming to ANSI standards.  In Application
188313cfc972SYuri Pankov# Mode, the cursor keys transmit "Esc O <code>" sequences.  Application Mode
188413cfc972SYuri Pankov# was provided primarily as an aid to the porting of VT52 applications.  It is
188513cfc972SYuri Pankov# assumed that the cursor keys are normally in Cursor Mode, and expected that
188613cfc972SYuri Pankov# applications such as vi will always transmit the :ks: string.  Therefore,
188713cfc972SYuri Pankov# the definitions for the cursor keys are made to match what the terminal
188813cfc972SYuri Pankov# transmits after the :ks: string is transmitted.  If the :ks: string
188913cfc972SYuri Pankov# is a null string or is not defined, then cursor keys are assumed to be in
189013cfc972SYuri Pankov# "Cursor Mode", and the cursor keys definitions should match that assumption,
189113cfc972SYuri Pankov# else the application may fail.  It is also expected that applications will
189213cfc972SYuri Pankov# always transmit the :ke: string to the terminal before they exit.
189313cfc972SYuri Pankov#
189413cfc972SYuri Pankov# The VT100 series terminals have an auxiliary keypad, commonly referred to as
189513cfc972SYuri Pankov# the "Numeric Keypad", because it is a cluster of numeric and function keys.
189613cfc972SYuri Pankov# The Numeric Keypad which can operate in two different modes: Numeric Mode and
189713cfc972SYuri Pankov# Application Mode.  Numeric Mode is the reset state, and is assumed to be
189813cfc972SYuri Pankov# the normal state.  Application Mode is the "set" state.  In Numeric Mode,
189913cfc972SYuri Pankov# the numeric and punctuation keys transmit ASCII 7-bit characters, and the
190013cfc972SYuri Pankov# Enter key transmits the same as the Return key (Note: the Return key
190113cfc972SYuri Pankov# can be configured to send either LF (\015) or CR LF).  In Application Mode,
190213cfc972SYuri Pankov# all the keypad keys transmit "Esc O {code}" sequences.  The PF1 - PF4 keys
190313cfc972SYuri Pankov# always send the same "Esc O {code}" sequences.  It is assumed that the keypad
190413cfc972SYuri Pankov# is normally in Numeric Mode.  If an application requires that the keypad be
190513cfc972SYuri Pankov# in Application Mode then it is expected that the user, or the application,
190613cfc972SYuri Pankov# will set the TERM environment variable to point to a terminfo entry which has
190713cfc972SYuri Pankov# defined the :ks: string to include the codes that switch the keypad into
190813cfc972SYuri Pankov# Application Mode, and the terminfo entry will also define function key
190913cfc972SYuri Pankov# fields to match the Application Mode control codes.  If the :ks: string
191013cfc972SYuri Pankov# is a null string or is not defined, then the keypad is assumed to be in
191113cfc972SYuri Pankov# Numeric Mode.  If the :ks: string switches the keypad into Application
191213cfc972SYuri Pankov# Mode, it is expected that the :ke: string will contain the control codes
191313cfc972SYuri Pankov# necessary to reset the keypad to "Normal" mode, and it is also expected that
191413cfc972SYuri Pankov# applications which transmit the :ks: string will also always transmit the
191513cfc972SYuri Pankov# :ke: string to the terminal before they exit.
191613cfc972SYuri Pankov#
191713cfc972SYuri Pankov# Here's a diagram of the VT100 keypad keys with their bindings.
191813cfc972SYuri Pankov# The top line is the name of the key (some DEC keyboards have the keys
191913cfc972SYuri Pankov# labelled somewhat differently, like GOLD instead of PF1, but this is
192013cfc972SYuri Pankov# the most "official" name).  The second line is the escape sequence it
192113cfc972SYuri Pankov# generates in Application Keypad mode (where "$" means the ESC
192213cfc972SYuri Pankov# character).  The third line contains two items, first the mapping of
192313cfc972SYuri Pankov# the key in terminfo, and then in termcap.
192413cfc972SYuri Pankov#   _______________________________________
192513cfc972SYuri Pankov#  |   PF1   |   PF2   |   PF3   |   PF4   |
192613cfc972SYuri Pankov#  |   $OP   |   $OQ   |   $OR   |   $OS   |
192713cfc972SYuri Pankov#  |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
192813cfc972SYuri Pankov#  |    7         8         9         -    |
192913cfc972SYuri Pankov#  |   $Ow   |   $Ox   |   $Oy   |   $Om   |
193013cfc972SYuri Pankov#  |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________|
193113cfc972SYuri Pankov#  |    4    |    5    |    6    |    ,    |
193213cfc972SYuri Pankov#  |   $Ot   |   $Ou   |   $Ov   |   $Ol   |
193313cfc972SYuri Pankov#  |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_|
193413cfc972SYuri Pankov#  |    1    |    2    |    3    |         |
193513cfc972SYuri Pankov#  |   $Oq   |   $Or   |   $Os   |  enter  |
193613cfc972SYuri Pankov#  |_ka1__K1_|_kb2__K2_|_ka3__K3_|  $OM    |
193713cfc972SYuri Pankov#  |         0         |   .     |         |
193813cfc972SYuri Pankov#  |        $Op        |  $On    |         |
193913cfc972SYuri Pankov#  |___kc1_______K4____|_kc3__K5_|_kent_@8_|
194013cfc972SYuri Pankov#
194113cfc972SYuri Pankov# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the
194213cfc972SYuri Pankov# terminfo guidelines.  That is a compromise used to assign the remaining
194313cfc972SYuri Pankov# keys on the keypad to kf5-kf0, used on older systems with legacy termcap
194413cfc972SYuri Pankov# support:
194513cfc972SYuri Pankovvt100+keypad|dec vt100 numeric keypad no fkeys:\
194613cfc972SYuri Pankov	:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:
194713cfc972SYuri Pankovvt100+pfkeys|dec vt100 numeric keypad:\
194813cfc972SYuri Pankov	:@8=\EOM:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:tc=vt100+keypad:
194913cfc972SYuri Pankovvt100+fnkeys|dec vt100 numeric keypad:\
195013cfc972SYuri Pankov	:k0=\EOy:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:k9=\EOw:k;=\EOx:\
195113cfc972SYuri Pankov	:tc=vt100+pfkeys:
195213cfc972SYuri Pankov#
195313cfc972SYuri Pankov# A better adaptation to modern keyboards such as the PC's, which have a dozen
195413cfc972SYuri Pankov# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to
195513cfc972SYuri Pankov# use the 5-key arrangement to model the arrow keys as suggested in the
195613cfc972SYuri Pankov# terminfo guidelines:
195713cfc972SYuri Pankov#   _______________________________________
195813cfc972SYuri Pankov#  |   PF1   |   PF2   |   PF3   |   PF4   |
195913cfc972SYuri Pankov#  |   $OP   |   $OQ   |   $OR   |   $OS   |
196013cfc972SYuri Pankov#  |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
196113cfc972SYuri Pankov#  |    7         8         9         -    |
196213cfc972SYuri Pankov#  |   $Ow   |   $Ox   |   $Oy   |   $Om   |
196313cfc972SYuri Pankov#  |_ka1__K1_|_________|_ka3__K3_|_________|
196413cfc972SYuri Pankov#  |    4    |    5    |    6    |    ,    |
196513cfc972SYuri Pankov#  |   $Ot   |   $Ou   |   $Ov   |   $Ol   |
196613cfc972SYuri Pankov#  |_________|_kb2__K2_|_________|_________|
196713cfc972SYuri Pankov#  |    1    |    2    |    3    |         |
196813cfc972SYuri Pankov#  |   $Oq   |   $Or   |   $Os   |  enter  |
196913cfc972SYuri Pankov#  |_kc1__K4_|_________|_kc3__K5_|  $OM    |
197013cfc972SYuri Pankov#  |         0         |   .     |         |
197113cfc972SYuri Pankov#  |        $Op        |  $On    |         |
197213cfc972SYuri Pankov#  |___________________|_________|_kent_@8_|
197313cfc972SYuri Pankov#
197413cfc972SYuri Pankovvt220+keypad|dec vt220 numeric keypad:\
197513cfc972SYuri Pankov	:@8=\EOM:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:k1=\EOP:\
197613cfc972SYuri Pankov	:k2=\EOQ:k3=\EOR:k4=\EOS:
197713cfc972SYuri Pankov#
197813cfc972SYuri Pankovvt100+enq|ncurses extension for vt100-style ENQ:\
197913cfc972SYuri Pankov	:u8=\E[?1;2c:tc=ansi+enq:
198013cfc972SYuri Pankovvt102+enq|ncurses extension for vt102-style ENQ:\
198113cfc972SYuri Pankov	:u8=\E[?6c:tc=ansi+enq:
198213cfc972SYuri Pankov#
198313cfc972SYuri Pankov# And here, for those of you with orphaned VT100s lacking documentation, is
198413cfc972SYuri Pankov# a description of the soft switches invoked when you do `Set Up'.
198513cfc972SYuri Pankov#
198613cfc972SYuri Pankov#  Scroll 0-Jump               Shifted 3   0-#
198713cfc972SYuri Pankov#  |      1-Smooth             |           1-British pound sign
198813cfc972SYuri Pankov#  | Autorepeat 0-Off          | Wrap Around 0-Off
198913cfc972SYuri Pankov#  | |          1-On           | |           1-On
199013cfc972SYuri Pankov#  | | Screen 0-Dark Bkg       | | New Line 0-Off
199113cfc972SYuri Pankov#  | | |      1-Light Bkg      | | |        1-On
199213cfc972SYuri Pankov#  | | | Cursor 0-Underline    | | | Interlace 0-Off
199313cfc972SYuri Pankov#  | | | |      1-Block        | | | |         1-On
199413cfc972SYuri Pankov#  | | | |                     | | | |
199513cfc972SYuri Pankov#  1 1 0 1       1 1 1 1       0 1 0 0       0 0 1 0       <--Standard Settings
199613cfc972SYuri Pankov#                | | | |                     | | | |
199713cfc972SYuri Pankov#                | | | Auto XON/XOFF 0-Off   | | | Power 0-60 Hz
199813cfc972SYuri Pankov#                | | |               1-On    | | |       1-50 Hz
199913cfc972SYuri Pankov#                | | Ansi/VT52 0-VT52        | | Bits Per Char. 0-7 Bits
200013cfc972SYuri Pankov#                | |           1-ANSI        | |                1-8 Bits
200113cfc972SYuri Pankov#                | Keyclick 0-Off            | Parity 0-Off
200213cfc972SYuri Pankov#                |          1-On             |        1-On
200313cfc972SYuri Pankov#                Margin Bell 0-Off           Parity Sense 0-Odd
200413cfc972SYuri Pankov#                            1-On                         1-Even
200513cfc972SYuri Pankov#
200613cfc972SYuri Pankov# The following SET-UP modes are assumed for normal operation:
200713cfc972SYuri Pankov#	ANSI_MODE	AUTO_XON/XOFF_ON	NEWLINE_OFF	80_COLUMNS
200813cfc972SYuri Pankov#	WRAP_AROUND_ON  JUMP_SCROLL_OFF
200913cfc972SYuri Pankov# Other SET-UP modes may be set for operator convenience or communication
201013cfc972SYuri Pankov# requirements; I recommend
201113cfc972SYuri Pankov#	AUTOREPEAT_ON	BLOCK_CURSOR	MARGIN_BELL_OFF    SHIFTED_3_#
201213cfc972SYuri Pankov# Unless you have a graphics add-on such as Digital Engineering's VT640
201313cfc972SYuri Pankov# (and even then, whenever it can be arranged!) you should set
201413cfc972SYuri Pankov#	INTERLACE_OFF
201513cfc972SYuri Pankov#
201613cfc972SYuri Pankov# (vt100: I added <rmam>/<smam> based on the init string, also :bs:. -- esr)
201713cfc972SYuri Pankovvt100|vt100-am|dec vt100 (w/advanced video):\
201813cfc972SYuri Pankov	:5i:am:bs:ms:xn:xo:\
201913cfc972SYuri Pankov	:co#80:it#8:li#24:vt#3:\
202013cfc972SYuri Pankov	:DO=\E[%dB:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:\
202113cfc972SYuri Pankov	:UP=\E[%dA:\
202213cfc972SYuri Pankov	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
202313cfc972SYuri Pankov	:ae=^O:as=^N:bl=^G:cb=3\E[1K:cd=50\E[J:ce=3\E[K:\
202413cfc972SYuri Pankov	:cl=50\E[H\E[J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
202513cfc972SYuri Pankov	:ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:kb=^H:kd=\EOB:\
202613cfc972SYuri Pankov	:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:l1=pf1:\
202713cfc972SYuri Pankov	:l2=pf2:l3=pf3:l4=pf4:le=^H:mb=2\E[5m:md=2\E[1m:me=2\E[0m:\
202813cfc972SYuri Pankov	:mr=2\E[7m:nd=2\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:rc=\E8:\
202913cfc972SYuri Pankov	:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=2\E[m:\
203013cfc972SYuri Pankov	:sf=^J:so=2\E[7m:sr=5\EM:st=\EH:ta=^I:ue=2\E[m:up=2\E[A:\
203113cfc972SYuri Pankov	:us=2\E[4m:tc=vt100+fnkeys:
203213cfc972SYuri Pankovvt100nam|vt100-nam|vt100 no automargins:\
203313cfc972SYuri Pankov	:am@:xn@:tc=vt100-am:
203413cfc972SYuri Pankovvt100-vb|dec vt100 (w/advanced video) & no beep:\
203513cfc972SYuri Pankov	:bl@:vb=\E[?5h\E[?5l:tc=vt100:
203613cfc972SYuri Pankov
203713cfc972SYuri Pankov# Ordinary vt100 in 132 column ("wide") mode.
203813cfc972SYuri Pankovvt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video):\
203913cfc972SYuri Pankov	:co#132:li#24:\
204013cfc972SYuri Pankov	:rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-am:
204113cfc972SYuri Pankovvt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin):\
204213cfc972SYuri Pankov	:co#132:li#14:vt@:\
204313cfc972SYuri Pankov	:rs=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-nam:
204413cfc972SYuri Pankov
204513cfc972SYuri Pankov# vt100 with no advanced video.
204613cfc972SYuri Pankovvt100-nav|vt100 without advanced video option:\
204713cfc972SYuri Pankov	:sg#1:\
204813cfc972SYuri Pankov	:mb@:md@:me@:mr@:sa@:se=\E[m:so=\E[7m:ue@:us@:tc=vt100:
204913cfc972SYuri Pankovvt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option):\
205013cfc972SYuri Pankov	:co#132:li#14:tc=vt100-nav:
205113cfc972SYuri Pankov
205213cfc972SYuri Pankov# vt100 with one of the 24 lines used as a status line.
205313cfc972SYuri Pankov# We put the status line on the top.
205413cfc972SYuri Pankovvt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline:\
205513cfc972SYuri Pankov	:es:hs:\
205613cfc972SYuri Pankov	:li#23:\
205713cfc972SYuri Pankov	:cl=50\E[2;1H\E[J:cm=5\E[%i%+^A;%dH:cs=\E[%i%i%d;%dr:\
205813cfc972SYuri Pankov	:ds=\E7\E[1;24r\E8:fs=\E8:ho=\E[2;1H:is=\E7\E[2;24r\E8:\
205913cfc972SYuri Pankov	:ts=\E7\E[1;%dH\E[1K:tc=vt100-am:
206013cfc972SYuri Pankov
206113cfc972SYuri Pankov# Status line at bottom.
206213cfc972SYuri Pankov# Clearing the screen will clobber status line.
206313cfc972SYuri Pankovvt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline:\
206413cfc972SYuri Pankov	:es:hs:\
206513cfc972SYuri Pankov	:li#23:\
206613cfc972SYuri Pankov	:ds=\E7\E[1;24r\E8:fs=\E8:is=\E[1;23r\E[23;1H:\
206713cfc972SYuri Pankov	:ts=\E7\E[24;%dH\E[1K:tc=vt100-am:
206813cfc972SYuri Pankov
206913cfc972SYuri Pankov# Most of the `vt100' emulators out there actually emulate a vt102
207013cfc972SYuri Pankov# This entry (or vt102-nsgr) is probably the right thing to use for
207113cfc972SYuri Pankov# these.
207213cfc972SYuri Pankovvt102|dec vt102:\
207313cfc972SYuri Pankov	:al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4l:im=\E[4h:tc=vt100:
207413cfc972SYuri Pankovvt102-w|dec vt102 in wide mode:\
207513cfc972SYuri Pankov	:co#132:\
207613cfc972SYuri Pankov	:r3=\E[?3h:tc=vt102:
207713cfc972SYuri Pankov
207813cfc972SYuri Pankov# Many brain-dead PC comm programs that pretend to be `vt100-compatible'
207913cfc972SYuri Pankov# fail to interpret the ^O and ^N escapes properly.  Symptom: the :me:
208013cfc972SYuri Pankov# string in the canonical vt100 entry above leaves the screen littered
208113cfc972SYuri Pankov# with little  snowflake or star characters (IBM PC ROM character \017 = ^O)
208213cfc972SYuri Pankov# after highlight turnoffs.  This entry should fix that, and even leave
208313cfc972SYuri Pankov# ACS support working, at the cost of making multiple-highlight changes
208413cfc972SYuri Pankov# slightly more expensive.
208513cfc972SYuri Pankov# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995
208613cfc972SYuri Pankovvt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes):\
208713cfc972SYuri Pankov	:me=\E[m:sa@:tc=vt102:
208813cfc972SYuri Pankov
208913cfc972SYuri Pankov# VT125 Graphics CRT.  Clear screen also erases graphics
209013cfc972SYuri Pankov# Some vt125's came configured with vt102 support.
209113cfc972SYuri Pankovvt125|vt125 graphics terminal:\
209213cfc972SYuri Pankov	:mi:\
209313cfc972SYuri Pankov	:cl=50\E[H\E[2J\EPpS(E)\E\\:tc=vt100:
209413cfc972SYuri Pankov
209513cfc972SYuri Pankov# This isn't a DEC entry, it came from University of Wisconsin.
209613cfc972SYuri Pankov# (vt131: I added <rmam>/<smam> based on the init string, also :bs: -- esr)
209713cfc972SYuri Pankovvt131|dec vt131:\
209813cfc972SYuri Pankov	:am:bs:xn:\
209913cfc972SYuri Pankov	:co#80:it#8:li#24:vt#3:\
210013cfc972SYuri Pankov	:RA=\E[?7h:SA=\E[?7h:bl=^G:cd=50\E[J:ce=3\E[K:\
210113cfc972SYuri Pankov	:cl=50\E[;H\E[2J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
210213cfc972SYuri Pankov	:do=^J:ho=\E[H:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:\
210313cfc972SYuri Pankov	:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\
210413cfc972SYuri Pankov	:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=2\E[5m:md=2\E[1m:\
210513cfc972SYuri Pankov	:me=2\E[m:mr=2\E[7m:nd=2\E[C:nw=^M^J:\
210613cfc972SYuri Pankov	:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\
210713cfc972SYuri Pankov	:se=2\E[m:so=2\E[7m:sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:\
210813cfc972SYuri Pankov	:us=2\E[4m:
210913cfc972SYuri Pankov
211013cfc972SYuri Pankov# vt132 - like vt100 but slower and has ins/del line and such.
211113cfc972SYuri Pankov# I'm told that :im:/:ei: are backwards in the terminal from the
211213cfc972SYuri Pankov# manual and from the ANSI standard, this describes the actual
211313cfc972SYuri Pankov# terminal. I've never actually used a vt132 myself, so this
211413cfc972SYuri Pankov# is untested.
211513cfc972SYuri Pankov#
211613cfc972SYuri Pankovvt132|DEC vt132:\
211713cfc972SYuri Pankov	:xn:\
211813cfc972SYuri Pankov	:al=99\E[L:dc=7\E[P:dl=99\E[M:ei=\E[4h:im=\E[4l:ip=7:\
211913cfc972SYuri Pankov	:sf=30\n:tc=vt100:
212013cfc972SYuri Pankov
212113cfc972SYuri Pankov# This vt220 description maps F5--F9 to the second block of function keys
212213cfc972SYuri Pankov# at the top of the keyboard.  The "DO" key is used as F10 to avoid conflict
212313cfc972SYuri Pankov# with the key marked (ESC) on the vt220.  See vt220d for an alternate mapping.
212413cfc972SYuri Pankov# PF1--PF4 are used as F1--F4.
212513cfc972SYuri Pankov#
212613cfc972SYuri Pankovvt220-old|vt200-old|DEC VT220 in vt100 emulation mode:\
212713cfc972SYuri Pankov	:am:bs:mi:pt:xn:xo:\
212813cfc972SYuri Pankov	:co#80:li#24:vt#3:\
212913cfc972SYuri Pankov	:@7=\E[4~:RA=\E[?7l:SA=\E[?7h:\
213013cfc972SYuri Pankov	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
213113cfc972SYuri Pankov	:ae=4\E(B:al=\E[L:as=2\E(0:bl=^G:cd=50\E[J:ce=3\E[K:\
213213cfc972SYuri Pankov	:cl=50\E[H\E[2J:cm=10\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
213313cfc972SYuri Pankov	:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
213413cfc972SYuri Pankov	:if=/usr/share/tabset/vt100:im=\E[4h:\
213513cfc972SYuri Pankov	:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
213613cfc972SYuri Pankov	:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:k9=\E[21~:\
213713cfc972SYuri Pankov	:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:\
213813cfc972SYuri Pankov	:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=2\E[5m:\
213913cfc972SYuri Pankov	:md=2\E[1m:me=2\E[m:mr=2\E[7m:nd=\E[C:nl=^J:rc=\E8:\
214013cfc972SYuri Pankov	:rf=/usr/share/tabset/vt100:\
214113cfc972SYuri Pankov	:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=\E[27m:\
214213cfc972SYuri Pankov	:sf=20\ED:so=\E[7m:sr=14\EM:ta=^I:ue=\E[24m:up=\E[A:\
214313cfc972SYuri Pankov	:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
214413cfc972SYuri Pankov
214513cfc972SYuri Pankov# A much better description of the VT200/220; used to be vt220-8
214613cfc972SYuri Pankov# changed rmacs/smacs from shift-in/shift-out to vt200-old's explicit G0/G1
214713cfc972SYuri Pankov# designation to accommodate bug in pcvt -TD
214813cfc972SYuri Pankov# (sgr removed to fit entry within 1023 bytes)
214913cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
215013cfc972SYuri Pankovvt220|vt200|dec vt220:\
215113cfc972SYuri Pankov	:5i:am:bs:mi:ms:xn:xo:\
215213cfc972SYuri Pankov	:co#80:it#8:li#24:vt#3:\
215313cfc972SYuri Pankov	:%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:AL=\E[%dL:\
215413cfc972SYuri Pankov	:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:\
215513cfc972SYuri Pankov	:F3=\E[25~:F4=\E[26~:F7=\E[31~:F8=\E[32~:F9=\E[33~:\
215613cfc972SYuri Pankov	:FA=\E[34~:IC=\E[%d@:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\
215713cfc972SYuri Pankov	:SA=\E[?7h:UP=\E[%dA:ae=4\E(B:al=\E[L:as=2\E(0:bl=^G:\
215813cfc972SYuri Pankov	:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
215913cfc972SYuri Pankov	:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
216013cfc972SYuri Pankov	:eA=\E)0:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
216113cfc972SYuri Pankov	:if=/usr/share/tabset/vt100:im=\E[4h:\
216213cfc972SYuri Pankov	:is=\E[?7h\E[>\E[?1h\E F\E[?4l:k1=\EOP:k2=\EOQ:k3=\EOR:\
216313cfc972SYuri Pankov	:k4=\EOS:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
216413cfc972SYuri Pankov	:k;=\E[21~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:\
216513cfc972SYuri Pankov	:kl=\E[D:kr=\E[C:ku=\E[A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=^H:\
216613cfc972SYuri Pankov	:mb=\E[5m:md=\E[1m:me=2\E[0m:mr=\E[7m:nd=\E[C:nw=\EE:\
216713cfc972SYuri Pankov	:pf=\E[4i:po=\E[5i:ps=\E[i:r1=\E[?3l:rc=\E8:sc=\E7:\
216813cfc972SYuri Pankov	:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:\
216913cfc972SYuri Pankov	:up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:
217013cfc972SYuri Pankovvt220-w|vt200-w|DEC vt220 in wide mode:\
217113cfc972SYuri Pankov	:co#132:\
217213cfc972SYuri Pankov	:r3=\E[?3h:tc=vt220:
217313cfc972SYuri Pankov# (sgr removed to fit entry within 1023 bytes)
217413cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
217513cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
217613cfc972SYuri Pankovvt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode:\
217713cfc972SYuri Pankov	:am:bs:mi:ms:xn:xo:\
217813cfc972SYuri Pankov	:co#80:it#8:li#24:vt#3:\
217913cfc972SYuri Pankov	:AL=\233%dL:DC=\233%dP:DL=\233%dM:DO=\233%dB:IC=\233%d@:\
218013cfc972SYuri Pankov	:LE=\233%dD:RI=\233%dC:UP=\233%dA:ae=\E(B:al=\233L:\
218113cfc972SYuri Pankov	:as=\E(0:bl=^G:cd=\233J:ce=\233K:cl=\233H\233J:\
218213cfc972SYuri Pankov	:cm=\233%i%d;%dH:cr=^M:cs=\233%i%d;%dr:ct=\2333g:\
218313cfc972SYuri Pankov	:dc=\233P:dl=\233M:do=^J:ec=\233%dX:ei=\2334l:ho=\233H:\
218413cfc972SYuri Pankov	:if=/usr/share/tabset/vt100:im=\2334h:\
218513cfc972SYuri Pankov	:is=\233?7h\233>\233?1h\E F\233?4l:k1=\EOP:k2=\EOQ:\
218613cfc972SYuri Pankov	:k3=\EOR:k4=\EOS:k6=\23317~:k7=\23318~:k8=\23319~:\
218713cfc972SYuri Pankov	:k9=\23320~:kI=\2332~:kN=\2336~:kP=\2335~:kb=^H:kd=\233B:\
218813cfc972SYuri Pankov	:kh=\233H:kl=\233D:kr=\233C:ku=\233A:le=^H:mb=\2335m:\
218913cfc972SYuri Pankov	:md=\2331m:me=2\2330m:mr=\2337m:nd=\233C:nw=\EE:rc=\E8:\
219013cfc972SYuri Pankov	:sc=\E7:se=\23327m:sf=\ED:so=\2337m:sr=\EM:st=\EH:ta=^I:\
219113cfc972SYuri Pankov	:ue=\23324m:up=\233A:us=\2334m:vb=\233?5h\233?5l:
219213cfc972SYuri Pankov
219313cfc972SYuri Pankov# vt220d:
219413cfc972SYuri Pankov# This vt220 description regards F6--F10 as the second block of function keys
219513cfc972SYuri Pankov# at the top of the keyboard.  This mapping follows the description given
219613cfc972SYuri Pankov# in the VT220 Programmer Reference Manual and agrees with the labeling
219713cfc972SYuri Pankov# on some terminals that emulate the vt220.  There is no support for an F5.
219813cfc972SYuri Pankov# See vt220 for an alternate mapping.
219913cfc972SYuri Pankov#
220013cfc972SYuri Pankovvt220d|DEC VT220 in vt100 mode with DEC function key labeling:\
220113cfc972SYuri Pankov	:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
220213cfc972SYuri Pankov	:F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:k5@:\
220313cfc972SYuri Pankov	:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\
220413cfc972SYuri Pankov	:tc=vt220-old:
220513cfc972SYuri Pankov
220613cfc972SYuri Pankovvt220-nam|v200-nam|VT220 in vt100 mode with no auto margins:\
220713cfc972SYuri Pankov	:am@:\
220813cfc972SYuri Pankov	:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220:
220913cfc972SYuri Pankov
221013cfc972SYuri Pankov# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko
221113cfc972SYuri Pankov# (not an official DEC entry!)
221213cfc972SYuri Pankov# The problem with real vt220 terminals is they don't send escapes when in
221313cfc972SYuri Pankov# in vt220 mode.  This can be gotten around two ways.  1> don't send
221413cfc972SYuri Pankov# escapes or 2> put the vt220 into vt100 mode and use all the nifty
221513cfc972SYuri Pankov# features of vt100 advanced video which it then has.
221613cfc972SYuri Pankov#
221713cfc972SYuri Pankov# This entry takes the view of putting a vt220 into vt100 mode so
221813cfc972SYuri Pankov# you can use the escape key in emacs and everything else which needs it.
221913cfc972SYuri Pankov#
222013cfc972SYuri Pankov# You probably don't want to use this on a VMS machine since VMS will think
222113cfc972SYuri Pankov# it has a vt220 and will get fouled up coming out of emacs
222213cfc972SYuri Pankov#
222313cfc972SYuri Pankov# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996
222413cfc972SYuri Pankov# (Added vt100 :rc:,:sc: to quiet a tic warning -- esr)
222513cfc972SYuri Pankovvt200-js|vt220-js|dec vt200 series with jump scroll:\
222613cfc972SYuri Pankov	:am:\
222713cfc972SYuri Pankov	:co#80:\
222813cfc972SYuri Pankov	:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
222913cfc972SYuri Pankov	:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:dm=:do=^J:ed=:\
223013cfc972SYuri Pankov	:ei=\E[4l:ho=\E[H:im=\E[4h:\
223113cfc972SYuri Pankov	: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:\
223213cfc972SYuri Pankov	:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:\
223313cfc972SYuri Pankov	:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
223413cfc972SYuri Pankov	:nd=\E[C:nw=^M\ED:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
223513cfc972SYuri Pankov	:rc=\E8:rf=/usr/share/tabset/vt100:sc=\E7:se=5\E[27m:\
223613cfc972SYuri Pankov	:sf=\ED:so=5\E[7m:sr=\EM:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:
223713cfc972SYuri Pankov
223813cfc972SYuri Pankov# This was DEC's vt320.  Use the purpose-built one below instead
223913cfc972SYuri Pankov#vt320|DEC VT320 in vt100 emulation mode,
224013cfc972SYuri Pankov#	use=vt220,
224113cfc972SYuri Pankov
224213cfc972SYuri Pankov# Use v320n for SCO's LYRIX.  Otherwise, use Adam Thompson's vt320-nam.
224313cfc972SYuri Pankov#
224413cfc972SYuri Pankovvt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode:\
224513cfc972SYuri Pankov	:am@:\
224613cfc972SYuri Pankov	:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220:
224713cfc972SYuri Pankov
224813cfc972SYuri Pankov# These entries are not DEC's official ones, they were purpose-built for the
224913cfc972SYuri Pankov# VT320.  Here are the designer's notes:
225013cfc972SYuri Pankov# <kel> is end on a PC kbd.  Actually 'select' on a VT.  Mapped to
225113cfc972SYuri Pankov# 'Erase to End of Field'... since nothing seems to use 'end' anyways...
225213cfc972SYuri Pankov# khome is Home on a PC kbd.  Actually 'FIND' on a VT.
225313cfc972SYuri Pankov# Things that use <knxt> usually use tab anyways... and things that don't use
225413cfc972SYuri Pankov# tab usually use <knxt> instead...
225513cfc972SYuri Pankov# kprv is same as tab - Backtab is useless...
225613cfc972SYuri Pankov# I left out :sa: because of its RIDICULOUS complexity,
225713cfc972SYuri Pankov# and the resulting fact that it causes the termcap translation of the entry
225813cfc972SYuri Pankov# to SMASH the 1k-barrier...
225913cfc972SYuri Pankov# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
226013cfc972SYuri Pankov# (vt320: uncommented :fs: --esr)
226113cfc972SYuri Pankov# (sgr removed to fit entry within 1023 bytes)
226213cfc972SYuri Pankov# (acsc removed to fit entry within 1023 bytes)
226313cfc972SYuri Pankov# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
226413cfc972SYuri Pankovvt320|vt300|dec vt320 7 bit terminal:\
226513cfc972SYuri Pankov	:am:es:hs:mi:ms:xn:\
226613cfc972SYuri Pankov	:co#80:li#24:ws#80:\
226713cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
226813cfc972SYuri Pankov	:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=\E(B:al=\E[L:as=\E(0:\
226913cfc972SYuri Pankov	:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\
227013cfc972SYuri Pankov	:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:\
227113cfc972SYuri Pankov	:ei=\E[4l:fs=\E[0$}:ho=\E[H:im=\E[4h:\
227213cfc972SYuri Pankov	:is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
227313cfc972SYuri Pankov	:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
227413cfc972SYuri Pankov	:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
227513cfc972SYuri Pankov	:kh=\E[1~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
227613cfc972SYuri Pankov	:mb=\E[5m:md=\E[1m:me=2\E[0m:mr=\E[7m:nd=\E[C:nw=\EE:\
227713cfc972SYuri Pankov	:rc=\E8:\
227813cfc972SYuri Pankov	:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
227913cfc972SYuri Pankov	:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
228013cfc972SYuri Pankov	:ts=\E[1$}\E[H\E[K:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:\
228113cfc972SYuri Pankov	:vi=\E[?25l:tc=vt220+keypad:
228213cfc972SYuri Pankovvt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy:\
228313cfc972SYuri Pankov	:am@:\
228413cfc972SYuri Pankov	:is=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
228513cfc972SYuri Pankov	:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
228613cfc972SYuri Pankov	:tc=vt320:
228713cfc972SYuri Pankov# We have to init 132-col mode, not 80-col mode.
228813cfc972SYuri Pankovvt320-w|vt300-w|dec vt320 wide 7 bit terminal:\
228913cfc972SYuri Pankov	:co#132:ws#132:\
229013cfc972SYuri Pankov	:is=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
229113cfc972SYuri Pankov	:rs=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
229213cfc972SYuri Pankov	:tc=vt320:
229313cfc972SYuri Pankovvt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am:\
229413cfc972SYuri Pankov	:am@:\
229513cfc972SYuri Pankov	:is=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
229613cfc972SYuri Pankov	:rs=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H:\
229713cfc972SYuri Pankov	:tc=vt320-w:
229813cfc972SYuri Pankov
229913cfc972SYuri Pankov# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals
230013cfc972SYuri Pankov#   which are pretty much a superset of the VT320.  They have the
230113cfc972SYuri Pankov#   host writable status line, yet another different DRCS matrix size,
230213cfc972SYuri Pankov#   and such, but they add the DEC Technical character set, Multiple text
230313cfc972SYuri Pankov#   pages, selectable length pages, and the like.  The difference between
230413cfc972SYuri Pankov#   the vt330 and vt340 is that the latter has only 2 planes and a monochrome
230513cfc972SYuri Pankov#   monitor, the former has 4 planes and a color monitor.  These terminals
230613cfc972SYuri Pankov#   support VT131 and ANSI block mode, but as with much of these things,
230713cfc972SYuri Pankov#   termcap/terminfo doesn't deal with these features.
230813cfc972SYuri Pankov#
230913cfc972SYuri Pankov# Note that this entry is are set up in what was the standard way for GNU
231013cfc972SYuri Pankov# Emacs v18 terminal modes to deal with the cursor keys in that the arrow
231113cfc972SYuri Pankov# keys were switched into application mode at the same time the numeric pad
231213cfc972SYuri Pankov# is switched into application mode.  This changes the definitions of the
231313cfc972SYuri Pankov# arrow keys.  Emacs v19 is smarter and mines its keys directly out of
231413cfc972SYuri Pankov# your termcap or terminfo entry,
231513cfc972SYuri Pankov#
231613cfc972SYuri Pankov# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993
231713cfc972SYuri Pankov# (vt340: string capability "sb=\E[M" corrected to "sr";
231813cfc972SYuri Pankov# also, added <rmam>/<smam> based on the init string -- esr)
231913cfc972SYuri Pankovvt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page:\
232013cfc972SYuri Pankov	:am:es:hs:mi:ms:xn:xo:\
232113cfc972SYuri Pankov	:co#80:it#8:li#24:vt#3:\
232213cfc972SYuri Pankov	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
232313cfc972SYuri Pankov	:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
232413cfc972SYuri Pankov	:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
232513cfc972SYuri Pankov	:ae=\E(B:al=\E[L:as=\E(0:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
232613cfc972SYuri Pankov	:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
232713cfc972SYuri Pankov</