-
Notifications
You must be signed in to change notification settings - Fork 49
/
termcap
14761 lines (14216 loc) · 617 KB
/
termcap
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
######## TERMINAL TYPE DESCRIPTIONS SOURCE FILE
#
# Version 10.2.7
# $Date: 1999/03/10 15:53:04 $
# termcap syntax
#
# Eric S. Raymond (current maintainer)
# John Kunze, Berkeley
# Craig Leres, Berkeley
#
# Please e-mail changes to terminfo@ccil.org; the old termcap@berkeley.edu
# address is no longer valid. The latest version can always be found at
# <http://www.tuxedo.org/terminfo>.
#
# PURPOSE OF THIS FILE:
#
# This file describes the capabilities of various character-cell terminals,
# as needed by software such as screen-oriented editors.
#
# Other terminfo and termcap files exist, supported by various OS vendors
# or as relics of various older versions of UNIX. This one is the longest
# and most comprehensive one in existence. It subsumes not only the entirety
# of the historical 4.4BSD, GNU, System V and SCO termcap files and the BRL
# termcap file, but also large numbers of vendor-maintained termcap and
# terminfo entries more complete and carefully tested than those in historical
# termcap/terminfo versions.
#
# Pointers to related resources (including the ncurses distribution) may
# be found at <http://www.tuxedo.org/terminfo>.
#
# INTERNATIONALIZATION:
#
# This file uses only the US-ASCII character set (no ISO8859 characters).
#
# This file assumes a US-ASCII character set. If you need to fix this, start
# by global-replacing \E(B and \E)B with the appropriate ISO 6429 enablers
# for your character set. \E(A and \E)A enables the British character set
# with the pound sign at position 2/3.
#
# In a Japanese-processing environment using EUC/Japanese or Shift-JIS,
# C1 characters are considered the first-byte set of the Japanese encodings,
# so \E)0 should be avoided in <enacs> and initialization strings.
#
# FILE FORMAT:
#
# The version you are looking at may be in any of three formats: master
# (terminfo with OT capabilities), stock terminfo, or termcap. You can tell
# which by the format given in the header above.
#
# The master format is accepted and generated by the terminfo tools in the
# ncurses suite; it differs from stock (System V-compatible) terminfo only
# in that it admits a group of capabilities (prefixed `OT') equivalent to
# various obsolete termcap capabilities. You can, thus, convert from master
# to stock terminfo simply by filtering with `sed "/OT[^,]*,/s///"'; but if
# you have ncurses `tic -I' is nicer (among other things, it automatically
# outputs entries in a canonical form).
#
# The termcap version is generated automatically from the master version
# using tic -C. This filtering leaves in the OT capabilities under their
# original termcap names. All translated entries fit within the 1023-byte
# string-table limit of archaic termcap libraries except where explicitly
# noted below. Note that the termcap translation assumes that your termcap
# library can handle multiple tc capabilities in an entry. 4.4BSD has this
# capability. Older versions of GNU termcap, through 1.3, do not.
#
# For details on these formats, see terminfo(5) in the ncurses distribution,
# and termcap(5) in the 4.4BSD Unix Programmer's Manual. Be aware that 4.4BSD
# curses has been declared obsolete by the caretakers of the 4.4BSD sources
# as of June 1995; they are encouraging everyone to migrate to ncurses.
#
# Note: unlike some other distributed terminfo files (Novell Unix & SCO's),
# no entry in this file has embedded comments. This is so source translation
# to termcap only has to carry over leading comments. Also, no name field
# contains embedded whitespace (such whitespace confuses rdist).
#
# Further note: older versions of this file were often installed with an editor
# script (reorder) that moved the most common terminal types to the front of
# the file. This should no longer be necessary, as the file is now ordered
# roughly by type frequency with ANSI/VT100 and other common types up front.
#
# Some information has been merged in from terminfo files distributed by
# USL and SCO (see COPYRIGHTS AND OTHER DELUSIONS below). Much information
# comes from vendors who maintain official terminfos for their hardware
# (notably DEC and Wyse).
#
# A detailed change history is included at the end of this file.
#
# FILE ORGANIZATION:
#
# Comments in this file begin with # - they cannot appear in the middle
# of a terminfo/termcap entry (this feature had to be sacrificed in order
# to allow standard terminfo and termcap syntax to be generated cleanly from
# the master format). Individual capabilities are commented out by
# placing a period between the colon and the capability name.
#
# The file is divided up into major sections (headed by lines beginning with
# the string "########") and minor sections (beginning with "####"); do
#
# grep "^####" <file> | more
#
# to see a listing of section headings. The intent of the divisions is
# (a) to make it easier to find things, and (b) to order the database so
# that important and frequently-encountered terminal types are near the
# front (so that you'll get reasonable search efficiency from a linear
# search of the termcap form even if you don't use reorder). Minor sections
# usually correspond to manufacturers or standard terminal classes.
# Parenthesized words following manufacturer names are type prefixes or
# product line names used by that manufacturers.
#
# HOW TO READ THE ENTRIES:
#
# The first name in an entry is the canonical name for the model or
# type, last entry is a verbose description. Others are mnemonic synonyms for
# the terminal.
#
# Terminal names look like <manufacturer> <model> - <modes/options>
# The part to the left of the dash, if a dash is present, describes the
# particular hardware of the terminal. The part to the right may be used
# for flags indicating special ROMs, extra memory, particular terminal modes,
# or user preferences.
#
# All names should be in lower case, for consistency in typing.
#
# The following are conventionally used suffixes:
# -2p Has two pages of memory. Likewise 4p, 8p, etc.
# -am Enable auto-margin.
# -m Monochrome. Suppress color support
# -mc Magic-cookie. Some terminals (notably older Wyses) can
# only support one attribute without magic-cookie lossage.
# Their base entry is usually paired with another that
# uses magic cookies to support multiple attributes.
# -nam No auto-margin - suppress :am: capability
# -nl No labels - suppress soft labels
# -ns No status line - suppress status line
# -rv Terminal in reverse video mode (black on white)
# -s Enable status line.
# -vb Use visible bell (:vb:) rather than :bl:.
# -w Wide - in 132 column mode.
# If a name has multiple suffixes and one is a line height, that one should
# go first. Thus `aaa-30-s-rv' is recommended over `aaa-s-rv-30'.
#
# Entries with embedded plus signs are designed to be included through use/tc
# capabilities, not used as standalone entries.
#
# To avoid search clashes, some older all-numeric names for terminals have
# been removed (i.e., "33" for the Model 33 Teletype, "2621" for the HP2621).
# All primary names of terminals now have alphanumeric prefixes.
#
# Comments marked "esr" are mostly results of applying the termcap-compiler
# code packaged with ncurses and contemplating the resulting error messages.
# In many cases, these indicated obvious fixes to syntax garbled by the
# composers. In a few cases, I was able to deduce corrected forms for garbled
# capabilities by looking at context. All the information in the original
# entries is preserved in the comments.
#
# In the comments, terminfo capability names are bracketed with <> (angle
# brackets). Termcap capability names are bracketed with :: (colons).
#
# INTERPRETATION OF USER CAPABILITIES
#
# The System V Release 4 and XPG4 terminfo format defines ten string
# capabilities for use by applications, <u0>...<u9>. In this file, we use
# certain of these capabilities to describe functions which are not covered
# by terminfo. The mapping is as follows:
#
# u9 terminal enquire string (equiv. to ANSI/ECMA-48 DA)
# u8 terminal answerback description
# u7 cursor position request (equiv. to VT100/ANSI/ECMA-48 DSR 6)
# u6 cursor position report (equiv. to ANSI/ECMA-48 CPR)
#
# The terminal enquire string <u9> should elicit an answerback response
# from the terminal. Common values for <u9> will be ^E (on older ASCII
# terminals) or \E[c (on newer VT100/ANSI/ECMA-48-compatible terminals).
#
# The cursor position request (<u7>) string should elicit a cursor position
# report. A typical value (for VT100 terminals) is \E[6n.
#
# The terminal answerback description (u8) must consist of an expected
# answerback string. The string may contain the following scanf(3)-like
# escapes:
#
# %c Accept any character
# %[...] Accept any number of characters in the given set
#
# The cursor position report (<u6>) string must contain two scanf(3)-style
# %d format elements. The first of these must correspond to the Y coordinate
# and the second to the %d. If the string contains the sequence %i, it is
# taken as an instruction to decrement each value after reading it (this is
# the inverse sense from the cup string). The typical CPR value is
# \E[%i%d;%dR (on VT100/ANSI/ECMA-48-compatible terminals).
#
# These capabilities are used by tac(1m), the terminfo action checker soon
# to be distributed with ncurses.
#
# TABSET FILES
#
# All the entries in this file have been edited to assume that the tabset
# files directory is /usr/share/tabset, in conformance with the File Hierarchy
# Standard for Linux and open-source BSD systems. Some vendors (notably Sun)
# use /usr/lib/tabset or (more recently) /usr/share/lib/tabset.
#
# No curses package we know of actually uses these files. If their location
# is an issue, you will have to hand-patch the file locations before compiling
# this file.
#
# REQUEST FOR CONTACT INFORMATION AND HISTORICAL MATERIAL
#
# As the ANSI/ECMA-48 standard and variants take firmer hold, and as
# character-cell terminals are increasingly replaced by X displays, much of
# this file is becoming a historical document (this is part of the reason for
# the new organization, which puts ANSI types, xterm, Unix consoles,
# and vt100 up front in confidence that this will catch 95% of new hardware).
#
# For the terminal types still alive, I'd like to have manufacturer's
# contact data (Internet address and/or snail-mail + phone).
#
# I'm also interested in enriching the comments so that the latter portions of
# the file do in fact become a potted history of VDT technology as seen by
# UNIX hackers. Ideally, I'd like the headers for each manufacturer to
# include its live/dead/out-of-the-business status, and for as many
# terminal types as possible to be tagged with information like years
# of heaviest use, popularity, and interesting features.
#
# I'm especially interested in identifying the obscure entries listed under
# `Miscellaneous obsolete terminals, manufacturers unknown' before the tribal
# wisdom about them gets lost. If you know a lot about obscure old terminals,
# please go to the terminfo resource page, grab the UFO file (ufo.ti), and
# eyeball it for things you can identify and describe.
#
# If you have been around long enough to contribute, please read the file
# with this in mind and send me your annotations.
#
# COPYRIGHTS AND OTHER DELUSIONS
#
# The BSD ancestor of this file had a standard Regents of the University of
# California copyright with dates from 1980 to 1993.
#
# Some information has been merged in from a terminfo file SCO distributes.
# It has an obnoxious boilerplate copyright which I'm ignoring because they
# took so much of the content from the ancestral BSD versions of this file
# and didn't attribute it, thereby violating the BSD Regents' copyright.
#
# Not that anyone should care. However many valid functions copyrights may
# serve, putting one on a termcap/terminfo file with hundreds of anonymous
# contributors makes about as much sense as copyrighting a wall-full of
# graffiti -- it's legally dubious, ethically bogus, and patently ridiculous.
#
# This file deliberately has no copyright. It belongs to no one and everyone.
# If you claim you own it, you will merely succeed in looking like a fool.
# Use it as you like. Use it at your own risk. Copy and redistribute freely.
# There are no guarantees anywhere. Svaha!
#
######## ANSI, UNIX CONSOLE, AND SPECIAL TYPES
#
# This section describes terminal classes and brands that are still
# quite common.
#
#### Specials
#
# Special "terminals". These are used to label tty lines when you don't
# know what kind of terminal is on it. The characteristics of an unknown
# terminal are the lowest common denominator - they look about like a ti 700.
#
dumb|80-column dumb tty:\
:am:\
:co#80:\
:bl=^G:cr=^M:do=^J:sf=^J:
unknown|unknown terminal type:\
:gn:tc=dumb:
lpr|printer|line printer:\
:bs:hc:os:\
:co#132:li#66:\
:bl=^G:cr=^M:do=^J:ff=^L:le=^H:sf=^J:
glasstty|classic glass tty interpreting ASCII control characters:\
:am:\
:co#80:\
:bl=^G:cl=^L:cr=^M:do=^J:kb=^H:kd=^J:kl=^H:le=^H:nw=^M^J:\
:ta=^I:
#### ANSI.SYS/ISO 6429/ECMA-48 Capabilities
#
# See the end-of-file comment for more on these.
#
# The IBM PC alternate character set. Plug this into any Intel console entry.
# We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the
# ROM graphics for control characters such as the diamond, up- and down-arrow.
# This works with the System V, Linux, and BSDI consoles. It's a safe bet this
# will work with any Intel console, they all seem to have inherited \E[11m
# from the ANSI.SYS de-facto standard.
klone+acs|alternate character set for ansi.sys displays:\
:ac=+\020\054\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376:\
:ae=\E[10m:as=\E[11m:
# Highlight controls corresponding to the ANSI.SYS standard. Most
# console drivers for Intel boxes obey these. Makes the same assumption
# about \E[11m as klone+acs. True ANSI/ECMA-48 would have :se=\E[27m:,
# :ue=\E[24m:, but this isn't a documented feature of ANSI.SYS.
klone+sgr|attribute control for ansi.sys displays:\
:S2=\E[11m:S3=\E[10m:mb=\E[5m:md=\E[1m:me=\E[0;10m:\
:mk=\E[8m:mr=\E[7m:\
:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m:\
:se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:\
:tc=klone+acs:
# Highlight controls corresponding to the ANSI.SYS standard. *All*
# console drivers for Intel boxes obey these. Does not assume \E[11m will
# work; uses \E[12m instead, which is pretty bulletproof but loses you the ACS
# diamond and arrow characters under curses.
klone+sgr-dumb|attribute control for ansi.sys displays (no ESC [ 11 m):\
:as=\E[12m:mb=\E[5m:md=\E[1m:me=\E[0;10m:mk=\E[8m:\
:mr=\E[7m:\
:..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m:\
:se=\E[m:so=\E[7m:ue=\E[m:us=\E[4m:\
:tc=klone+acs:
# KOI8-R (RFC1489) acs (alternate character set)
# From: Qing Long <qinglong@Bolizm.ihep.su>, 24 Feb 1996.
klone+koi8acs|alternate character set for ansi.sys displays with KOI8 charset:\
:ac=+\020\054\021-\036.^_0\215`\004a\237f\234g\232h\222i\220j\205k\203l\202m\204n\212o\213p\216q\0r\217s\214t\206u\207v\210w\211x\201y\230z\231{\267|\274}L~\225:\
:ae=\E[10m:as=\E[11m:
# ANSI.SYS color control. The setab/setaf caps depend on the coincidence
# between SVr4/XPG4's color numbers and ANSI.SYS attributes. Here are longer
# but equivalent strings that don't rely on that coincidence:
# setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
# setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
# The DOS 5 manual asserts that these sequences meet the ISO 6429 standard.
# They match a subset of ECMA-48.
klone+color|color control for ansi.sys and ISO6429-compatible displays:\
:Co#8:NC#3:pa#64:\
:AB=\E[4%p1%dm:AF=\E[3%p1%dm:op=\E[37;40m:
# This is better than klone+color, it doesn't assume white-on-black as the
# default color pair, but many `ANSI' terminals don't grok the <op> cap.
ecma+color|color control for ECMA-48-compatible terminals:\
:Co#8:NC#3:pa#64:\
:AB=\E[4%p1%dm:AF=\E[3%p1%dm:op=\E[39;49m:
# Attribute control for ECMA-48-compatible terminals
ecma+sgr|attribute capabilities for true ECMA-48 terminals:\
:se=\E[27m:ue=\E[24m:\
:tc=klone+sgr:
# For comparison, here are all the capabilities implied by the Intel
# Binary Compatibility Standard (level 2) that fit within terminfo.
# For more detail on this rather pathetic standard, see the comments
# near the end of this file.
ibcs2|Intel Binary Compatibility Standard prescriptions:\
:AL=\E[%dL:DC=\E[%dP:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\
:RA=\E[?7l:RI=\E[%dC:S1=\E=%p1%dg:SA=\E[?7h:SF=\E[%dS:\
:SR=\E[%dT:UP=\E[%dA:bt=\E[Z:ch=\E[%i%dG:cl=\Ec:\
:cm=\E[%i%d;%dH:ct=\E[g:cv=\E[%i%dd:ec=\E[%dX:ei=:im=:\
:rc=\E7:sc=\E7:st=\EH:
#### ANSI/ECMA-48 terminals and terminal emulators
#
# See near the end of this file for details on ANSI conformance.
# Don't mess with these entries! Lots of other entries depend on them!
#
# This section lists entries in a least-capable to most-capable order.
# if you're in doubt about what `ANSI' matches yours, try them in that
# order and back off from the first that breaks.
ansi-mini|any ansi terminal with pessimistic assumptions:\
:am:bs:\
:co#80:it#8:li#24:\
:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:do=\E[B:ho=\E[H:\
:le=\E[D:nd=\E[C:ta=^I:up=\E[A:
# ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL
#
# The following is an entry for the full ANSI 3.64 (1977). It lacks
# padding, but most terminals using the standard are "fast" enough
# not to require any -- even at 9600 bps. If you encounter problems,
# try including the padding specifications.
#
# Note: the :as: and :ae: specifications are not implemented here, for
# the available termcap documentation does not make clear WHICH alternate
# character set to specify. ANSI 3.64 seems to make allowances for several.
# Please make the appropriate adjustments to fit your needs -- that is
# if you will be using alternate character sets.
#
# There are very few terminals running the full ANSI 3.64 standard,
# so I could only test this entry on one verified terminal (Visual 102).
# I would appreciate the results on other terminals sent to me.
#
# Please report comments, changes, and problems to:
#
# U.S. MAIL: Hugh Hansard
# Box: 22830
# Emory University
# Atlanta, GA. 30322.
#
# USENET {akgua,msdc,sb1,sb6,gatech}!emory!mlhhh.
#
ansi77|ansi 3.64 standard 1977 version:\
:am:bs:mi:\
:co#80:it#8:li#24:\
:al=5*\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=5*\E[M:\
:do=\E[B:ei=\E[4l:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOR:k4=\EOS:\
:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
:nd=\E[C:nw=^M\ED:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:\
:ue=\E[m:up=\E[A:us=\E[4m:
# Procomm and some other ANSI emulations don't recognize all of the ANSI-
# standard capabilities. This entry deletes :UP:, :RI:, :DO:, :LE:, and
# <vpa>/<hpa> capabilities, forcing curses to use repetitions of :up:,
# :nd:, :do: and :le:. Also deleted :IC: and :ic:, as QModem up to
# 5.03 doesn't recognize these. Finally, we delete :rp: and :sr:, which seem
# to confuse many emulators. On the other hand, we can count on these programs
# doing :ae:/:as:/:sa:. Older versions of this entry featured
# <invis=\E[9m>, but <invis=\E[8m> now seems to be more common under
# ANSI.SYS influence.
# From: Eric S. Raymond <esr@snark.thyrsus.com> Oct 30 1995
pcansi-m|pcansi-mono|ibm-pc terminal programs claiming to be ansi (mono mode):\
:am:bs:mi:ms:\
:co#80:it#8:li#24:\
:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
:cm=\E[%i%d;%dH:cr=^M:ct=\E[2g:dc=\E[P:dl=\E[M:do=\E[B:\
:ho=\E[H:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
:le=\E[D:nd=\E[C:sf=^J:st=\EH:ta=^I:up=\E[A:\
:tc=klone+sgr-dumb:
pcansi-25-m|pcansi25m|ibm-pc terminal programs with 25 lines (mono mode):\
:li#25:tc=pcansi-m:
pcansi-33-m|pcansi33m|ibm-pc terminal programs with 33 lines (mono mode):\
:li#33:tc=pcansi-m:
pcansi-43-m|ansi43m|ibm-pc terminal programs with 43 lines (mono mode):\
:li#43:tc=pcansi-m:
# The color versions. All PC emulators do color...
pcansi|ibm-pc terminal programs claiming to be ansi:\
:tc=klone+color:tc=pcansi-m:
pcansi-25|pcansi25|ibm-pc terminal programs with 25 lines:\
:li#25:tc=pcansi:
pcansi-33|pcansi33|ibm-pc terminal programs with 33 lines:\
:li#33:tc=pcansi:
pcansi-43|pcansi43|ibm-pc terminal programs with 43 lines:\
:li#43:tc=pcansi:
# ansi-m -- full ANSI X3.64 with ANSI.SYS-compatible attributes, no color.
# If you want pound signs rather than dollars, replace `B' with `A'
# in the <s0ds>, <s1ds>, <s2ds>, and <s3ds> capabilities.
# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995
ansi-m|ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes:\
:5i:\
:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
:cb=\E[1K:ch=\E[%i%dG:ct=\E[2g:cv=\E[%i%dd:ec=\E[%dX:ei=:\
:im=:kB=\E[Z:kI=\E[L:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:\
:nw=\r\E[S:pf=\E[4i:po=\E[5i:..rp=%p1%c\E[%p2%{1}%-%db:\
:s0=\E(B:s1=\E)B:s2=\E*B:s3=\E+B:ta=\E[I:\
:tc=pcansi-m:
# ansi -- this terminfo expresses the largest subset of X3.64 that will fit in
# standard terminfo. Assumes ANSI.SYS-compatible attributes and color.
# From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 6 1995
ansi|ansi/pc-term compatible with color:\
:u6=\E[%i%d;%dR:u7=\E[6n:..u8=\E[?%[;0123456789]c:\
:u9=\E[c:\
:tc=ecma+color:tc=klone+sgr:tc=ansi-m:
#### Linux consoles
#
# This entry is good for the 1.2.13 or later version of the Linux console.
#
# ***************************************************************************
# * *
# * WARNING: *
# * Linuxes come with a default keyboard mapping kcbt=^I. This entry, in *
# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab *
# * character. Here are the keymap replacement lines that will set this up: *
# * *
# keycode 15 = Tab Tab
# alt keycode 15 = Meta_Tab
# shift keycode 15 = F26
# string F26 ="\033[Z"
# * *
# * This has to use a key slot which is unfortunate (any unused one will *
# * do, F26 is the higher-numbered one). The change ought to be built *
# * into the kernel tables. *
# * *
# ***************************************************************************
#
# The 1.3.x kernels add color-change capabilities; if yours doesn't have this
# and it matters, turn off <ccc>. The %02x escape used to implement this is
# not back-portable to SV curses and not supported in ncurses versions before
# 1.9.9. All linux kernels since 1.2.13 (at least) set the screen size
# themselves; this entry assumes that capability.
#
# (untranslatable capabilities removed to fit entry within 1023 bytes)
# (sgr removed to fit entry within 1023 bytes)
# (terminfo-only capabilities suppressed to fit entry within 1023 bytes)
linux|linux console:\
:am:eo:mi:ms:xn:xo:\
:it#8:\
:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:K2=\E[G:al=\E[L:\
:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ec=\E[%dX:\
:ei=\E[4l:ho=\E[H:ic=\E[@:im=\E[4h:k1=\E[[A:k2=\E[[B:\
:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
:k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:\
:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mh=\E[2m:\
:mr=\E[7m:nd=\E[C:nw=^M^J:rc=\E8:sc=\E7:se=\E[27m:sf=^J:\
:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\
:vb=200\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
:tc=klone+sgr:tc=ecma+color:
linux-m|Linux console no color:\
:Co@:pa@:\
:AB@:AF@:Sb@:Sf@:tc=linux:
linux-c-nc|linux console 1.3.x hack for ncurses only:\
:cc:\
:..Ic=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x:\
:oc=\E]R:\
:tc=linux:
# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996
linux-c|linux console 1.3.6+ with private palette for each virtual console:\
:cc:\
:Co#8:pa#64:\
:..Ic=\E]P%?%p1%{9}%>%t%p1%{10}%-%p'a'%+%c%e%p1%d%p2%{255}%&%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%p3%{255}%&%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%p4%{255}%&%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'A'%+%c%e%gx%d%;:\
:oc=\E]R:\
:tc=linux:
# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
linux-nic|linux with ich/ich1 suppressed for non-curses programs:\
:IC@:ei=:ic@:im=:\
:tc=linux:
# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts.
# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997.
linux-koi8|linux with koi8 alternate character set:\
:ac=+\020\054\021-\030.^Y0\215`\004a\221f\234g\237h\220i\276j\205k\203l\202m\204n\212o~p\0q\0r\0s_t\206u\207v\211w\210x\201y\230z\231{\267|\274~\224:tc=linux:\
:tc=klone+koi8acs:
# Another entry for KOI8-r with Qing Long's acsc.
# (which one better complies with the standard?)
linux-koi8r|linux with koi8-r alternate character set:\
:tc=linux:tc=klone+koi8acs:
#### NetBSD consoles
#
# pcvt termcap database entries (corresponding to release 3.31)
# Author's last edit-date: [Fri Sep 15 20:29:10 1995]
#
# (For the terminfo master file, I translated these into terminfo syntax.
# Then I dropped all the pseudo-HP entries. we don't want and can't use
# the :Xs: flag. Then I split :is: into a size-independent :i1: and a
# size-dependent :is:. Finally, I added <rmam>/<smam> -- esr)
# NOTE: :ic: has been taken out of this entry. for reference, it should
# be <ich1=\E[@>. For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below.
# (esr: added :vi: and :ve: to resolve NetBSD Problem Report #4583)
pcvtXX|pcvt vt200 emulator (DEC VT220):\
:am:km:mi:ms:xn:\
:it#8:vt#3:\
:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:SF=\E[%dS:\
:SR=\E[%dT:UP=\E[%dA:\
:ac=++\054\054--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~:\
:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
:i1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:im=\E[4h:\
:k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:\
:k6=\E[23~:k7=\E[24~:k8=\E[25~:kD=\E[3~:kH=\E[4~:kI=\E[2~:\
:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:\
:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:\
:r1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
:rf=/usr/share/tabset/vt100:sc=\E7:se=\E[27m:sf=\ED:\
:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:us=\E[4m:\
:ve=\E[?25h:vi=\E[?25l:
# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
# 50 lines entries; 80 columns
pcvt25|dec vt220 emulation with 25 lines:\
:co#80:li#25:\
:is=\E[1;25r\E[25;1H:tc=pcvtXX:
pcvt28|dec vt220 emulation with 28 lines:\
:co#80:li#28:\
:is=\E[1;28r\E[28;1H:tc=pcvtXX:
pcvt35|dec vt220 emulation with 35 lines:\
:co#80:li#35:\
:is=\E[1;35r\E[35;1H:tc=pcvtXX:
pcvt40|dec vt220 emulation with 40 lines:\
:co#80:li#40:\
:is=\E[1;40r\E[40;1H:tc=pcvtXX:
pcvt43|dec vt220 emulation with 43 lines:\
:co#80:li#43:\
:is=\E[1;43r\E[43;1H:tc=pcvtXX:
pcvt50|dec vt220 emulation with 50 lines:\
:co#80:li#50:\
:is=\E[1;50r\E[50;1H:tc=pcvtXX:
# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor)
# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and
# 50 lines entries; 132 columns
pcvt25w|dec vt220 emulation with 25 lines and 132 cols:\
:co#132:li#25:\
:is=\E[1;25r\E[25;1H:tc=pcvtXX:
pcvt28w|dec vt220 emulation with 28 lines and 132 cols:\
:co#132:li#28:\
:is=\E[1;28r\E[28;1H:tc=pcvtXX:
pcvt35w|dec vt220 emulation with 35 lines and 132 cols:\
:co#132:li#35:\
:is=\E[1;35r\E[35;1H:tc=pcvtXX:
pcvt40w|dec vt220 emulation with 40 lines and 132 cols:\
:co#132:li#40:\
:is=\E[1;40r\E[40;1H:tc=pcvtXX:
pcvt43w|dec vt220 emulation with 43 lines and 132 cols:\
:co#132:li#43:\
:is=\E[1;43r\E[43;1H:tc=pcvtXX:
pcvt50w|dec vt220 emulation with 50 lines and 132 cols:\
:co#132:li#50:\
:is=\E[1;50r\E[50;1H:tc=pcvtXX:
# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine
# manufactured by Sharp for the Japenese market.
# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996
x68k|x68k-ite|NetBSD/x68k ITE:\
:co#96:li#32:\
:%1=\E[28~:kC=\E[9~:tc=vt220:
#### FreeBSD console entries
#
# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996
# Andrey Chernov maintains the FreeBSD termcap distributions.
#
# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade
# or comment out the :cb: capability in the console entry.
#
# Alexander Lukyanov reports:
# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there.
# Now el1 clears not only to the line beginning, but also a large chunk
# of previous line. But there is another bug - ech does not work at all.
#
# for syscons
# common entry without semigraphics
# Bug: The <op> capability resets attributes.
# Bug? The ech and el1 attributes appear to move the cursor in some cases; for
# instance el1 does if the cursor is moved to the right margin first. Removed
# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K)
#
# Setting colors turns off reverse; we cannot guarantee order, so use ncv.
# Note that this disables standout with color.
cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode):\
:NP:am:bw:eo:ms:ut:\
:Co#8:NC#5:co#80:it#8:li#25:pa#64:\
:@7=\E[F:AB=\E[4%p1%dm:AF=\E[3%p1%dm:AL=\E[%dL:DC=\E[%dP:\
:DL=\E[%dM:DO=\E[%dB:F1=\E[W:F2=\E[X:IC=\E[%d@:K2=\E[E:\
:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%d`:\
:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cv=\E[%i%dd:dc=\E[P:\
:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[M:k2=\E[N:\
:k3=\E[O:k4=\E[P:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:\
:k;=\E[V:kB=\E[Z:kD=\177:kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:\
:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:\
:md=\E[1m:me=\E[m:mh=\E[30;1m:mr=\E[7m:nd=\E[C:nw=\E[E:\
:op=\E[x:r1=\E[x\E[m\Ec:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\
:ta=^I:up=\E[A:
cons25|ansis|ansi80x25|freebsd console (25-line ansi mode):\
:ac=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371:\
:tc=cons25w:
cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode):\
:Co@:pa@:\
:AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25:
cons30|ansi80x30|freebsd console (30-line ansi mode):\
:li#30:tc=cons25:
cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode):\
:li#30:tc=cons25-m:
cons43|ansi80x43|freebsd console (43-line ansi mode):\
:li#43:tc=cons25:
cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode):\
:li#43:tc=cons25-m:
cons50|ansil|ansi80x50|freebsd console (50-line ansi mode):\
:li#50:tc=cons25:
cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode):\
:li#50:tc=cons25-m:
cons60|ansi80x60|freebsd console (60-line ansi mode):\
:li#60:tc=cons25:
cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode):\
:li#60:tc=cons25-m:
cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic:\
:ac=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225:\
:tc=cons25w:
cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono):\
:Co@:pa@:\
:AB@:AF@:op@:ue=\E[m:us=\E[4m:tc=cons25r:
cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines):\
:li#50:tc=cons25r:
cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono):\
:li#50:tc=cons25r-m:
cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines):\
:li#60:tc=cons25r:
cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono):\
:li#60:tc=cons25r-m:
# ISO 8859-1 FreeBSD console
cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars:\
:ac=+\253\054\273-\030.\031`\201a\202f\207g\210i\247j\213k\214l\215m\216n\217o\220p\221q\222r\223s\224t\225u\226v\227w\230x\231y\232z\233~\237:\
:tc=cons25w:
cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono):\
:Co@:pa@:\
:AB@:AF@:md@:mh@:op@:ue=\E[m:us=\E[4m:tc=cons25l1:
cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines):\
:li#50:tc=cons25l1:
cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono):\
:li#50:tc=cons25l1-m:
cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines):\
:li#60:tc=cons25l1:
cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono):\
:li#60:tc=cons25l1-m:
#### 386BSD and BSD/OS Consoles
#
# This was the original 386BSD console entry (I think).
# Some places it's named oldpc3|oldibmpc3.
# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu>
origpc3|origibmpc3|IBM PC 386BSD Console:\
:am:bs:bw:eo:xo:\
:co#80:li#25:\
:ac=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263:\
:cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:ho=\E[H:\
:kd=\E[B:kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[7m:\
:me=\E[m\E[1;0x\E[2;7x:nd=\E[C:se=\E[1;0x\E[2;7x:\
:sf=\E[S:so=\E[1;7x\E[2;0x:sr=\E[T:ue=\E[1;0x\E[2;7x:\
:up=\E[A:us=\E[1;7x\E[2;0x:
# description of BSD/386 console emulator in version 1.0 (supplied by BSDI)
oldpc3|oldibmpc3|old IBM PC BSD/386 Console:\
:bs:km:\
:li#25:\
:al=\E[L:bl=^G:cr=^M:dl=\E[M:do=^J:kH=\E[F:kI=\E[L:kN=\E[G:\
:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
:md=\E[=15F:me=\E[=R:mh=\E[=8F:nw=^M^J:sf=^J:ta=^I:
# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1
# Note, the emulator supports many of the additional console features
# listed in the iBCS2 (e.g. character-set selection) though not all
# are described here. This entry really ought to be upgraded.
# Also note, the console will also work with fewer lines after doing
# "stty rows NN", e.g. to use 24 lines.
# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996)
# Bug: The <op> capability resets attributes.
bsdos-pc|BSD/OS console:\
:am:bs:bw:eo:km:xo:\
:Co#8:co#80:it#8:li#25:pa#64:\
:AB=\E[4%p1%dm:AF=\E[3%p1%dm:AL=\E[%dL:DL=\E[%dM:\
:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:\
:cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%d;%dH:cr=^M:dl=\E[M:do=^J:\
:ho=\E[H:kH=\E[F:kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:\
:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\
:me=\E[0m:mh=\E[=8F:mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[x:\
:rc=\E8:sc=\E7:se=\E[0m:sf=^J:so=\E[7m:ta=^I:up=\E[A:
bsdos-pc-bold|IBM PC BSD/386 Console with bold instead of underline:\
:ue=\E[0m:us=\E[1m:\
:tc=bsdos-pc:
# If you are BSDI, you want the following entries, for the moment.
# In release 2.0 they will probably phase out the pc3 and ibmpc3 names
pc3|IBM PC BSD/386 Console:\
:tc=bsdos-pc:
ibmpc3|pc3-bold|IBM PC BSD/386 Console with bold instead of underline:\
:us=\E[1m:\
:tc=bsdos-pc-bold:
#### DEC VT100 and compatibles
#
# DEC terminals from the vt100 forward are collected here. Older DEC terminals
# and micro consoles can be found in the `obsolete' section. More details on
# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be
# found near the end of this file.
#
# Except where noted, these entries are DEC's official terminfos.
# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support
# Engineering for more information. Updated terminfos and termcaps
# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
#
# In October 1995 DEC sold its terminals business, including the VT and Dorio
# line and trademark, to SunRiver Data Systems. SunRiver has since changed
# its name to Boundless Technologies; see http://www.boundless.com.
#
# NOTE: Any VT100 emulation, whether in hardware or software, almost
# certainly includes what DEC called the `Level 1 editing extension' codes;
# only the very oldest VT100s lacked these and there probably aren't any of
# those left alive. To capture these, use one of the VT102 entries.
#
# Note that the :xn: glitch in vt100 is not quite the same as on the Concept,
# since the cursor is left in a different position while in the
# weird state (concept at beginning of next line, vt100 at end
# of this line) so all versions of vi before 3.7 don't handle
# :xn: right on vt100. The correct way to handle :xn: is when
# you output the char in column 80, immediately output CR LF
# and then assume you are in column 1 of the next line. If :xn:
# is on, am should be on too.
#
# I assume you have smooth scroll off or are at a slow enough baud
# rate that it doesn't matter (1200? or less). Also this assumes
# that you set auto-nl to "on", if you set it off use vt100-nam
# below.
#
# The padding requirements listed here are guesses. It is strongly
# recommended that xon/xoff be enabled, as this is assumed here.
#
# The vt100 uses <rs2> and <rf> rather than :is:/:ct:/:st: because the
# tab settings are in non-volatile memory and don't need to be
# reset upon login. Also setting the number of columns glitches
# the screen annoyingly. You can type "reset" to get them set.
#
# Here's a diagram of the VT100 keypad keys with their bindings.
# The top line is the name of the key (some DEC keyboards have the keys
# labelled somewhat differently, like GOLD instead of PF1, but this is
# the most "official" name). The second line is the escape sequence it
# generates in Application Keypad mode (where "$" means the ESC
# character). The third line contains two items, first the mapping of
# the key in terminfo, and then in termcap.
# _______________________________________
# | PF1 | PF2 | PF3 | PF4 |
# | $OP | $OQ | $OR | $OS |
# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
# | 7 8 9 - |
# | $Ow | $Ox | $Oy | $Om |
# |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________|
# | 4 | 5 | 6 | , |
# | $Ot | $Ou | $Ov | $Ol |
# |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_|
# | 1 | 2 | 3 | |
# | $Oq | $Or | $Os | enter |
# |_ka1__K1_|_kb2__K2_|_ka3__K3_| $OM |
# | 0 | . | |
# | $Op | $On | |
# |___kc1_______K4____|_kc3__K5_|_kent_@8_|
#
# And here, for those of you with orphaned VT100s lacking documentation, is
# a description of the soft switches invoked when you do `Set Up'.
#
# Scroll 0-Jump Shifted 3 0-#
# | 1-Smooth | 1-British pound sign
# | Autorepeat 0-Off | Wrap Around 0-Off
# | | 1-On | | 1-On
# | | Screen 0-Dark Bkg | | New Line 0-Off
# | | | 1-Light Bkg | | | 1-On
# | | | Cursor 0-Underline | | | Interlace 0-Off
# | | | | 1-Block | | | | 1-On
# | | | | | | | |
# 1 1 0 1 1 1 1 1 0 1 0 0 0 0 1 0 <--Standard Settings
# | | | | | | | |
# | | | Auto XON/XOFF 0-Off | | | Power 0-60 Hz
# | | | 1-On | | | 1-50 Hz
# | | Ansi/VT52 0-VT52 | | Bits Per Char. 0-7 Bits
# | | 1-ANSI | | 1-8 Bits
# | Keyclick 0-Off | Parity 0-Off
# | 1-On | 1-On
# Margin Bell 0-Off Parity Sense 0-Odd
# 1-On 1-Even
#
# The following SET-UP modes are assumed for normal operation:
# ANSI_MODE AUTO_XON/XOFF_ON NEWLINE_OFF 80_COLUMNS
# WRAP_AROUND_ON JUMP_SCROLL_OFF
# Other SET-UP modes may be set for operator convenience or communication
# requirements; I recommend
# AUTOREPEAT_ON BLOCK_CURSOR MARGIN_BELL_OFF SHIFTED_3_#
# Unless you have a graphics add-on such as Digital Engineering's VT640
# (and even then, whenever it can be arranged!) you should set
# INTERLACE_OFF
#
# (vt100: I added <rmam>/<smam> based on the init string, also :bs:. -- esr)
vt100|vt100-am|dec vt100 (w/advanced video):\
:am:bs:ms:xn:xo:\
:co#80:it#8:li#24:vt#3:\
:@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\
:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
:ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=^J:\
:eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\
:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:k9=\EOw:k;=\EOx:\
:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:\
:nd=\E[C:r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
:..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\
:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\
:up=\E[A:us=\E[4m:
vt100nam|vt100-nam|vt100 no automargins:\
:am@:xn@:tc=vt100-am:
vt100-vb|dec vt100 (w/advanced video) & no beep:\
:bl@:vb=\E[?5h\E[?5l:tc=vt100:
# Ordinary vt100 in 132 column ("wide") mode.
vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video):\
:co#132:li#24:\
:r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-am:
vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin):\
:co#132:li#14:vt@:\
:r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-nam:
# vt100 with no advanced video.
vt100-nav|vt100 without advanced video option:\
:sg#1:\
:mb@:md@:me@:mr@:sa@:se=\E[m:so=\E[7m:ue@:us@:tc=vt100:
vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option):\
:co#132:li#14:tc=vt100-nav:
# vt100 with one of the 24 lines used as a status line.
# We put the status line on the top.
vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline:\
:es:hs:\
:li#23:\
:cl=\E[2;1H\E[J:cm=\E[%i%+^A;%dH:cs=\E[%i%i%d;%dr:\
:ds=\E7\E[1;24r\E8:fs=\E8:ho=\E[2;1H:is=\E7\E[2;24r\E8:\
:ts=\E7\E[1;%p1%dH\E[1K:\
:tc=vt100-am:
# Status line at bottom.
# Clearing the screen will clobber status line.
vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline:\
:es:hs:\
:li#23:\
:ds=\E7\E[1;24r\E8:fs=\E8:is=\E[1;23r\E[23;1H:\
:ts=\E7\E[24;%p1%dH\E[1K:\
:tc=vt100-am:
# Most of the `vt100' emulators out there actually emulate a vt102
# This entry (or vt102-nsgr) is probably the right thing to use for
# these.
vt102|dec vt102:\
:mi:\
:al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4l:im=\E[4h:tc=vt100:
vt102-w|dec vt102 in wide mode:\
:co#132:\
:r3=\E[?3h:tc=vt102:
# Many brain-dead PC comm programs that pretend to be `vt100-compatible'
# fail to interpret the ^O and ^N escapes properly. Symptom: the :me:
# string in the canonical vt100 entry above leaves the screen littered
# with little snowflake or star characters (IBM PC ROM character \017 = ^O)
# after highlight turnoffs. This entry should fix that, and even leave
# ACS support working, at the cost of making multiple-highlight changes
# slightly more expensive.
# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995
vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes):\
:me=\E[m:sa@:\
:tc=vt102:
# VT125 Graphics CRT. Clear screen also erases graphics
vt125|vt125 graphics terminal:\
:cl=\E[H\E[2J\EPpS(E)\E\:tc=vt100:
# This isn't a DEC entry, it came from University of Wisconsin.
# (vt131: I added <rmam>/<smam> based on the init string, also :bs: -- esr)
vt131|dec vt131:\
:am:bs:xn:\
:co#80:it#8:li#24:vt#3:\
:RA=\E[?7h:SA=\E[?7h:bl=^G:cd=50\E[J:ce=3\E[K:\
:cl=50\E[;H\E[2J:cm=5\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
:do=^J:ho=\E[H:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:\
:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\
:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=2\E[5m:md=2\E[1m:\
:me=2\E[m:mr=2\E[7m:nd=2\E[C:nw=^M^J:\
:r1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:sc=\E7:\
:se=2\E[m:so=2\E[7m:sr=5\EM:ta=^I:ue=2\E[m:up=2\E[A:\
:us=2\E[4m:
# vt132 - like vt100 but slower and has ins/del line and such.
# I'm told that :im:/:ei: are backwards in the terminal from the
# manual and from the ANSI standard, this describes the actual
# terminal. I've never actually used a vt132 myself, so this
# is untested.
#
vt132|DEC vt132:\
:xn:\
:al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4h:im=\E[4l:ip=:sf=\n:tc=vt100:
# vt220:
# This vt220 description maps F5--F9 to the second block of function keys
# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict
# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping.
# PF1--PF4 are used as F1--F4.
#
vt220|vt200|DEC VT220 in vt100 emulation mode:\
:am:bs:mi:pt:xn:xo:\
:co#80:li#24:vt#3:\
:@7=\E[4~:RA=\E[?7l:SA=\E[?7h:\
:ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
:ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
:if=/usr/share/tabset/vt100:im=\E[4h:\
:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
:k5=\E[17~:k6=\E[18~:k7=\E[19~:k8=\E[20~:k9=\E[21~:\
:k;=\E[29~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:\
:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:\
:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nl=^J:\