terminfo revision 5307cd1a
15307cd1aSmrg# $XTermId: terminfo,v 1.206 2023/01/08 10:51:12 tom Exp $
2d522f475Smrg#
3d522f475Smrg# Updates/notes/new entries (e.g., xterm-8bit, xterm-16color, xterm-256color)
4d522f475Smrg# - Thomas E. Dickey
5d522f475Smrg#
6d522f475Smrg#------------------------------------------------------------------------------
75307cd1aSmrg# Copyright 1996-2022,2023 by Thomas E. Dickey
8d522f475Smrg#
9d522f475Smrg#                         All Rights Reserved
10d522f475Smrg#
11d522f475Smrg# Permission is hereby granted, free of charge, to any person obtaining a
12d522f475Smrg# copy of this software and associated documentation files (the
13d522f475Smrg# "Software"), to deal in the Software without restriction, including
14d522f475Smrg# without limitation the rights to use, copy, modify, merge, publish,
15d522f475Smrg# distribute, sublicense, and/or sell copies of the Software, and to
16d522f475Smrg# permit persons to whom the Software is furnished to do so, subject to
17d522f475Smrg# the following conditions:
18d522f475Smrg#
19d522f475Smrg# The above copyright notice and this permission notice shall be included
20d522f475Smrg# in all copies or substantial portions of the Software.
21d522f475Smrg#
22d522f475Smrg# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23d522f475Smrg# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24d522f475Smrg# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
25d522f475Smrg# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
26d522f475Smrg# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
27d522f475Smrg# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
28d522f475Smrg# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29d522f475Smrg#
30d522f475Smrg# Except as contained in this notice, the name(s) of the above copyright
31d522f475Smrg# holders shall not be used in advertising or otherwise to promote the
32d522f475Smrg# sale, use or other dealings in this Software without prior written
33d522f475Smrg# authorization.
34d522f475Smrg#------------------------------------------------------------------------------
35f2e35a3aSmrg# format (ncurses 6.1): tic -I -W -1 -f -x terminfo
36f2e35a3aSmrg#------------------------------------------------------------------------------
37d522f475Smrg#
38d522f475Smrg# Special Capabilities:
39d522f475Smrg# --------------------
40d522f475Smrg# ich has a corresponding capability that inserts a single blank.  We could
41d522f475Smrg#	have used ich1=\E[@, which works with ncurses, but that is not standard
42d522f475Smrg#	behavior.  If it is set, then SVr4 vi (e.g., Solaris 2.6) emits both
43d522f475Smrg#	smir/rmir and ich1.
44d522f475Smrg# meml locks memory above the cursor; memu unlocks (ala HP terminals).  This
45d522f475Smrg#	is not recognized by some older (e.g., SVr3) tic programs, but none
46d522f475Smrg#	do more than warn about it.  Ignore the warning.
47d522f475Smrg# smcup clears memory before switching to the alternate screen.  The older
48d522f475Smrg#	(deprecated) \E[?47h did not do this, requiring applications to
49d522f475Smrg#	embed a \E[2J in the rmcup string.  However, that behavior cannot
50d522f475Smrg#	be disabled via titeInhibit, making that resource not function as
51d522f475Smrg#	intended on systems with terminfo.
52d522f475Smrg# rs2/is2 are shorter with XFree86 xterm because it supports DECSTR.  We
53d522f475Smrg#	use the shorter sequence for compatibility with the termcap, which
54d522f475Smrg#	is trimmed to keep it shorter than 1023 characters.  It (escape \E[!p)
55d522f475Smrg#	replaces these in the conventional vt100 reset-string:
56d522f475Smrg#		\E7	- save cursor (fixes origin-mode side-effect)
57d522f475Smrg#		\E[r	- reset scrolling margins
58d522f475Smrg#		\E[m	- reset SGR (including color)
59d522f475Smrg#		\E[?7h	- reset wraparound mode (DECAWM)
60d522f475Smrg#		\E[?1l	- reset application cursor keys (DECCKM)
61d522f475Smrg#		\E[?6l	- reset origin mode (DECOM)
62d522f475Smrg#		\E8	- restore cursor
63d522f475Smrg#	DECSTR is recognized by XFree86 xterm even in vt52 mode.
64d522f475Smrg#
65d522f475Smrg# Editing Keypad:
66d522f475Smrg# --------------
67d522f475Smrg# XFree86 xterm emulates vt220 if the decTerminalID resource is set to 200 or
68d522f475Smrg# higher.  Otherwise it emulates a vt100 or vt52 depending on the value of the
69d522f475Smrg# resource.  When emulating a vt220, we support the editing keypad.  Sun and PC
70d522f475Smrg# keyboards have an editing keypad which is similar to the vt220:
71d522f475Smrg#
72d522f475Smrg#	VT220 editing keypad
73d522f475Smrg#	----------------------------
74d522f475Smrg#	Find      Insert      Remove
75d522f475Smrg#	Select    Prev        Next
76d522f475Smrg#	----------------------------
77d522f475Smrg#
78d522f475Smrg#	Sun/PC editing keypad
79d522f475Smrg#	----------------------------
80d522f475Smrg#	Insert    Home        PageUp
81d522f475Smrg#	Delete    End         PageDn
82d522f475Smrg#	----------------------------
83d522f475Smrg#
84d522f475Smrg# If the sunKeyboard resource is true, we map it this way (adjusting the values
85d522f475Smrg# of Home, End and Delete):
86d522f475Smrg#	VT220		      Sun/PC
87d522f475Smrg#	----------------------------
88d522f475Smrg#	Find		      Home
89d522f475Smrg#	Select		      End
90d522f475Smrg#	Insert		      Insert
91d522f475Smrg#	Remove		      Delete
92d522f475Smrg#	Prev		      PageUp
93d522f475Smrg#	Next		      PageDn
94d522f475Smrg#	----------------------------
95d522f475Smrg#
96d522f475Smrg# Note that all of the keys on the editing keypad transmit escape sequences.  A
97d522f475Smrg# vt220 does this only when in vt220 mode; when emulating a vt100 the editing
98d522f475Smrg# keypad is inactive.
99d522f475Smrg#
100d522f475Smrg# Alternative keycodes:
101d522f475Smrg# --------------------
102d522f475Smrg# Several of the function keys have alternative names, depending on the type of
103d522f475Smrg# host which your xterm is connected to.  DEC (i.e., the VMS system) uses F15
104d522f475Smrg# as the HELP key, F16 as the DO key.  Unix applications generally do not do
105d522f475Smrg# this.  Curses applications in particular, assign a unique keycode to each
106d522f475Smrg# capability string.  These terminal descriptions do not have conflicting
107d522f475Smrg# definitions, to ensure that Unix curses applications use a consistent set of
108d522f475Smrg# keycodes.  To get a VMS-bias, make these substitutions:
109d522f475Smrg#	1. change khome to kfnd
110d522f475Smrg#	2. change kend to kslt
111d522f475Smrg# The original xterm-r6 entry does in fact have a VMS bias.
112d522f475Smrg#
113d522f475Smrg# Some legacy applications using the termcap emulation may expect kll where
114d522f475Smrg# we have specified kend.
115d522f475Smrg#
116d522f475Smrg# Function keys with modifiers (Sun/PC):
117d522f475Smrg# -------------------------------------
118d522f475Smrg#	Shift-Fx          - kf{12+x}
119d522f475Smrg#	Control-Fx        - kf{24+x}
120d522f475Smrg#	Shift-Control-Fx  - kf{36+x}
121d522f475Smrg#
122d522f475Smrg# The terminfo defines some special keys which are documented as "shifted",
123d522f475Smrg# e.g., kDC is shifted-delete-character.
124d522f475Smrg#
125d522f475Smrg# Note however, that even though the terminfo says a key might be sent, there
126d522f475Smrg# may be conflicts which prevent this.  For example, it is common to use
127d522f475Smrg# shifted pageup and pagedown for window manager functions.  The default
128d522f475Smrg# translation for xterm since X11R4 has overridden shifted Insert, Select,
129d522f475Smrg# PageUp and PageDown, which correspond to terminfo kIC, kEND, kPRV and kNXT
130d522f475Smrg# respectively.
131d522f475Smrg#
132d522f475Smrgxterm-new|modern xterm terminal emulator,
133d522f475Smrg	npc,
134d522f475Smrg	indn=\E[%p1%dS,
135d522f475Smrg	kcbt=\E[Z,
136d522f475Smrg	kent=\EOM,
137ad37e533Smrg	nel=\EE,
1384419d26bSmrg	use=dec+sl,
139ad37e533Smrg	use=ecma+index,
140f2e35a3aSmrg	use=xterm+keypad,
141f2e35a3aSmrg	use=vt420+lrmm,
142f2e35a3aSmrg	use=xterm+sm+1006,
143f2e35a3aSmrg	use=ansi+rep,
144913cc679Smrg	use=ecma+strikeout,
145d522f475Smrg	use=xterm+pcfkeys,
146e39b573cSmrg	use=xterm+tmux,
147ad37e533Smrg	use=xterm+nofkeys,
1485307cd1aSmrg	use=bracketed+paste,
1495307cd1aSmrg	use=report+version,
1505307cd1aSmrg	use=xterm+focus,
151f2e35a3aSmrg
152f2e35a3aSmrg# Left/right margins are supported in xterm since patch #279 (2012/05/10)
153f2e35a3aSmrgvt420+lrmm|VT420 left/right margins,
1544419d26bSmrg	mgc=\E[?69l,
1554419d26bSmrg	smglp=\E[?69h\E[%i%p1%ds,
156f2e35a3aSmrg	smglr=\E[?69h\E[%i%p1%d;%p2%ds,
157a5ae21e4Smrg	smgrp=\E[?69h\E[%i;%p1%ds,
158f2e35a3aSmrg
159f2e35a3aSmrg# These "ansi+XXX" blocks were added in ncurses 5.0:
160f2e35a3aSmrgansi+rep,
161f2e35a3aSmrg	rep=%p1%c\E[%p2%{1}%-%db,
162f2e35a3aSmrg
163f2e35a3aSmrgansi+enq|ncurses extension for ANSI ENQ,
164f2e35a3aSmrg	u6=\E[%i%d;%dR,
165f2e35a3aSmrg	u7=\E[6n,
166f2e35a3aSmrg	u8=\E[?%[;0123456789]c,
167f2e35a3aSmrg	u9=\E[c,
168f2e35a3aSmrg
169d522f475Smrg# Encode modifiers using parameters (see "Xterm Control Sequences" ctlseqs.ms).
170d522f475Smrg# Note that this is unrelated to PCTERM.
171d522f475Smrg#
172d522f475Smrg# Some names are extensions allowed by ncurses, e.g.,
173d522f475Smrg#	kDN, kDN5, kDN6, kLFT5, kLFT6, kRIT5, kRIT6, kUP, kUP5, kUP6
174d522f475Smrg#
175d522f475Smrg# The uppercase names are made up, since there are no standards that apply.
176d522f475Smrg# If they were limited to two characters, they could in principle be translated
177d522f475Smrg# to termcap.  However, termcap sizes are limited to 1023 bytes, so there is
178d522f475Smrg# little point in ensuring that extended key names can be translated to
179d522f475Smrg# termcap.  A terminfo file can be up to 4096 bytes; using all extended keys
180d522f475Smrg# that xterm can generate would in fact exceed that limit.
181d522f475Smrg#
182d522f475Smrg# The numbers correspond to the modifier parameters documented in Xterm
183d522f475Smrg# Control Sequences:
184d522f475Smrg#
185d522f475Smrg#	2	Shift
186d522f475Smrg#	3	Alt
187d522f475Smrg#	4	Shift + Alt
188d522f475Smrg#	5	Control
189d522f475Smrg#	6	Shift + Control
190d522f475Smrg#	7	Alt + Control
191d522f475Smrg#	8	Shift + Alt + Control
192d522f475Smrg#
193d522f475Smrg# X/Open Curses defines some shift combinations, which are also used here
194d522f475Smrg# where applicable.  Since it does define some shift combinations, no number
195d522f475Smrg# (2) is used for suffixing the made-up names.  Some combinations are not
196d522f475Smrg# useful, e.g., they may reboot your computer, or they may require too many
197d522f475Smrg# fingers.  I stopped at modifier 7, just to keep things simple -TD
198d522f475Smrg#
199d522f475Smrg# XTerm resources:
200d522f475Smrg# ---------------
201d522f475Smrg# The xterm+pcfn, xterm+pcf0, xterm+pcf1, xterm+pcf2 and xterm+pcf3 fragments
202d522f475Smrg# correspond to default resource settings for xterm on a 104-key PC keyboard
203d522f475Smrg# with 12 function-keys:
204d522f475Smrg#
205d522f475Smrg#	*sunKeyboard:false
206d522f475Smrg#	*oldXtermFKeys:false
207d522f475Smrg#	*modifyCursorKeys:2
208d522f475Smrg#	*modifyFunctionKeys:2
209d522f475Smrg#	*ctrlFKeys:10
210d522f475Smrg#
211d522f475Smrg# The key numbers are computed based on the modifiers:
212d522f475Smrg#
213d522f475Smrg#	kf1-kf12 are F1-F12
214d522f475Smrg#	kf13-kf24 are shift F1-F12
215d522f475Smrg#	kf25-kf36 are control F1-F12
216d522f475Smrg#	kf37-kf48 are control+shift F1-F12
217d522f475Smrg#	kf49-kf60 are alt F1-F12
218d522f475Smrg#	kf61-kf63 are shift-alt F1-F3
219d522f475Smrg#
220d522f475Smrg# Note that ncurses would allow definition of kf64 and beyond, if there were
221d522f475Smrg# an application that required it.
222d522f475Smrg#
223d522f475Smrgxterm+pcfkeys|fragment for PC-style keys,
224d522f475Smrg	use=xterm+app,
225d522f475Smrg	use=xterm+pcf2,
226d522f475Smrg	use=xterm+pce2,
227d522f475Smrg	use=xterm+pcc2,
228e39b573cSmrg
229e39b573cSmrg# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who
230e39b573cSmrg# asked for some of xterm's advanced features to be added to its terminfo
231e39b573cSmrg# entry.  It defines extended capabilities not found in standard terminfo or
232e39b573cSmrg# termcap.  These are useful in tmux, for instance, hence the name.
233e39b573cSmrg#
234e39b573cSmrg# One caveat in adding extended capabilities in ncurses is that if the names
235e39b573cSmrg# are longer than two characters, then they will not be visible through the
236e39b573cSmrg# termcap interface.
237e39b573cSmrg#
238e39b573cSmrg# Ms modifies the selection/clipboard.  Its parameters are
239e39b573cSmrg#	p1 = the storage unit (clipboard, selection or cut buffer)
240e39b573cSmrg#	p2 = the base64-encoded clipboard content.
241f2e35a3aSmrg#
242e39b573cSmrg# Ss is used to set the cursor style as described by the DECSCUSR
243e39b573cSmrg#	function to a block or underline.
244e39b573cSmrg# Se resets the cursor style to the terminal power-on default.
245f2e35a3aSmrg#
246e39b573cSmrg# Cs and Ce set and reset the cursor colour.
247e39b573cSmrgxterm+tmux|advanced xterm features used in tmux,
248e39b573cSmrg	Cr=\E]112\007,
249e39b573cSmrg	Cs=\E]12;%p1%s\007,
250913cc679Smrg	Ms=\E]52;%p1%s;%p2%s
251913cc679Smrg	   \007,
252913cc679Smrg	Se=\E[2\sq,
253913cc679Smrg	Ss=\E[%p1%d\sq,
254d522f475Smrg#
255d522f475Smrg# The ctrlFKeys resource is only relevant to the xterm+pcfn and xterm+pcfN
256d522f475Smrg# entries, since the modifyFunctionKeys resource overrides ctrlFKeys when it is
257d522f475Smrg# positive.  A different choice of ctrlFKeys would give a different set of
258d522f475Smrg# function-key strings.
259d522f475Smrgxterm+pcfn|fragment with modifyFunctionKeys:-1 and ctrlFKeys:10,
260d522f475Smrg	kf1=\EOP,
261d522f475Smrg	kf10=\E[21~,
262d522f475Smrg	kf11=\E[23~,
263d522f475Smrg	kf12=\E[24~,
264d522f475Smrg	kf13=\E[25~,
265d522f475Smrg	kf14=\E[26~,
266d522f475Smrg	kf15=\E[28~,
267d522f475Smrg	kf16=\E[29~,
268d522f475Smrg	kf17=\E[31~,
269d522f475Smrg	kf18=\E[32~,
270d522f475Smrg	kf19=\E[33~,
271d522f475Smrg	kf2=\EOQ,
272d522f475Smrg	kf20=\E[34~,
273d522f475Smrg	kf21=\E[42~,
274d522f475Smrg	kf22=\E[43~,
275d522f475Smrg	kf23=\E[44~,
276d522f475Smrg	kf24=\E[45~,
277d522f475Smrg	kf25=\E[46~,
278d522f475Smrg	kf26=\E[47~,
279d522f475Smrg	kf27=\E[48~,
280d522f475Smrg	kf28=\E[49~,
281d522f475Smrg	kf29=\E[50~,
282d522f475Smrg	kf3=\EOR,
283d522f475Smrg	kf30=\E[51~,
284d522f475Smrg	kf31=\E[52~,
285d522f475Smrg	kf32=\E[53~,
286d522f475Smrg	kf33=\E[54~,
287d522f475Smrg	kf34=\E[55~,
288d522f475Smrg	kf35=\E[56~,
289d522f475Smrg	kf36=\E[57~,
290d522f475Smrg	kf37=\E[58~,
291d522f475Smrg	kf38=\E[59~,
292d522f475Smrg	kf39=\E[60~,
293d522f475Smrg	kf4=\EOS,
294d522f475Smrg	kf40=\E[61~,
295d522f475Smrg	kf41=\E[62~,
296d522f475Smrg	kf42=\E[63~,
297d522f475Smrg	kf43=\E[64~,
298d522f475Smrg	kf44=\E[65~,
299d522f475Smrg	kf45=\E[66~,
300d522f475Smrg	kf46=\E[67~,
301d522f475Smrg	kf47=\E[68~,
302d522f475Smrg	kf48=\E[69~,
303d522f475Smrg	kf5=\E[15~,
304d522f475Smrg	kf6=\E[17~,
305d522f475Smrg	kf7=\E[18~,
306d522f475Smrg	kf8=\E[19~,
307d522f475Smrg	kf9=\E[20~,
308d522f475Smrg
309d522f475Smrg# Changing ctrlFKeys to 12 would let us number the keys using just shift- and
310d522f475Smrg# control- modifiers:
311d522f475Smrg#	kf1-kf12 are F1-F12
312d522f475Smrg#	kf13-kf24 are shift F1-F12
313d522f475Smrg#	kf25-kf36 are control F1-F12
314d522f475Smrg#	kf37-kf48 are control+shift F1-F12
315d522f475Smrgxterm+pcfN|fragment with modifyFunctionKeys:-1 and ctrlFKeys:12,
316d522f475Smrg	kf1=\EOP,
317d522f475Smrg	kf10=\E[21~,
318d522f475Smrg	kf11=\E[23~,
319d522f475Smrg	kf12=\E[24~,
320d522f475Smrg	kf13=\E[25~,
321d522f475Smrg	kf14=\E[26~,
322d522f475Smrg	kf15=\E[28~,
323d522f475Smrg	kf16=\E[29~,
324d522f475Smrg	kf17=\E[31~,
325d522f475Smrg	kf18=\E[32~,
326d522f475Smrg	kf19=\E[33~,
327d522f475Smrg	kf2=\EOQ,
328d522f475Smrg	kf20=\E[34~,
329d522f475Smrg	kf21=\E[42~,
330d522f475Smrg	kf22=\E[43~,
331d522f475Smrg	kf23=\E[44~,
332d522f475Smrg	kf24=\E[45~,
333d522f475Smrg	kf25=\E[46~,
334d522f475Smrg	kf26=\E[47~,
335d522f475Smrg	kf27=\E[48~,
336d522f475Smrg	kf28=\E[49~,
337d522f475Smrg	kf29=\E[50~,
338d522f475Smrg	kf3=\EOR,
339d522f475Smrg	kf30=\E[51~,
340d522f475Smrg	kf31=\E[52~,
341d522f475Smrg	kf32=\E[53~,
342d522f475Smrg	kf33=\E[54~,
343d522f475Smrg	kf34=\E[55~,
344d522f475Smrg	kf35=\E[56~,
345d522f475Smrg	kf36=\E[57~,
346d522f475Smrg	kf37=\E[58~,
347d522f475Smrg	kf38=\E[59~,
348d522f475Smrg	kf39=\E[60~,
349d522f475Smrg	kf4=\EOS,
350d522f475Smrg	kf40=\E[61~,
351d522f475Smrg	kf41=\E[62~,
352d522f475Smrg	kf42=\E[63~,
353d522f475Smrg	kf43=\E[64~,
354d522f475Smrg	kf44=\E[65~,
355d522f475Smrg	kf45=\E[66~,
356d522f475Smrg	kf46=\E[67~,
357d522f475Smrg	kf47=\E[68~,
358d522f475Smrg	kf48=\E[69~,
359d522f475Smrg	kf5=\E[15~,
360d522f475Smrg	kf6=\E[17~,
361d522f475Smrg	kf7=\E[18~,
362d522f475Smrg	kf8=\E[19~,
363d522f475Smrg	kf9=\E[20~,
364d522f475Smrg
365d522f475Smrgxterm+pcf0|fragment with modifyFunctionKeys:0,
366d522f475Smrg	kf1=\EOP,
367d522f475Smrg	kf10=\E[21~,
368d522f475Smrg	kf11=\E[23~,
369d522f475Smrg	kf12=\E[24~,
370d522f475Smrg	kf13=\EO2P,
371d522f475Smrg	kf14=\EO2Q,
372d522f475Smrg	kf15=\EO2R,
373d522f475Smrg	kf16=\EO2S,
374d522f475Smrg	kf17=\E[15;2~,
375d522f475Smrg	kf18=\E[17;2~,
376d522f475Smrg	kf19=\E[18;2~,
377d522f475Smrg	kf2=\EOQ,
378d522f475Smrg	kf20=\E[19;2~,
379d522f475Smrg	kf21=\E[20;2~,
380d522f475Smrg	kf22=\E[21;2~,
381d522f475Smrg	kf23=\E[23;2~,
382d522f475Smrg	kf24=\E[24;2~,
383d522f475Smrg	kf25=\EO5P,
384d522f475Smrg	kf26=\EO5Q,
385d522f475Smrg	kf27=\EO5R,
386d522f475Smrg	kf28=\EO5S,
387d522f475Smrg	kf29=\E[15;5~,
388d522f475Smrg	kf3=\EOR,
389d522f475Smrg	kf30=\E[17;5~,
390d522f475Smrg	kf31=\E[18;5~,
391d522f475Smrg	kf32=\E[19;5~,
392d522f475Smrg	kf33=\E[20;5~,
393d522f475Smrg	kf34=\E[21;5~,
394d522f475Smrg	kf35=\E[23;5~,
395d522f475Smrg	kf36=\E[24;5~,
396d522f475Smrg	kf37=\EO6P,
397d522f475Smrg	kf38=\EO6Q,
398d522f475Smrg	kf39=\EO6R,
399d522f475Smrg	kf4=\EOS,
400d522f475Smrg	kf40=\EO6S,
401d522f475Smrg	kf41=\E[15;6~,
402d522f475Smrg	kf42=\E[17;6~,
403d522f475Smrg	kf43=\E[18;6~,
404d522f475Smrg	kf44=\E[19;6~,
405d522f475Smrg	kf45=\E[20;6~,
406d522f475Smrg	kf46=\E[21;6~,
407d522f475Smrg	kf47=\E[23;6~,
408d522f475Smrg	kf48=\E[24;6~,
409d522f475Smrg	kf49=\EO3P,
410d522f475Smrg	kf5=\E[15~,
411d522f475Smrg	kf50=\EO3Q,
412d522f475Smrg	kf51=\EO3R,
413d522f475Smrg	kf52=\EO3S,
414d522f475Smrg	kf53=\E[15;3~,
415d522f475Smrg	kf54=\E[17;3~,
416d522f475Smrg	kf55=\E[18;3~,
417d522f475Smrg	kf56=\E[19;3~,
418d522f475Smrg	kf57=\E[20;3~,
419d522f475Smrg	kf58=\E[21;3~,
420d522f475Smrg	kf59=\E[23;3~,
421d522f475Smrg	kf6=\E[17~,
422d522f475Smrg	kf60=\E[24;3~,
423d522f475Smrg	kf61=\EO4P,
424d522f475Smrg	kf62=\EO4Q,
425d522f475Smrg	kf63=\EO4R,
426d522f475Smrg	kf7=\E[18~,
427d522f475Smrg	kf8=\E[19~,
428d522f475Smrg	kf9=\E[20~,
429d522f475Smrg
430d522f475Smrg# This is almost the same as xterm+pcf2 because the unmodified keys all happen
431d522f475Smrg# to have a pattern that forces the modifier to the same position.
432d522f475Smrgxterm+pcf1|fragment with modifyFunctionKeys:1,
433d522f475Smrg	kf1=\EOP,
434d522f475Smrg	kf10=\E[21~,
435d522f475Smrg	kf11=\E[23~,
436d522f475Smrg	kf12=\E[24~,
437d522f475Smrg	kf13=\E[2P,
438d522f475Smrg	kf14=\E[2Q,
439d522f475Smrg	kf15=\E[2R,
440d522f475Smrg	kf16=\E[2S,
441d522f475Smrg	kf17=\E[15;2~,
442d522f475Smrg	kf18=\E[17;2~,
443d522f475Smrg	kf19=\E[18;2~,
444d522f475Smrg	kf2=\EOQ,
445d522f475Smrg	kf20=\E[19;2~,
446d522f475Smrg	kf21=\E[20;2~,
447d522f475Smrg	kf22=\E[21;2~,
448d522f475Smrg	kf23=\E[23;2~,
449d522f475Smrg	kf24=\E[24;2~,
450d522f475Smrg	kf25=\E[5P,
451d522f475Smrg	kf26=\E[5Q,
452d522f475Smrg	kf27=\E[5R,
453d522f475Smrg	kf28=\E[5S,
454d522f475Smrg	kf29=\E[15;5~,
455d522f475Smrg	kf3=\EOR,
456d522f475Smrg	kf30=\E[17;5~,
457d522f475Smrg	kf31=\E[18;5~,
458d522f475Smrg	kf32=\E[19;5~,
459d522f475Smrg	kf33=\E[20;5~,
460d522f475Smrg	kf34=\E[21;5~,
461d522f475Smrg	kf35=\E[23;5~,
462d522f475Smrg	kf36=\E[24;5~,
463d522f475Smrg	kf37=\E[6P,
464d522f475Smrg	kf38=\E[6Q,
465d522f475Smrg	kf39=\E[6R,
466d522f475Smrg	kf4=\EOS,
467d522f475Smrg	kf40=\E[6S,
468d522f475Smrg	kf41=\E[15;6~,
469d522f475Smrg	kf42=\E[17;6~,
470d522f475Smrg	kf43=\E[18;6~,
471d522f475Smrg	kf44=\E[19;6~,
472d522f475Smrg	kf45=\E[20;6~,
473d522f475Smrg	kf46=\E[21;6~,
474d522f475Smrg	kf47=\E[23;6~,
475d522f475Smrg	kf48=\E[24;6~,
476d522f475Smrg	kf49=\E[3P,
477d522f475Smrg	kf5=\E[15~,
478d522f475Smrg	kf50=\E[3Q,
479d522f475Smrg	kf51=\E[3R,
480d522f475Smrg	kf52=\E[3S,
481d522f475Smrg	kf53=\E[15;3~,
482d522f475Smrg	kf54=\E[17;3~,
483d522f475Smrg	kf55=\E[18;3~,
484d522f475Smrg	kf56=\E[19;3~,
485d522f475Smrg	kf57=\E[20;3~,
486d522f475Smrg	kf58=\E[21;3~,
487d522f475Smrg	kf59=\E[23;3~,
488d522f475Smrg	kf6=\E[17~,
489d522f475Smrg	kf60=\E[24;3~,
490d522f475Smrg	kf61=\E[4P,
491d522f475Smrg	kf62=\E[4Q,
492d522f475Smrg	kf63=\E[4R,
493d522f475Smrg	kf7=\E[18~,
494d522f475Smrg	kf8=\E[19~,
495d522f475Smrg	kf9=\E[20~,
496d522f475Smrg
497d522f475Smrgxterm+pcf2|fragment with modifyFunctionKeys:2,
498d522f475Smrg	kf1=\EOP,
499d522f475Smrg	kf10=\E[21~,
500d522f475Smrg	kf11=\E[23~,
501d522f475Smrg	kf12=\E[24~,
502d522f475Smrg	kf13=\E[1;2P,
503d522f475Smrg	kf14=\E[1;2Q,
504d522f475Smrg	kf15=\E[1;2R,
505d522f475Smrg	kf16=\E[1;2S,
506d522f475Smrg	kf17=\E[15;2~,
507d522f475Smrg	kf18=\E[17;2~,
508d522f475Smrg	kf19=\E[18;2~,
509d522f475Smrg	kf2=\EOQ,
510d522f475Smrg	kf20=\E[19;2~,
511d522f475Smrg	kf21=\E[20;2~,
512d522f475Smrg	kf22=\E[21;2~,
513d522f475Smrg	kf23=\E[23;2~,
514d522f475Smrg	kf24=\E[24;2~,
515d522f475Smrg	kf25=\E[1;5P,
516d522f475Smrg	kf26=\E[1;5Q,
517d522f475Smrg	kf27=\E[1;5R,
518d522f475Smrg	kf28=\E[1;5S,
519d522f475Smrg	kf29=\E[15;5~,
520d522f475Smrg	kf3=\EOR,
521d522f475Smrg	kf30=\E[17;5~,
522d522f475Smrg	kf31=\E[18;5~,
523d522f475Smrg	kf32=\E[19;5~,
524d522f475Smrg	kf33=\E[20;5~,
525d522f475Smrg	kf34=\E[21;5~,
526d522f475Smrg	kf35=\E[23;5~,
527d522f475Smrg	kf36=\E[24;5~,
528d522f475Smrg	kf37=\E[1;6P,
529d522f475Smrg	kf38=\E[1;6Q,
530d522f475Smrg	kf39=\E[1;6R,
531d522f475Smrg	kf4=\EOS,
532d522f475Smrg	kf40=\E[1;6S,
533d522f475Smrg	kf41=\E[15;6~,
534d522f475Smrg	kf42=\E[17;6~,
535d522f475Smrg	kf43=\E[18;6~,
536d522f475Smrg	kf44=\E[19;6~,
537d522f475Smrg	kf45=\E[20;6~,
538d522f475Smrg	kf46=\E[21;6~,
539d522f475Smrg	kf47=\E[23;6~,
540d522f475Smrg	kf48=\E[24;6~,
541d522f475Smrg	kf49=\E[1;3P,
542d522f475Smrg	kf5=\E[15~,
543d522f475Smrg	kf50=\E[1;3Q,
544d522f475Smrg	kf51=\E[1;3R,
545d522f475Smrg	kf52=\E[1;3S,
546d522f475Smrg	kf53=\E[15;3~,
547d522f475Smrg	kf54=\E[17;3~,
548d522f475Smrg	kf55=\E[18;3~,
549d522f475Smrg	kf56=\E[19;3~,
550d522f475Smrg	kf57=\E[20;3~,
551d522f475Smrg	kf58=\E[21;3~,
552d522f475Smrg	kf59=\E[23;3~,
553d522f475Smrg	kf6=\E[17~,
554d522f475Smrg	kf60=\E[24;3~,
555d522f475Smrg	kf61=\E[1;4P,
556d522f475Smrg	kf62=\E[1;4Q,
557d522f475Smrg	kf63=\E[1;4R,
558d522f475Smrg	kf7=\E[18~,
559d522f475Smrg	kf8=\E[19~,
560d522f475Smrg	kf9=\E[20~,
561d522f475Smrg
562d522f475Smrgxterm+pcf3|fragment with modifyFunctionKeys:3,
563d522f475Smrg	kf1=\EOP,
564d522f475Smrg	kf10=\E[21~,
565d522f475Smrg	kf11=\E[23~,
566d522f475Smrg	kf12=\E[24~,
567d522f475Smrg	kf13=\E[>1;2P,
568d522f475Smrg	kf14=\E[>1;2Q,
569d522f475Smrg	kf15=\E[>1;2R,
570d522f475Smrg	kf16=\E[>1;2S,
571d522f475Smrg	kf17=\E[>15;2~,
572d522f475Smrg	kf18=\E[>17;2~,
573d522f475Smrg	kf19=\E[>18;2~,
574d522f475Smrg	kf2=\EOQ,
575d522f475Smrg	kf20=\E[>19;2~,
576d522f475Smrg	kf21=\E[>20;2~,
577d522f475Smrg	kf22=\E[>21;2~,
578d522f475Smrg	kf23=\E[>23;2~,
579d522f475Smrg	kf24=\E[>24;2~,
580d522f475Smrg	kf25=\E[>1;5P,
581d522f475Smrg	kf26=\E[>1;5Q,
582d522f475Smrg	kf27=\E[>1;5R,
583d522f475Smrg	kf28=\E[>1;5S,
584d522f475Smrg	kf29=\E[>15;5~,
585d522f475Smrg	kf3=\EOR,
586d522f475Smrg	kf30=\E[>17;5~,
587d522f475Smrg	kf31=\E[>18;5~,
588d522f475Smrg	kf32=\E[>19;5~,
589d522f475Smrg	kf33=\E[>20;5~,
590d522f475Smrg	kf34=\E[>21;5~,
591d522f475Smrg	kf35=\E[>23;5~,
592d522f475Smrg	kf36=\E[>24;5~,
593d522f475Smrg	kf37=\E[>1;6P,
594d522f475Smrg	kf38=\E[>1;6Q,
595d522f475Smrg	kf39=\E[>1;6R,
596d522f475Smrg	kf4=\EOS,
597d522f475Smrg	kf40=\E[>1;6S,
598d522f475Smrg	kf41=\E[>15;6~,
599d522f475Smrg	kf42=\E[>17;6~,
600d522f475Smrg	kf43=\E[>18;6~,
601d522f475Smrg	kf44=\E[>19;6~,
602d522f475Smrg	kf45=\E[>20;6~,
603d522f475Smrg	kf46=\E[>21;6~,
604d522f475Smrg	kf47=\E[>23;6~,
605d522f475Smrg	kf48=\E[>24;6~,
606d522f475Smrg	kf49=\E[>1;3P,
607d522f475Smrg	kf5=\E[15~,
608d522f475Smrg	kf50=\E[>1;3Q,
609d522f475Smrg	kf51=\E[>1;3R,
610d522f475Smrg	kf52=\E[>1;3S,
611d522f475Smrg	kf53=\E[>15;3~,
612d522f475Smrg	kf54=\E[>17;3~,
613d522f475Smrg	kf55=\E[>18;3~,
614d522f475Smrg	kf56=\E[>19;3~,
615d522f475Smrg	kf57=\E[>20;3~,
616d522f475Smrg	kf58=\E[>21;3~,
617d522f475Smrg	kf59=\E[>23;3~,
618d522f475Smrg	kf6=\E[17~,
619d522f475Smrg	kf60=\E[>24;3~,
620d522f475Smrg	kf61=\E[>1;4P,
621d522f475Smrg	kf62=\E[>1;4Q,
622d522f475Smrg	kf63=\E[>1;4R,
623d522f475Smrg	kf7=\E[18~,
624d522f475Smrg	kf8=\E[19~,
625d522f475Smrg	kf9=\E[20~,
626d522f475Smrg#
627d522f475Smrg# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27)
628d522f475Smrg# and revised in patch #167 (2002/8/24).
629d522f475Smrg#
630d522f475Smrg# The original assignments from patch #94 for cursor-keys had some technical
631d522f475Smrg# issues:
632d522f475Smrg#
633d522f475Smrg#	A parameter for a function-key to represent a modifier is just more
634d522f475Smrg#	bits.  But for a cursor-key it may change the behavior of the
635d522f475Smrg#	application.  For instance, emacs decodes the first parameter of a
636d522f475Smrg#	cursor-key as a repeat count.
637d522f475Smrg#
638d522f475Smrg#	A parameterized string should (really) not begin with SS3 (\EO).
639d522f475Smrg#	Rather, CSI (\E[) should be used.
640d522f475Smrg#
641d522f475Smrg# For these reasons, the original assignments were deprecated.  For
642d522f475Smrg# compatibility reasons, they are still available as a setting of xterm's
643d522f475Smrg# modifyCursorKeys resource.  These fragments list the modified cursor-keys
644d522f475Smrg# that might apply to xterm+pcfkeys with different values of that resource.
645d522f475Smrgxterm+pcc3|fragment with modifyCursorKeys:3,
646d522f475Smrg	kLFT=\E[>1;2D,
647d522f475Smrg	kRIT=\E[>1;2C,
648d522f475Smrg	kind=\E[>1;2B,
649d522f475Smrg	kri=\E[>1;2A,
650d522f475Smrg	kDN=\E[>1;2B,
651d522f475Smrg	kDN3=\E[>1;3B,
652d522f475Smrg	kDN4=\E[>1;4B,
653d522f475Smrg	kDN5=\E[>1;5B,
654d522f475Smrg	kDN6=\E[>1;6B,
655d522f475Smrg	kDN7=\E[>1;7B,
656d522f475Smrg	kLFT3=\E[>1;3D,
657d522f475Smrg	kLFT4=\E[>1;4D,
658d522f475Smrg	kLFT5=\E[>1;5D,
659d522f475Smrg	kLFT6=\E[>1;6D,
660d522f475Smrg	kLFT7=\E[>1;7D,
661d522f475Smrg	kRIT3=\E[>1;3C,
662d522f475Smrg	kRIT4=\E[>1;4C,
663d522f475Smrg	kRIT5=\E[>1;5C,
664d522f475Smrg	kRIT6=\E[>1;6C,
665d522f475Smrg	kRIT7=\E[>1;7C,
666d522f475Smrg	kUP=\E[>1;2A,
667d522f475Smrg	kUP3=\E[>1;3A,
668d522f475Smrg	kUP4=\E[>1;4A,
669d522f475Smrg	kUP5=\E[>1;5A,
670d522f475Smrg	kUP6=\E[>1;6A,
671d522f475Smrg	kUP7=\E[>1;7A,
672d522f475Smrg
673d522f475Smrgxterm+pcc2|fragment with modifyCursorKeys:2,
674d522f475Smrg	kLFT=\E[1;2D,
675d522f475Smrg	kRIT=\E[1;2C,
676d522f475Smrg	kind=\E[1;2B,
677d522f475Smrg	kri=\E[1;2A,
678d522f475Smrg	kDN=\E[1;2B,
679d522f475Smrg	kDN3=\E[1;3B,
680d522f475Smrg	kDN4=\E[1;4B,
681d522f475Smrg	kDN5=\E[1;5B,
682d522f475Smrg	kDN6=\E[1;6B,
683d522f475Smrg	kDN7=\E[1;7B,
684d522f475Smrg	kLFT3=\E[1;3D,
685d522f475Smrg	kLFT4=\E[1;4D,
686d522f475Smrg	kLFT5=\E[1;5D,
687d522f475Smrg	kLFT6=\E[1;6D,
688d522f475Smrg	kLFT7=\E[1;7D,
689d522f475Smrg	kRIT3=\E[1;3C,
690d522f475Smrg	kRIT4=\E[1;4C,
691d522f475Smrg	kRIT5=\E[1;5C,
692d522f475Smrg	kRIT6=\E[1;6C,
693d522f475Smrg	kRIT7=\E[1;7C,
694d522f475Smrg	kUP=\E[1;2A,
695d522f475Smrg	kUP3=\E[1;3A,
696d522f475Smrg	kUP4=\E[1;4A,
697d522f475Smrg	kUP5=\E[1;5A,
698d522f475Smrg	kUP6=\E[1;6A,
699d522f475Smrg	kUP7=\E[1;7A,
700d522f475Smrg
701d522f475Smrgxterm+pcc1|fragment with modifyCursorKeys:1,
702d522f475Smrg	kLFT=\E[2D,
703d522f475Smrg	kRIT=\E[2C,
704d522f475Smrg	kind=\E[2B,
705d522f475Smrg	kri=\E[2A,
706d522f475Smrg	kDN=\E[2B,
707d522f475Smrg	kDN3=\E[3B,
708d522f475Smrg	kDN4=\E[4B,
709d522f475Smrg	kDN5=\E[5B,
710d522f475Smrg	kDN6=\E[6B,
711d522f475Smrg	kDN7=\E[7B,
712d522f475Smrg	kLFT3=\E[3D,
713d522f475Smrg	kLFT4=\E[4D,
714d522f475Smrg	kLFT5=\E[5D,
715d522f475Smrg	kLFT6=\E[6D,
716d522f475Smrg	kLFT7=\E[7D,
717d522f475Smrg	kRIT3=\E[3C,
718d522f475Smrg	kRIT4=\E[4C,
719d522f475Smrg	kRIT5=\E[5C,
720d522f475Smrg	kRIT6=\E[6C,
721d522f475Smrg	kRIT7=\E[7C,
722d522f475Smrg	kUP=\E[2A,
723d522f475Smrg	kUP3=\E[3A,
724d522f475Smrg	kUP4=\E[4A,
725d522f475Smrg	kUP5=\E[5A,
726d522f475Smrg	kUP6=\E[6A,
727d522f475Smrg	kUP7=\E[7A,
728d522f475Smrg
729d522f475Smrgxterm+pcc0|fragment with modifyCursorKeys:0,
730d522f475Smrg	kLFT=\EO2D,
731d522f475Smrg	kRIT=\EO2C,
732d522f475Smrg	kind=\EO2B,
733d522f475Smrg	kri=\EO2A,
734d522f475Smrg	kDN=\EO2B,
735d522f475Smrg	kDN3=\EO3B,
736d522f475Smrg	kDN4=\EO4B,
737d522f475Smrg	kDN5=\EO5B,
738d522f475Smrg	kDN6=\EO6B,
739d522f475Smrg	kDN7=\EO7B,
740d522f475Smrg	kLFT3=\EO3D,
741d522f475Smrg	kLFT4=\EO4D,
742d522f475Smrg	kLFT5=\EO5D,
743d522f475Smrg	kLFT6=\EO6D,
744d522f475Smrg	kLFT7=\EO7D,
745d522f475Smrg	kRIT3=\EO3C,
746d522f475Smrg	kRIT4=\EO4C,
747d522f475Smrg	kRIT5=\EO5C,
748d522f475Smrg	kRIT6=\EO6C,
749d522f475Smrg	kRIT7=\EO7C,
750d522f475Smrg	kUP=\EO2A,
751d522f475Smrg	kUP3=\EO3A,
752d522f475Smrg	kUP4=\EO4A,
753d522f475Smrg	kUP5=\EO5A,
754d522f475Smrg	kUP6=\EO6A,
755d522f475Smrg	kUP7=\EO7A,
756d522f475Smrg
757d522f475Smrg# The home/end keys on the editing keypad are also treated as cursor keys.
758d522f475Smrgxterm+pce3|fragment with modifyCursorKeys:3,
759d522f475Smrg	kDC=\E[>3;2~,
760d522f475Smrg	kEND=\E[>1;2F,
761d522f475Smrg	kHOM=\E[>1;2H,
762d522f475Smrg	kIC=\E[>2;2~,
763d522f475Smrg	kNXT=\E[>6;2~,
764d522f475Smrg	kPRV=\E[>5;2~,
765d522f475Smrg	kDC3=\E[>3;3~,
766d522f475Smrg	kDC4=\E[>3;4~,
767d522f475Smrg	kDC5=\E[>3;5~,
768d522f475Smrg	kDC6=\E[>3;6~,
769d522f475Smrg	kDC7=\E[>3;7~,
770d522f475Smrg	kEND3=\E[>1;3F,
771d522f475Smrg	kEND4=\E[>1;4F,
772d522f475Smrg	kEND5=\E[>1;5F,
773d522f475Smrg	kEND6=\E[>1;6F,
774d522f475Smrg	kEND7=\E[>1;7F,
775d522f475Smrg	kHOM3=\E[>1;3H,
776d522f475Smrg	kHOM4=\E[>1;4H,
777d522f475Smrg	kHOM5=\E[>1;5H,
778d522f475Smrg	kHOM6=\E[>1;6H,
779d522f475Smrg	kHOM7=\E[>1;7H,
780d522f475Smrg	kIC3=\E[>2;3~,
781d522f475Smrg	kIC4=\E[>2;4~,
782d522f475Smrg	kIC5=\E[>2;5~,
783d522f475Smrg	kIC6=\E[>2;6~,
784d522f475Smrg	kIC7=\E[>2;7~,
785d522f475Smrg	kNXT3=\E[>6;3~,
786d522f475Smrg	kNXT4=\E[>6;4~,
787d522f475Smrg	kNXT5=\E[>6;5~,
788d522f475Smrg	kNXT6=\E[>6;6~,
789d522f475Smrg	kNXT7=\E[>6;7~,
790d522f475Smrg	kPRV3=\E[>5;3~,
791d522f475Smrg	kPRV4=\E[>5;4~,
792d522f475Smrg	kPRV5=\E[>5;5~,
793d522f475Smrg	kPRV6=\E[>5;6~,
794d522f475Smrg	kPRV7=\E[>5;7~,
795d522f475Smrg	use=xterm+pce0,
796d522f475Smrg
797d522f475Smrgxterm+pce2|fragment with modifyCursorKeys:2,
798d522f475Smrg	kDC=\E[3;2~,
799d522f475Smrg	kEND=\E[1;2F,
800d522f475Smrg	kHOM=\E[1;2H,
801d522f475Smrg	kIC=\E[2;2~,
802d522f475Smrg	kNXT=\E[6;2~,
803d522f475Smrg	kPRV=\E[5;2~,
804d522f475Smrg	kDC3=\E[3;3~,
805d522f475Smrg	kDC4=\E[3;4~,
806d522f475Smrg	kDC5=\E[3;5~,
807d522f475Smrg	kDC6=\E[3;6~,
808d522f475Smrg	kDC7=\E[3;7~,
809d522f475Smrg	kEND3=\E[1;3F,
810d522f475Smrg	kEND4=\E[1;4F,
811d522f475Smrg	kEND5=\E[1;5F,
812d522f475Smrg	kEND6=\E[1;6F,
813d522f475Smrg	kEND7=\E[1;7F,
814d522f475Smrg	kHOM3=\E[1;3H,
815d522f475Smrg	kHOM4=\E[1;4H,
816d522f475Smrg	kHOM5=\E[1;5H,
817d522f475Smrg	kHOM6=\E[1;6H,
818d522f475Smrg	kHOM7=\E[1;7H,
819d522f475Smrg	kIC3=\E[2;3~,
820d522f475Smrg	kIC4=\E[2;4~,
821d522f475Smrg	kIC5=\E[2;5~,
822d522f475Smrg	kIC6=\E[2;6~,
823d522f475Smrg	kIC7=\E[2;7~,
824d522f475Smrg	kNXT3=\E[6;3~,
825d522f475Smrg	kNXT4=\E[6;4~,
826d522f475Smrg	kNXT5=\E[6;5~,
827d522f475Smrg	kNXT6=\E[6;6~,
828d522f475Smrg	kNXT7=\E[6;7~,
829d522f475Smrg	kPRV3=\E[5;3~,
830d522f475Smrg	kPRV4=\E[5;4~,
831d522f475Smrg	kPRV5=\E[5;5~,
832d522f475Smrg	kPRV6=\E[5;6~,
833d522f475Smrg	kPRV7=\E[5;7~,
834d522f475Smrg	use=xterm+pce0,
835d522f475Smrg
836d522f475Smrgxterm+pce1|fragment with modifyCursorKeys:1,
837d522f475Smrg	kDC=\E[3;2~,
838d522f475Smrg	kEND=\E[2F,
839d522f475Smrg	kHOM=\E[2H,
840d522f475Smrg	kIC=\E[2;2~,
841d522f475Smrg	kNXT=\E[6;2~,
842d522f475Smrg	kPRV=\E[5;2~,
843d522f475Smrg	kDC3=\E[3;3~,
844d522f475Smrg	kDC4=\E[3;4~,
845d522f475Smrg	kDC5=\E[3;5~,
846d522f475Smrg	kDC6=\E[3;6~,
847d522f475Smrg	kDC7=\E[3;7~,
848d522f475Smrg	kEND3=\E[3F,
849d522f475Smrg	kEND4=\E[4F,
850d522f475Smrg	kEND5=\E[5F,
851d522f475Smrg	kEND6=\E[6F,
852d522f475Smrg	kEND7=\E[7F,
853d522f475Smrg	kHOM3=\E[3H,
854d522f475Smrg	kHOM4=\E[4H,
855d522f475Smrg	kHOM5=\E[5H,
856d522f475Smrg	kHOM6=\E[6H,
857d522f475Smrg	kHOM7=\E[7H,
858d522f475Smrg	kIC3=\E[2;3~,
859d522f475Smrg	kIC4=\E[2;4~,
860d522f475Smrg	kIC5=\E[2;5~,
861d522f475Smrg	kIC6=\E[2;6~,
862d522f475Smrg	kIC7=\E[2;7~,
863d522f475Smrg	kNXT3=\E[6;3~,
864d522f475Smrg	kNXT4=\E[6;4~,
865d522f475Smrg	kNXT5=\E[6;5~,
866d522f475Smrg	kNXT6=\E[6;6~,
867d522f475Smrg	kNXT7=\E[6;7~,
868d522f475Smrg	kPRV3=\E[5;3~,
869d522f475Smrg	kPRV4=\E[5;4~,
870d522f475Smrg	kPRV5=\E[5;5~,
871d522f475Smrg	kPRV6=\E[5;6~,
872d522f475Smrg	kPRV7=\E[5;7~,
873d522f475Smrg	use=xterm+pce0,
874d522f475Smrg
875d522f475Smrgxterm+pce0|fragment with modifyCursorKeys:0,
876d522f475Smrg	kDC=\E[3;2~,
877d522f475Smrg	kEND=\EO2F,
878d522f475Smrg	kHOM=\EO2H,
879d522f475Smrg	kIC=\E[2;2~,
880d522f475Smrg	kNXT=\E[6;2~,
881d522f475Smrg	kPRV=\E[5;2~,
882d522f475Smrg	kDC3=\E[3;3~,
883d522f475Smrg	kDC4=\E[3;4~,
884d522f475Smrg	kDC5=\E[3;5~,
885d522f475Smrg	kDC6=\E[3;6~,
886d522f475Smrg	kDC7=\E[3;7~,
887d522f475Smrg	kEND3=\EO3F,
888d522f475Smrg	kEND4=\EO4F,
889d522f475Smrg	kEND5=\EO5F,
890d522f475Smrg	kEND6=\EO6F,
891d522f475Smrg	kEND7=\EO7F,
892d522f475Smrg	kHOM3=\EO3H,
893d522f475Smrg	kHOM4=\EO4H,
894d522f475Smrg	kHOM5=\EO5H,
895d522f475Smrg	kHOM6=\EO6H,
896d522f475Smrg	kHOM7=\EO7H,
897d522f475Smrg	kIC3=\E[2;3~,
898d522f475Smrg	kIC4=\E[2;4~,
899d522f475Smrg	kIC5=\E[2;5~,
900d522f475Smrg	kIC6=\E[2;6~,
901d522f475Smrg	kIC7=\E[2;7~,
902d522f475Smrg	kNXT3=\E[6;3~,
903d522f475Smrg	kNXT4=\E[6;4~,
904d522f475Smrg	kNXT5=\E[6;5~,
905d522f475Smrg	kNXT6=\E[6;6~,
906d522f475Smrg	kNXT7=\E[6;7~,
907d522f475Smrg	kPRV3=\E[5;3~,
908d522f475Smrg	kPRV4=\E[5;4~,
909d522f475Smrg	kPRV5=\E[5;5~,
910d522f475Smrg	kPRV6=\E[5;6~,
911d522f475Smrg	kPRV7=\E[5;7~,
912d522f475Smrg	use=xterm+edit,
913913cc679Smrg
914ad37e533Smrgecma+italics|ECMA-48 italics,
915ad37e533Smrg	ritm=\E[23m,
916ad37e533Smrg	sitm=\E[3m,
917ad37e533Smrg
918f2e35a3aSmrg# The rmxx/smxx capabilities are an ncurses extension
919913cc679Smrgecma+strikeout|ECMA-48 strikeout/crossed-out,
920913cc679Smrg	rmxx=\E[29m,
921913cc679Smrg	smxx=\E[9m,
922f2e35a3aSmrg
923ad37e533Smrg# ECMA-48 does not include the VT100 indexing and scroll-margins.  It has its
924ad37e533Smrg# own variation.
925ad37e533Smrgecma+index|ECMA-48 scroll up/down,
926ad37e533Smrg	indn=\E[%p1%dS,
927ad37e533Smrg	rin=\E[%p1%dT,
928ad37e533Smrg
929f2e35a3aSmrg# The XM capability is an ncurses extension
930f2e35a3aSmrgxterm+sm+1006|xterm SGR-mouse,
931f2e35a3aSmrg	kmous=\E[<,
9325307cd1aSmrg	XM=\E[?1006;1004;1000
933f2e35a3aSmrg		%?
934f2e35a3aSmrg			%p1%{1}%=
935f2e35a3aSmrg			%th
936f2e35a3aSmrg		%e
937f2e35a3aSmrg			l
938f2e35a3aSmrg		%;,
939f2e35a3aSmrg	xm=\E[<%i
9404419d26bSmrg		%p3%d;
9414419d26bSmrg		%p1%d;
9424419d26bSmrg		%p2%d;
943f2e35a3aSmrg		%?
944f2e35a3aSmrg			%p4
945f2e35a3aSmrg			%tM
946f2e35a3aSmrg		%e
947f2e35a3aSmrg			m
948f2e35a3aSmrg		%;,
949f2e35a3aSmrg
950f2e35a3aSmrg# By default, ncurses knows that xterm private mode 1000 enables/disables
951f2e35a3aSmrg# the X11 xterm mouse protocol.  So XM is not needed here, except for clarity.
952f2e35a3aSmrgxterm+x11mouse|X11 xterm mouse protocol,
953f2e35a3aSmrg	kmous=\E[M,
954f2e35a3aSmrg	XM=\E[?1000
955f2e35a3aSmrg		%?
956f2e35a3aSmrg			%p1%{1}%=
957f2e35a3aSmrg			%th
958f2e35a3aSmrg		%e
959f2e35a3aSmrg			l
960f2e35a3aSmrg		%;,
961f2e35a3aSmrg	xm=\E[M
962f2e35a3aSmrg		%?
963f2e35a3aSmrg			%p4
9644419d26bSmrg			%t
9654419d26bSmrg			%p3
966f2e35a3aSmrg		%e%{3}
967f2e35a3aSmrg		%;
968f2e35a3aSmrg		%'\s'%+%c
9694419d26bSmrg		%p2%'!'%+%c
9704419d26bSmrg		%p1%'!'%+%c,
971f2e35a3aSmrg
9725307cd1aSmrg# xterm patch #224 2007/2/11 added private mode 1004, for enabling/disabling
9735307cd1aSmrg# focus in/out event reporting.  The 1004 is normally part of XM in a different
9745307cd1aSmrg# building-block, e.g., for reporting any events.
9755307cd1aSmrgxterm+focus|xterm focus-in/out event "keys",
9765307cd1aSmrg	XF,
9775307cd1aSmrg	kxIN=\E[I,
9785307cd1aSmrg	kxOUT=\E[O,
9795307cd1aSmrg
9805307cd1aSmrg# https://invisible-island.net/xterm/xterm-paste64.html
9815307cd1aSmrg#
9825307cd1aSmrg# Bracketed paste was introduced by xterm patch #203 in May 2005, as part of a
9835307cd1aSmrg# larger feature for manipulating the clipboard selection.  Few terminals aside
9845307cd1aSmrg# from xterm fully implement the clipboard feature, but several copy this
9855307cd1aSmrg# detail.  The names for the extended capabilities here were introduced by vim
9865307cd1aSmrg# in January 2017, but used internally.  In 2023, vim patch 9.0.1117 is needed
9875307cd1aSmrg# to work with this change.
9885307cd1aSmrgbracketed+paste|xterm bracketed paste,
9895307cd1aSmrg	BD=\E[?2004l,
9905307cd1aSmrg	BE=\E[?2004h,
9915307cd1aSmrg	PE=\E[201~,
9925307cd1aSmrg	PS=\E[200~,
9935307cd1aSmrg
9945307cd1aSmrg# https://invisible-island.net/xterm/xterm.log.html#xterm_354
9955307cd1aSmrg#
9965307cd1aSmrg# The response is a DSR sequence identifying the version: DCS > | text ST
9975307cd1aSmrg# For example:
9985307cd1aSmrg#	^[P>|XTerm(354)^[\
9995307cd1aSmrgreport+version|Report xterm name and version (XTVERSION).,
10005307cd1aSmrg	XR=\E[>0q,
10015307cd1aSmrg	xr=\EP>\\|XTerm\\([1-9][0-9]+\\)
10025307cd1aSmrg	   \E\\\\,
10035307cd1aSmrg	use=report+da2,
10045307cd1aSmrg
10055307cd1aSmrg# Vim uses RV to denote the secondary device attributes.  Xterm documents the
10065307cd1aSmrg# - first parameter as the terminal type (extending it to VT100),
10075307cd1aSmrg# - the second as the patch number for xterm, and
10085307cd1aSmrg# - the third parameter as zero.
10095307cd1aSmrg# Other terminals may provide useful responses, though few are documented.
10105307cd1aSmrg#
10115307cd1aSmrg# Since patch #280 2012/06/24, xterm by default reports itself as a VT420.
10125307cd1aSmrgreport+da2|report secondary device attributes (DA2),
10135307cd1aSmrg	RV=\E[>c,
10145307cd1aSmrg	rv=\E\\[41;[1-6][0-9][0-9];0c,
10155307cd1aSmrg
1016d522f475Smrg# This chunk is used for building the VT220/Sun/PC keyboard variants.
1017d522f475Smrgxterm-basic|modern xterm terminal emulator - common,
1018d522f475Smrg	OTbs,
1019d522f475Smrg	am,
1020d522f475Smrg	bce,
1021d522f475Smrg	km,
1022d522f475Smrg	mc5i,
1023d522f475Smrg	mir,
1024d522f475Smrg	msgr,
1025d522f475Smrg	xenl,
1026d522f475Smrg	AX,
10270bd37d32Smrg	XT,
1028d522f475Smrg	colors#8,
1029d522f475Smrg	cols#80,
1030d522f475Smrg	it#8,
1031d522f475Smrg	lines#24,
1032d522f475Smrg	pairs#64,
1033913cc679Smrg	acsc=``aaffggiijjkkllmmnnooppqqr
1034913cc679Smrg	     rssttuuvvwwxxyyzz{{||}}~~,
1035d522f475Smrg	bel=^G,
1036d522f475Smrg	blink=\E[5m,
1037d522f475Smrg	bold=\E[1m,
1038d522f475Smrg	cbt=\E[Z,
1039d522f475Smrg	civis=\E[?25l,
1040d522f475Smrg	clear=\E[H\E[2J,
1041d522f475Smrg	cnorm=\E[?12l\E[?25h,
1042913cc679Smrg	cr=\r,
1043d522f475Smrg	csr=\E[%i%p1%d;%p2%dr,
1044d522f475Smrg	cub=\E[%p1%dD,
1045d522f475Smrg	cub1=^H,
1046d522f475Smrg	cud=\E[%p1%dB,
1047913cc679Smrg	cud1=\n,
1048d522f475Smrg	cuf=\E[%p1%dC,
1049d522f475Smrg	cuf1=\E[C,
1050d522f475Smrg	cup=\E[%i%p1%d;%p2%dH,
1051d522f475Smrg	cuu=\E[%p1%dA,
1052d522f475Smrg	cuu1=\E[A,
1053d522f475Smrg	cvvis=\E[?12;25h,
1054d522f475Smrg	dch=\E[%p1%dP,
1055d522f475Smrg	dch1=\E[P,
1056894e0ac8Smrg	dim=\E[2m,
1057d522f475Smrg	dl=\E[%p1%dM,
1058d522f475Smrg	dl1=\E[M,
1059d522f475Smrg	ech=\E[%p1%dX,
1060d522f475Smrg	ed=\E[J,
1061d522f475Smrg	el=\E[K,
1062d522f475Smrg	el1=\E[1K,
1063d522f475Smrg	flash=\E[?5h$<100/>\E[?5l,
1064d522f475Smrg	home=\E[H,
1065d522f475Smrg	hpa=\E[%i%p1%dG,
1066d522f475Smrg	ht=^I,
1067d522f475Smrg	hts=\EH,
1068d522f475Smrg	ich=\E[%p1%d@,
1069d522f475Smrg	il=\E[%p1%dL,
1070d522f475Smrg	il1=\E[L,
1071913cc679Smrg	ind=\n,
1072d522f475Smrg	invis=\E[8m,
1073d522f475Smrg	is2=\E[!p\E[?3;4l\E[4l\E>,
1074d522f475Smrg	kmous=\E[M,
1075d522f475Smrg	mc0=\E[i,
1076d522f475Smrg	mc4=\E[4i,
1077d522f475Smrg	mc5=\E[5i,
1078d522f475Smrg	meml=\El,
1079d522f475Smrg	memu=\Em,
1080d522f475Smrg	op=\E[39;49m,
1081d522f475Smrg	rc=\E8,
1082d522f475Smrg	rev=\E[7m,
1083d522f475Smrg	ri=\EM,
1084d522f475Smrg	rmacs=\E(B,
1085d522f475Smrg	rmam=\E[?7l,
1086d522f475Smrg	rmir=\E[4l,
1087d522f475Smrg	rmkx=\E[?1l\E>,
1088d522f475Smrg	rmm=\E[?1034l,
1089d522f475Smrg	rmso=\E[27m,
1090d522f475Smrg	rmul=\E[24m,
1091d522f475Smrg	rs1=\Ec,
1092d522f475Smrg	rs2=\E[!p\E[?3;4l\E[4l\E>,
1093d522f475Smrg	sc=\E7,
1094d522f475Smrg	setab=\E[4%p1%dm,
1095d522f475Smrg	setaf=\E[3%p1%dm,
1096913cc679Smrg	setb=\E[4
1097913cc679Smrg		%?
1098913cc679Smrg			%p1%{1}%=
1099913cc679Smrg			%t4
1100913cc679Smrg		%e
1101913cc679Smrg			%p1%{3}%=
1102913cc679Smrg			%t6
1103913cc679Smrg		%e
1104913cc679Smrg			%p1%{4}%=
1105913cc679Smrg			%t1
1106913cc679Smrg		%e
1107913cc679Smrg			%p1%{6}%=
1108913cc679Smrg			%t3
1109913cc679Smrg		%e
1110913cc679Smrg			%p1%d
1111913cc679Smrg		%;
1112913cc679Smrg		m,
1113913cc679Smrg	setf=\E[3
1114913cc679Smrg		%?
1115913cc679Smrg			%p1%{1}%=
1116913cc679Smrg			%t4
1117913cc679Smrg		%e
1118913cc679Smrg			%p1%{3}%=
1119913cc679Smrg			%t6
1120913cc679Smrg		%e
1121913cc679Smrg			%p1%{4}%=
1122913cc679Smrg			%t1
1123913cc679Smrg		%e
1124913cc679Smrg			%p1%{6}%=
1125913cc679Smrg			%t3
1126913cc679Smrg		%e
1127913cc679Smrg			%p1%d
1128913cc679Smrg		%;
1129913cc679Smrg		m,
1130913cc679Smrg	sgr=
1131913cc679Smrg		%?
1132913cc679Smrg			%p9
1133913cc679Smrg			%t\E(0
1134913cc679Smrg		%e
1135913cc679Smrg			\E(B
1136913cc679Smrg		%;
1137913cc679Smrg		\E[0
1138913cc679Smrg		%?
1139913cc679Smrg			%p6
1140913cc679Smrg			%t;1
1141913cc679Smrg		%;
1142913cc679Smrg		%?
1143913cc679Smrg			%p5
1144913cc679Smrg			%t;2
1145913cc679Smrg		%;
1146913cc679Smrg		%?
1147913cc679Smrg			%p2
1148913cc679Smrg			%t;4
1149913cc679Smrg		%;
1150913cc679Smrg		%?
11514419d26bSmrg			%p1
11524419d26bSmrg			%p3%|
1153913cc679Smrg			%t;7
1154913cc679Smrg		%;
1155913cc679Smrg		%?
1156913cc679Smrg			%p4
1157913cc679Smrg			%t;5
1158913cc679Smrg		%;
1159913cc679Smrg		%?
1160913cc679Smrg			%p7
1161913cc679Smrg			%t;8
1162913cc679Smrg		%;
1163913cc679Smrg		m,
1164d522f475Smrg	sgr0=\E(B\E[m,
1165d522f475Smrg	smacs=\E(0,
1166d522f475Smrg	smam=\E[?7h,
1167d522f475Smrg	smir=\E[4h,
1168d522f475Smrg	smkx=\E[?1h\E=,
1169d522f475Smrg	smm=\E[?1034h,
1170d522f475Smrg	smso=\E[7m,
1171d522f475Smrg	smul=\E[4m,
1172d522f475Smrg	tbc=\E[3g,
1173d522f475Smrg	vpa=\E[%i%p1%dd,
11742e4f8982Smrg	E3=\E[3J,
1175f2e35a3aSmrg	use=ansi+enq,
1176f2e35a3aSmrg	use=xterm+alt+title,
11770bd37d32Smrg	use=xterm+kbs,
1178ad37e533Smrg
1179ad37e533Smrgxterm+nofkeys|building block for xterm fkey-variants,
1180ad37e533Smrg	npc,
1181ad37e533Smrg	kcbt=\E[Z,
1182ad37e533Smrg	kent=\EOM,
1183ad37e533Smrg	nel=\EE,
1184ad37e533Smrg	use=ecma+index,
1185ad37e533Smrg	use=ansi+rep,
1186ad37e533Smrg	use=ecma+strikeout,
1187ad37e533Smrg	use=vt420+lrmm,
1188ad37e533Smrg	use=xterm+sm+1006,
1189ad37e533Smrg	use=xterm+tmux,
1190ad37e533Smrg	use=ecma+italics,
1191ad37e533Smrg	use=xterm+keypad,
1192ad37e533Smrg	use=xterm-basic,
1193d522f475Smrg#
1194d522f475Smrg# The xterm-new description has all of the features, but is not completely
1195d522f475Smrg# compatible with vt220.  If you are using a Sun or PC keyboard, set the
1196d522f475Smrg# sunKeyboard resource to true:
1197d522f475Smrg#	+ maps the editing keypad
1198d522f475Smrg#	+ interprets control-function-key as a second array of keys, so a
1199d522f475Smrg#	  12-fkey keyboard can support vt220's 20-fkeys.
1200d522f475Smrg#	+ maps numeric keypad "+" to ",".
1201d522f475Smrg#	+ uses DEC-style control sequences for the application keypad.
1202d522f475Smrg#
1203d522f475Smrg# Some packagers modify xterm's resource definitions to provide extra function
1204d522f475Smrg# keys by using the shift-modifier in the translations resource.  However, that
1205d522f475Smrg# interferes with the DECUDK functionality.
1206d522f475Smrg#
1207d522f475Smrgxterm-vt220|xterm emulating vt220,
1208ad37e533Smrg	npc,
1209d522f475Smrg	kcbt=\E[Z,
1210ad37e533Smrg	kcub1=\EOD,
1211ad37e533Smrg	kcud1=\EOB,
1212ad37e533Smrg	kcuf1=\EOC,
1213ad37e533Smrg	kcuu1=\EOA,
1214d522f475Smrg	kend=\E[4~,
1215d522f475Smrg	kent=\EOM,
1216d522f475Smrg	kf10=\E[21~,
1217d522f475Smrg	kf11=\E[23~,
1218d522f475Smrg	kf12=\E[24~,
1219d522f475Smrg	kf13=\E[25~,
1220d522f475Smrg	kf14=\E[26~,
1221d522f475Smrg	kf15=\E[28~,
1222d522f475Smrg	kf16=\E[29~,
1223d522f475Smrg	kf17=\E[31~,
1224d522f475Smrg	kf18=\E[32~,
1225d522f475Smrg	kf19=\E[33~,
1226d522f475Smrg	kf20=\E[34~,
1227d522f475Smrg	kf5=\E[15~,
1228d522f475Smrg	kf6=\E[17~,
1229d522f475Smrg	kf7=\E[18~,
1230d522f475Smrg	kf8=\E[19~,
1231d522f475Smrg	kf9=\E[20~,
1232d522f475Smrg	khome=\E[1~,
1233d522f475Smrg	kich1=\E[2~,
1234ad37e533Smrg	kmous=\E[M,
1235d522f475Smrg	knp=\E[6~,
1236d522f475Smrg	kpp=\E[5~,
1237ad37e533Smrg	nel=\EE,
1238d522f475Smrg	use=xterm+app,
1239d522f475Smrg	use=xterm+edit,
1240ad37e533Smrg	use=vt220+keypad,
1241ad37e533Smrg	use=ecma+italics,
1242ad37e533Smrg	use=ecma+index,
1243ad37e533Smrg	use=ansi+rep,
1244ad37e533Smrg	use=ecma+strikeout,
1245ad37e533Smrg	use=xterm+sm+1006,
1246ad37e533Smrg	use=xterm+tmux,
1247ad37e533Smrg	use=xterm+keypad,
1248d522f475Smrg	use=xterm-basic,
1249d522f475Smrg#
1250d522f475Smrgxterm-vt52|xterm emulating dec vt52,
1251d522f475Smrg	cols#80,
1252d522f475Smrg	it#8,
1253d522f475Smrg	lines#24,
1254913cc679Smrg	acsc=``aaffggjjkkllmmnnooppqqrrs
1255913cc679Smrg	     sttuuvvwwxxyyzz{{||}}~~,
1256d522f475Smrg	bel=^G,
1257d522f475Smrg	clear=\EH\EJ,
1258913cc679Smrg	cr=\r,
1259d522f475Smrg	cub1=\ED,
1260d522f475Smrg	cud1=\EB,
1261d522f475Smrg	cuf1=\EC,
1262913cc679Smrg	cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c,
1263d522f475Smrg	cuu1=\EA,
1264d522f475Smrg	ed=\EJ,
1265d522f475Smrg	el=\EK,
1266d522f475Smrg	home=\EH,
1267d522f475Smrg	ht=^I,
1268913cc679Smrg	ind=\n,
1269d522f475Smrg	kcub1=\ED,
1270d522f475Smrg	kcud1=\EB,
1271d522f475Smrg	kcuf1=\EC,
1272d522f475Smrg	kcuu1=\EA,
1273913cc679Smrg	nel=\r\n,
1274d522f475Smrg	ri=\EI,
1275d522f475Smrg	rmacs=\EG,
1276d522f475Smrg	smacs=\EF,
12770bd37d32Smrg	use=xterm+kbs,
1278f2e35a3aSmrg	use=vt52+keypad,
1279f2e35a3aSmrg
1280f2e35a3aSmrg# from ncurses 6.2:
1281f2e35a3aSmrg# DECScope of course had no "function keys", but this building block assigns
1282f2e35a3aSmrg# the three blank keys at the top of the auxiliary (numeric) keypad, using
1283f2e35a3aSmrg# the same analogy as vt100 (also lacking function-keys).
1284f2e35a3aSmrg#
1285f2e35a3aSmrg# These assignments use the same layout for 0-9 as vt100+keypad; the vt52
1286f2e35a3aSmrg# keypad had its cursor-keys on the right-column as shown -TD
1287f2e35a3aSmrg#   _______________________________________
1288f2e35a3aSmrg#  |   PF1   |   PF2   |   PF3   | c-up    |
1289f2e35a3aSmrg#  |   \EP   |   \EQ   |   \ER   |   \EA   |
1290f2e35a3aSmrg#  |_kf1__k1_|_kf2__k2_|_kf3__k3_|kcuu1_k4_|
1291f2e35a3aSmrg#  |    7         8         9      c-down  |
1292f2e35a3aSmrg#  |   \E?w  |   \E?x  |   \E?y  |   \EB   |
1293f2e35a3aSmrg#  |_kf9__k9_|_kf10_k;_|_kf0__k0_|kcud1____|
1294f2e35a3aSmrg#  |    4    |    5    |    6    | c-right |
1295f2e35a3aSmrg#  |   \E?t  |   \E?u  |   \E?v  |   \EC   |
1296f2e35a3aSmrg#  |_kf5__k5_|_kf6__k6_|_kf7__k7_|kcuf1_k8_|
1297f2e35a3aSmrg#  |    1    |    2    |    3    | c-left  |
1298f2e35a3aSmrg#  |   \E?q  |   \E?r  |   \E?s  |   \ED   |
1299f2e35a3aSmrg#  |_ka1__K1_|_kb2__K2_|_ka3__K3_|kcub1____|
1300f2e35a3aSmrg#  |         0         |   .     |  enter  |
1301f2e35a3aSmrg#  |        \E?p       |  \E?n   |  \E?M   |
1302f2e35a3aSmrg#  |___kc1_______K4____|_kc3__K5_|_kent_@8_|
1303f2e35a3aSmrg#
1304f2e35a3aSmrgvt52+keypad|DECScope auxiliary keypad,
1305f2e35a3aSmrg	ka1=\E?q,
1306f2e35a3aSmrg	ka3=\E?s,
1307f2e35a3aSmrg	kb2=\E?r,
1308f2e35a3aSmrg	kc1=\E?p,
1309f2e35a3aSmrg	kc3=\E?n,
1310f2e35a3aSmrg	kf0=\E?y,
1311f2e35a3aSmrg	kf1=\EP,
1312f2e35a3aSmrg	kf2=\EQ,
1313f2e35a3aSmrg	kf3=\ER,
1314f2e35a3aSmrg	kf5=\E?t,
1315f2e35a3aSmrg	kf6=\E?u,
1316f2e35a3aSmrg	kf7=\E?v,
1317f2e35a3aSmrg	kf8=\E?w,
1318f2e35a3aSmrg	kf9=\E?x,
1319d522f475Smrg#
1320d522f475Smrg# Sun does not number the function keys this way in their sparse termcap; their
1321d522f475Smrg# terminal descriptions ignore the keypads.  kb(7M) states that there are codes
1322d522f475Smrg# reserved for 64 function keys, 16 each in left, right, top and bottom.  Each
1323d522f475Smrg# keyboard type has a different number of function keys in different
1324d522f475Smrg# arrangements.  Using xkeycaps for reference:
1325d522f475Smrg#
1326d522f475Smrg# Type 3:  left 10, top 9, right 15
1327d522f475Smrg# ------
1328d522f475Smrg# kf1-kf9 are XK_F1-XK_F9
1329d522f475Smrg# There is no kf10 on this keyboard type.
1330d522f475Smrg# kf11-kf20 are keysyms XK_L1 through XK_L10.
1331d522f475Smrg# kf31-kf45 are keysyms XK_R1 through XK_R15.
1332d522f475Smrg#
1333d522f475Smrg# However, X's keysymdef.h is hard-coded to make
1334d522f475Smrg#	XK_L1==XK_F11 and
1335d522f475Smrg#	XK_R1==XK_F21,
1336d522f475Smrg# by someone who was unfamiliar with terminal types other than Sun's.  So
1337d522f475Smrg# xterm uses the internal X keysymbols, but the terminfo entry uses the Sun
1338d522f475Smrg# numbering scheme.
1339d522f475Smrg#
1340d522f475Smrg# Type 4:  left 11, top 12, right 15
1341d522f475Smrg# ------
1342d522f475Smrg# The left-keypad contains an unnumbered Help-key.
1343d522f475Smrg# The right-keypad also contains NumLock, Ins, Del, Enter, + and - keys which
1344d522f475Smrg# do not appear to be part of the R-sequence.
1345d522f475Smrg#
1346d522f475Smrg# Type 5:  left 9, top 12, right (more than one keypad)
1347d522f475Smrg# ------
1348d522f475Smrg# These keyboards do not use the same naming convention, look like a hybrid of
1349d522f475Smrg# the type 4 and IBM keyboards.
1350d522f475Smrg#
1351d522f475Smrg# XTerm resources:
1352d522f475Smrg# ---------------
1353d522f475Smrg# Set the modifyFunctionKeys resource to negative (-1) to make it simple to
1354d522f475Smrg# enter the higher function-key values using shift- and control-modifiers.
1355d522f475Smrg#
1356d522f475Smrgxterm-sun|xterm with sun function keys,
1357d522f475Smrg	kb2=\E[218z,
1358d522f475Smrg	kcpy=\E[197z,
1359d522f475Smrg	kcub1=\EOD,
1360d522f475Smrg	kcud1=\EOB,
1361d522f475Smrg	kcuf1=\EOC,
1362d522f475Smrg	kcuu1=\EOA,
1363d522f475Smrg	kdch1=\E[3z,
1364d522f475Smrg	kend=\E[220z,
1365d522f475Smrg	kent=\EOM,
1366d522f475Smrg	kf1=\E[224z,
1367d522f475Smrg	kf10=\E[233z,
1368d522f475Smrg	kf11=\E[192z,
1369d522f475Smrg	kf12=\E[193z,
1370d522f475Smrg	kf13=\E[194z,
1371d522f475Smrg	kf14=\E[195z,
1372d522f475Smrg	kf15=\E[196z,
1373d522f475Smrg	kf17=\E[198z,
1374d522f475Smrg	kf18=\E[199z,
1375d522f475Smrg	kf19=\E[200z,
1376d522f475Smrg	kf2=\E[225z,
1377d522f475Smrg	kf20=\E[201z,
1378d522f475Smrg	kf3=\E[226z,
1379d522f475Smrg	kf31=\E[208z,
1380d522f475Smrg	kf32=\E[209z,
1381d522f475Smrg	kf33=\E[210z,
1382d522f475Smrg	kf34=\E[211z,
1383d522f475Smrg	kf35=\E[212z,
1384d522f475Smrg	kf36=\E[213z,
1385d522f475Smrg	kf38=\E[215z,
1386d522f475Smrg	kf4=\E[227z,
1387d522f475Smrg	kf40=\E[217z,
1388d522f475Smrg	kf42=\E[219z,
1389d522f475Smrg	kf44=\E[221z,
1390d522f475Smrg	kf45=\E[222z,
1391d522f475Smrg	kf46=\E[234z,
1392d522f475Smrg	kf47=\E[235z,
1393d522f475Smrg	kf5=\E[228z,
1394d522f475Smrg	kf6=\E[229z,
1395d522f475Smrg	kf7=\E[230z,
1396d522f475Smrg	kf8=\E[231z,
1397d522f475Smrg	kf9=\E[232z,
1398d522f475Smrg	kfnd=\E[200z,
1399d522f475Smrg	khlp=\E[196z,
1400d522f475Smrg	khome=\E[214z,
1401d522f475Smrg	kich1=\E[2z,
1402d522f475Smrg	knp=\E[222z,
1403d522f475Smrg	kpp=\E[216z,
1404d522f475Smrg	kund=\E[195z,
1405a5ae21e4Smrg	use=xterm+nopcfkeys,
1406ad37e533Smrg	use=xterm+nofkeys,
1407a5ae21e4Smrg
1408a5ae21e4Smrg# Note: normally xterm supports modified function-keys as described in
1409a5ae21e4Smrg#	XTerm - "Other" modified keys
1410a5ae21e4Smrg#	https://invisible-island.net/xterm/modified-keys.html
1411a5ae21e4Smrg#
1412a5ae21e4Smrg# However, xterm-hp, xterm-sco and xterm-sun assume no modifiers.  Here is
1413a5ae21e4Smrg# a simple script which demonstrates these descriptions:
1414a5ae21e4Smrg#	#!/bin/sh
1415a5ae21e4Smrg#	export TERM=xterm-$1
1416a5ae21e4Smrg#	xterm \
1417a5ae21e4Smrg#		-kt $1 \
1418a5ae21e4Smrg#		-fs 16 -fa mono \
1419a5ae21e4Smrg#		-title $TERM \
1420a5ae21e4Smrg#		-tn $TERM \
1421a5ae21e4Smrg#		-xrm '*modifyCursorKeys:-1' \
1422a5ae21e4Smrg#		-xrm '*modifyFunctionKeys:-1' \
1423a5ae21e4Smrg#		-e tack
1424a5ae21e4Smrg# e.g., "foo sun" if the script is named "foo" -TD
1425a5ae21e4Smrg
1426d522f475Smrgxterm-hp|xterm with hpterm function keys,
1427d522f475Smrg	kclr=\EJ,
1428d522f475Smrg	kcub1=\ED,
1429d522f475Smrg	kcud1=\EB,
1430d522f475Smrg	kcuf1=\EC,
1431d522f475Smrg	kcuu1=\EA,
1432d522f475Smrg	kdch1=\EP,
1433d522f475Smrg	kend=\EF,
1434d522f475Smrg	kf1=\Ep,
1435d522f475Smrg	kf2=\Eq,
1436d522f475Smrg	kf3=\Er,
1437d522f475Smrg	kf4=\Es,
1438d522f475Smrg	kf5=\Et,
1439d522f475Smrg	kf6=\Eu,
1440d522f475Smrg	kf7=\Ev,
1441d522f475Smrg	kf8=\Ew,
1442d522f475Smrg	khome=\Eh,
1443d522f475Smrg	kich1=\EQ,
1444d522f475Smrg	knp=\ES,
1445d522f475Smrg	kpp=\ET,
1446ad37e533Smrg	use=xterm+nofkeys,
1447a5ae21e4Smrg	use=xterm+nopcfkeys,
1448d522f475Smrg#
1449d522f475Smrg# scoterm implements 48 function-keys using shift- and control-modifiers to
1450d522f475Smrg# multiple 12 function-keys.  X has a hard-coded limit of 35 function-keys,
1451d522f475Smrg# but xterm can represent larger values.
1452d522f475Smrg#
1453d522f475Smrg# XTerm resources:
1454d522f475Smrg# ---------------
1455d522f475Smrg# Set the modifyFunctionKeys resource to negative (-1) to make it simple to
1456d522f475Smrg# enter the higher function-key values using shift- and control-modifiers.
1457d522f475Smrg#
1458d522f475Smrg# Also, set ctrlFKeys resource to 12 (the default is 10) to make xterm see 48
1459d522f475Smrg# function-keys on a keyboard with 12 function-keys and 4 control/shift
1460d522f475Smrg# modifier combinations.
1461d522f475Smrg#
1462d522f475Smrgxterm-sco|xterm with SCO function keys,
1463d522f475Smrg	kbeg=\E[E,
1464913cc679Smrg	kdch1=^?,
1465d522f475Smrg	kf1=\E[M,
1466d522f475Smrg	kf10=\E[V,
1467d522f475Smrg	kf11=\E[W,
1468d522f475Smrg	kf12=\E[X,
1469d522f475Smrg	kf13=\E[Y,
1470d522f475Smrg	kf14=\E[Z,
1471d522f475Smrg	kf15=\E[a,
1472d522f475Smrg	kf16=\E[b,
1473d522f475Smrg	kf17=\E[c,
1474d522f475Smrg	kf18=\E[d,
1475d522f475Smrg	kf19=\E[e,
1476d522f475Smrg	kf2=\E[N,
1477d522f475Smrg	kf20=\E[f,
1478d522f475Smrg	kf21=\E[g,
1479d522f475Smrg	kf22=\E[h,
1480d522f475Smrg	kf23=\E[i,
1481d522f475Smrg	kf24=\E[j,
1482d522f475Smrg	kf25=\E[k,
1483d522f475Smrg	kf26=\E[l,
1484d522f475Smrg	kf27=\E[m,
1485d522f475Smrg	kf28=\E[n,
1486d522f475Smrg	kf29=\E[o,
1487d522f475Smrg	kf3=\E[O,
1488d522f475Smrg	kf30=\E[p,
1489d522f475Smrg	kf31=\E[q,
1490d522f475Smrg	kf32=\E[r,
1491d522f475Smrg	kf33=\E[s,
1492d522f475Smrg	kf34=\E[t,
1493d522f475Smrg	kf35=\E[u,
1494d522f475Smrg	kf36=\E[v,
1495d522f475Smrg	kf37=\E[w,
1496d522f475Smrg	kf38=\E[x,
1497d522f475Smrg	kf39=\E[y,
1498d522f475Smrg	kf4=\E[P,
1499d522f475Smrg	kf40=\E[z,
1500d522f475Smrg	kf41=\E[@,
1501d522f475Smrg	kf42=\E[[,
1502d522f475Smrg	kf43=\E[\\,
1503d522f475Smrg	kf44=\E[],
1504d522f475Smrg	kf45=\E[\^,
1505d522f475Smrg	kf46=\E[_,
1506d522f475Smrg	kf47=\E[`,
1507d522f475Smrg	kf48=\E[{,
1508d522f475Smrg	kf5=\E[Q,
1509d522f475Smrg	kf6=\E[R,
1510d522f475Smrg	kf7=\E[S,
1511d522f475Smrg	kf8=\E[T,
1512d522f475Smrg	kf9=\E[U,
1513d522f475Smrg	kich1=\E[L,
1514d522f475Smrg	kmous=\E[>M,
1515d522f475Smrg	knp=\E[G,
1516d522f475Smrg	kpp=\E[I,
1517d522f475Smrg	use=xterm+noapp,
1518ad37e533Smrg	use=xterm+nofkeys,
1519d522f475Smrg#
1520d522f475Smrg# Other variants (these are all very old entries, from X11R5):
1521d522f475Smrgxterm-24|xterms|vs100|xterm terminal emulator (X Window System),
1522d522f475Smrg	lines#24,
1523d522f475Smrg	use=xterm-old,
1524d522f475Smrgxterm-65|xterm with tall window 65x80 (X Window System),
1525d522f475Smrg	lines#65,
1526d522f475Smrg	use=xterm-old,
1527d522f475Smrgxterm-bold|xterm with bold instead of underline (X Window System),
1528913cc679Smrg	sgr=
1529913cc679Smrg		%?
1530913cc679Smrg			%p9
1531913cc679Smrg			%t\016
1532913cc679Smrg		%e
1533913cc679Smrg			\017
1534913cc679Smrg		%;
1535913cc679Smrg		B\E[0
1536913cc679Smrg		%?
1537913cc679Smrg			%p6
1538913cc679Smrg			%t;1
1539913cc679Smrg		%;
1540913cc679Smrg		%?
1541913cc679Smrg			%p2
1542913cc679Smrg			%t;1
1543913cc679Smrg		%;
1544913cc679Smrg		%?
15454419d26bSmrg			%p1
15464419d26bSmrg			%p3%|
1547913cc679Smrg			%t;7
1548913cc679Smrg		%;
1549913cc679Smrg		m,
1550d522f475Smrg	smso=\E[7m,
1551d522f475Smrg	smul=\E[1m,
1552d522f475Smrg	use=xterm-old,
1553d522f475Smrgxterm-boldso|xterm with bold for standout (X Window System),
1554d522f475Smrg	rmso=\E[m,
1555d522f475Smrg	smso=\E[1m,
1556d522f475Smrg	use=xterm-old,
1557d522f475Smrgxterm-mono|monochrome xterm,
1558d522f475Smrg	use=xterm-old,
1559d522f475Smrg#
1560d522f475Smrg# VTxxx terminals are usually set up so that full-screen applications will use
1561d522f475Smrg# the cursor application mode strings.  This is good for full-screen
1562d522f475Smrg# applications, including legacy applications which may have hard-coded
1563d522f475Smrg# behavior, but bad for interactive shells (e.g., tcsh, bash) which use arrow
1564d522f475Smrg# keys to scroll through a history of command strings.
1565d522f475Smrg#
1566d522f475Smrg# To see the difference between normal/application modes, consider this example:
1567d522f475Smrg#	+ In normal (non-application) mode, the terminal transmits a down-arrow
1568d522f475Smrg#	  as \E[C, which happens to echo as a down-arrow.
1569d522f475Smrg#	+ In application mode the terminal transmits \EOC, which echoes as C.
1570d522f475Smrg#	  That is because the \EO is the SS3 control, which says to use the
1571d522f475Smrg#	  character from the G3 character set for the next cell.
1572d522f475Smrg#
1573d522f475Smrg# One example of hard-coded behavior would be for applications written to work
1574d522f475Smrg# with VT52 and VT100 terminals.  If the application's parser ignores 'O' and
1575d522f475Smrg# '?' characters after the escape, then the cursor and keypad strings for the
1576d522f475Smrg# two terminals are the same.  (Indeed, one of the first curses applications
1577d522f475Smrg# which I used did something like this to cover "ANSI" terminals -TD).
1578d522f475Smrg#
1579d522f475Smrg# To make this work (leaving the cursor keys in normal mode), we have to adjust
1580d522f475Smrg# the terminal initialization sequences:
1581d522f475Smrg#
1582d522f475Smrg#	smkx/rmkx set/reset the cursor and keypad application modes.  We retain
1583d522f475Smrg#		the latter (otherwise many applications fail).
1584d522f475Smrg#
1585d522f475Smrg#	smcup/rmcup set/restore cursor-addressing mode for full-screen
1586d522f475Smrg#		applications.  For xterm, this normally means the alternate
1587d522f475Smrg#		screen, which is not compatible with interactive shells.  Some
1588d522f475Smrg#		programs are "smart" and disable these.
1589d522f475Smrg#
1590d522f475Smrgxterm-noapp|xterm with cursor keys in normal mode,
1591d522f475Smrg	rmcup@,
1592d522f475Smrg	rmkx=\E>,
1593d522f475Smrg	smcup@,
1594d522f475Smrg	smkx=\E=,
1595d522f475Smrg	use=xterm+noapp,
1596d522f475Smrg	use=xterm,
1597d522f475Smrg
1598d522f475Smrgxterm+noapp|fragment with cursor keys in normal mode,
1599d522f475Smrg	kcub1=\E[D,
1600d522f475Smrg	kcud1=\E[B,
1601d522f475Smrg	kcuf1=\E[C,
1602d522f475Smrg	kcuu1=\E[A,
1603d522f475Smrg	use=xterm+noapp+pc,
1604d522f475Smrg
1605d522f475Smrgxterm+app|fragment with cursor keys in application mode,
1606d522f475Smrg	kcub1=\EOD,
1607d522f475Smrg	kcud1=\EOB,
1608d522f475Smrg	kcuf1=\EOC,
1609d522f475Smrg	kcuu1=\EOA,
1610d522f475Smrg	use=xterm+app+pc,
1611d522f475Smrg
1612d522f475Smrgxterm+noapp+pc|fragment for noapp pc-style home/end,
1613d522f475Smrg	kend=\E[F,
1614d522f475Smrg	khome=\E[H,
1615d522f475Smrg
1616d522f475Smrgxterm+app+pc|fragment for app pc-style home/end,
1617d522f475Smrg	kend=\EOF,
1618d522f475Smrg	khome=\EOH,
1619d522f475Smrg
1620d522f475Smrgxterm+edit|fragment for 6-key editing-keypad,
1621d522f475Smrg	kdch1=\E[3~,
1622d522f475Smrg	kich1=\E[2~,
1623d522f475Smrg	knp=\E[6~,
1624d522f475Smrg	kpp=\E[5~,
1625d522f475Smrg	use=xterm+pc+edit,
1626d522f475Smrg
1627d522f475Smrgxterm+decedit|fragment for vt220 6-key editing-keypad,
1628d522f475Smrg	kdch1=\E[3~,
1629d522f475Smrg	kich1=\E[2~,
1630d522f475Smrg	knp=\E[6~,
1631d522f475Smrg	kpp=\E[5~,
1632d522f475Smrg	use=xterm+vt+edit,
1633d522f475Smrg
1634d522f475Smrgxterm+pc+edit|fragment for pc-style editing keypad,
1635d522f475Smrg	kend=\E[4~,
1636d522f475Smrg	khome=\E[1~,
1637d522f475Smrg
1638d522f475Smrgxterm+vt+edit|fragment for vt220-style editing keypad,
1639d522f475Smrg	kfnd=\E[1~,
1640d522f475Smrg	kslt=\E[4~,
1641d522f475Smrg
1642f2e35a3aSmrgxterm+noalt|xterm without altscreen,
1643f2e35a3aSmrg	rmcup@,
1644f2e35a3aSmrg	smcup@,
1645f2e35a3aSmrg
1646f2e35a3aSmrgxterm+alt1049|xterm 90 feature,
1647f2e35a3aSmrg	rmcup=\E[?1049l,
1648f2e35a3aSmrg	smcup=\E[?1049h,
1649f2e35a3aSmrg
1650f2e35a3aSmrgxterm+titlestack|xterm 251 feature,
1651f2e35a3aSmrg	rmcup=\E[23;0;0t,
1652f2e35a3aSmrg	smcup=\E[22;0;0t,
1653f2e35a3aSmrg
1654f2e35a3aSmrgxterm+alt+title|xterm 90 and 251 features combined,
1655f2e35a3aSmrg	rmcup=\E[?1049l\E[23;0;0t,
1656f2e35a3aSmrg	smcup=\E[?1049h\E[22;0;0t,
1657f2e35a3aSmrg
1658a5ae21e4Smrg# The xterm ctrlFKeys resource defaults to 10, so without the "pc-style"
1659a5ae21e4Smrg# feature, e.g., setting the modifyCursorKeys and modifyFunctionKeys resources
1660a5ae21e4Smrg# to -1 to disable them, one gets 42 function-keys on a 12-function-key
1661a5ae21e4Smrg# keyboard, e.g.,
1662a5ae21e4Smrg# kf1                   = \E[11~
1663a5ae21e4Smrg# kf11 shift f1         = \E[23~
1664a5ae21e4Smrg# kf21 control f1       = \E[42~
1665a5ae21e4Smrg# kf31 shift control f1 = \E[52~
1666a5ae21e4Smrgxterm+nopcfkeys|fragment without PC-style fkeys,
1667a5ae21e4Smrg	kf1=\E[11~,
1668a5ae21e4Smrg	kf10=\E[21~,
1669a5ae21e4Smrg	kf11=\E[23~,
1670a5ae21e4Smrg	kf12=\E[24~,
1671a5ae21e4Smrg	kf13=\E[25~,
1672a5ae21e4Smrg	kf14=\E[26~,
1673a5ae21e4Smrg	kf15=\E[28~,
1674a5ae21e4Smrg	kf16=\E[29~,
1675a5ae21e4Smrg	kf17=\E[31~,
1676a5ae21e4Smrg	kf18=\E[32~,
1677a5ae21e4Smrg	kf19=\E[33~,
1678a5ae21e4Smrg	kf2=\E[12~,
1679a5ae21e4Smrg	kf20=\E[34~,
1680a5ae21e4Smrg	kf21=\E[42~,
1681a5ae21e4Smrg	kf22=\E[43~,
1682a5ae21e4Smrg	kf23=\E[44~,
1683a5ae21e4Smrg	kf24=\E[45~,
1684a5ae21e4Smrg	kf25=\E[46~,
1685a5ae21e4Smrg	kf26=\E[47~,
1686a5ae21e4Smrg	kf27=\E[48~,
1687a5ae21e4Smrg	kf28=\E[49~,
1688a5ae21e4Smrg	kf29=\E[50~,
1689a5ae21e4Smrg	kf3=\E[13~,
1690a5ae21e4Smrg	kf30=\E[51~,
1691a5ae21e4Smrg	kf31=\E[52~,
1692a5ae21e4Smrg	kf32=\E[53~,
1693a5ae21e4Smrg	kf33=\E[54~,
1694a5ae21e4Smrg	kf34=\E[55~,
1695a5ae21e4Smrg	kf35=\E[56~,
1696a5ae21e4Smrg	kf36=\E[57~,
1697a5ae21e4Smrg	kf37=\E[58~,
1698a5ae21e4Smrg	kf38=\E[59~,
1699a5ae21e4Smrg	kf39=\E[60~,
1700a5ae21e4Smrg	kf4=\E[14~,
1701a5ae21e4Smrg	kf40=\E[61~,
1702a5ae21e4Smrg	kf41=\E[62~,
1703a5ae21e4Smrg	kf42=\E[63~,
1704a5ae21e4Smrg	kf5=\E[15~,
1705a5ae21e4Smrg	kf6=\E[17~,
1706a5ae21e4Smrg	kf7=\E[18~,
1707a5ae21e4Smrg	kf8=\E[19~,
1708a5ae21e4Smrg	kf9=\E[20~,
1709a5ae21e4Smrg
1710f2e35a3aSmrg# from development after ncurses 6.1:
1711f2e35a3aSmrg# Xterm's emulation of the VT100 numeric keypad on a PC-keyboard runs into the
1712f2e35a3aSmrg# problem that the keypad layout is different, and that the natural choice for
1713f2e35a3aSmrg# PF1 is NumLock (which happens to be reserved for other use).  To work around
1714f2e35a3aSmrg# that, PF1-PF4 are emulated via F1-F4, which leaves the "/", "*" and "+" not
1715f2e35a3aSmrg# directly related to VT100.
1716f2e35a3aSmrg#
1717f2e35a3aSmrg# With the VT220 keypad block that uses the 1-9 keys as suggested in
1718f2e35a3aSmrg# terminfo(5), the other keys can be handled with user-defined capabilities:
1719f2e35a3aSmrg#
1720f2e35a3aSmrg#   _______________________________________
1721f2e35a3aSmrg#  | NumLock |    /    |    *    |    -    |
1722f2e35a3aSmrg#  |         |   $Oo   |   $Oj   |   $OS   |
1723f2e35a3aSmrg#  |_________|__kpDIV__|__kpMUL__|__kpSUB__|
1724a5ae21e4Smrg#  |    7         8         9    |    +    |
1725a5ae21e4Smrg#  |   $Ow   |   $Ox   |   $Oy   |   $Ok   |
1726a5ae21e4Smrg#  |_ka1__K1_|_________|_ka3__K3_|  kpADD  |
1727a5ae21e4Smrg#  |    4    |    5    |    6    |         |
1728f2e35a3aSmrg#  |   $Ot   |   $Ou   |   $Ov   |         |
1729f2e35a3aSmrg#  |_________|_kb2__K2_|_________|_________|
1730f2e35a3aSmrg#  |    1    |    2    |    3    |         |
1731f2e35a3aSmrg#  |   $Oq   |   $Or   |   $Os   |         |
1732f2e35a3aSmrg#  |_kc1__K4_|_________|_kc3__K5_|  enter  |
1733a5ae21e4Smrg#  |         0         |    .    |   $OM   |
1734a5ae21e4Smrg#  |        $Op        |   $On   |         |
1735a5ae21e4Smrg#  |_______kpZRO_______|__kpDOT__|_kent_@8_|
1736a5ae21e4Smrg#
1737a5ae21e4Smrg# ka2, kb1, kb3 and kc2 are extensions, as are the mixed-case names.
1738a5ae21e4Smrg# There are no termcap equivalents for these extensions.
1739a5ae21e4Smrg#
1740a5ae21e4Smrg# kpCMA (comma) is used here for the VT100 keypad, which xterm emulates with
1741a5ae21e4Smrg# shifted-keypad-plus, though normally that invokes a font-size change.
1742a5ae21e4Smrg#
1743a5ae21e4Smrg# Old versions of xterm, e.g., xterm-xfree86, documented \EOE as kb2, which
1744a5ae21e4Smrg# does not fit into this layout.  The extension kp5 fits, but is not visible
1745a5ae21e4Smrg# to termcap applications.  As an alternative, kbeg (which does have a termcap
1746a5ae21e4Smrg# equivalent) is provided.
1747a5ae21e4Smrg
1748f2e35a3aSmrgxterm+keypad|xterm emulating VT100/VT220 numeric keypad,
17494419d26bSmrg	kbeg=\EOE,
1750f2e35a3aSmrg	kp5=\EOE,
1751f2e35a3aSmrg	kpADD=\EOk,
1752f2e35a3aSmrg	kpCMA=\EOl,
1753f2e35a3aSmrg	kpDIV=\EOo,
1754f2e35a3aSmrg	kpDOT=\EOn,
1755f2e35a3aSmrg	kpMUL=\EOj,
1756f2e35a3aSmrg	kpSUB=\EOm,
1757f2e35a3aSmrg	kpZRO=\EOp,
1758f2e35a3aSmrg	use=vt220+keypad,
1759f2e35a3aSmrg
1760f2e35a3aSmrg# from development after ncurses 5.2:
1761f2e35a3aSmrg# A better adaptation to modern keyboards such as the PC's, which have a dozen
1762f2e35a3aSmrg# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to
1763f2e35a3aSmrg# use the 5-key arrangement to model the arrow keys as suggested in the
1764f2e35a3aSmrg# terminfo guidelines:
1765f2e35a3aSmrg#   _______________________________________
1766f2e35a3aSmrg#  |   PF1   |   PF2   |   PF3   |   PF4   |
1767f2e35a3aSmrg#  |   $OP   |   $OQ   |   $OR   |   $OS   |
1768f2e35a3aSmrg#  |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
1769f2e35a3aSmrg#  |    7         8         9         -    |
1770f2e35a3aSmrg#  |   $Ow   |   $Ox   |   $Oy   |   $Om   |
1771f2e35a3aSmrg#  |_ka1__K1_|_________|_ka3__K3_|_________|
1772f2e35a3aSmrg#  |    4    |    5    |    6    |    ,    |
1773f2e35a3aSmrg#  |   $Ot   |   $Ou   |   $Ov   |   $Ol   |
1774f2e35a3aSmrg#  |_________|_kb2__K2_|_________|_________|
1775f2e35a3aSmrg#  |    1    |    2    |    3    |         |
1776f2e35a3aSmrg#  |   $Oq   |   $Or   |   $Os   |  enter  |
1777f2e35a3aSmrg#  |_kc1__K4_|_________|_kc3__K5_|  $OM    |
1778f2e35a3aSmrg#  |         0         |   .     |         |
1779f2e35a3aSmrg#  |        $Op        |  $On    |         |
1780f2e35a3aSmrg#  |___________________|_________|_kent_@8_|
1781f2e35a3aSmrgvt220+keypad|dec vt220 numeric keypad,
1782f2e35a3aSmrg	ka1=\EOw,
1783f2e35a3aSmrg	ka3=\EOy,
1784f2e35a3aSmrg	kb2=\EOu,
1785f2e35a3aSmrg	kc1=\EOq,
1786f2e35a3aSmrg	kc3=\EOs,
1787f2e35a3aSmrg	kent=\EOM,
1788f2e35a3aSmrg	kf1=\EOP,
1789f2e35a3aSmrg	kf2=\EOQ,
1790f2e35a3aSmrg	kf3=\EOR,
1791f2e35a3aSmrg	kf4=\EOS,
1792f2e35a3aSmrg	ka2=\EOx,
1793f2e35a3aSmrg	kb1=\EOt,
1794f2e35a3aSmrg	kb3=\EOv,
1795f2e35a3aSmrg	kc2=\EOr,
1796d522f475Smrg#
1797d522f475Smrg# This should work for the commonly used "color xterm" variations (XFree86
1798d522f475Smrg# xterm, color_xterm, nxterm, rxvt).  Note that it does not set 'bce', so for
1799d522f475Smrg# XFree86 and and rxvt, some applications that use colors will be less
1800d522f475Smrg# efficient, and in a few special cases (with "smart" optimization) the wrong
1801d522f475Smrg# color will be painted in spots.
1802d522f475Smrgxterm-color|generic "ANSI" color xterm (X Window System),
1803d522f475Smrg	colors#8,
1804d522f475Smrg	ncv@,
1805d522f475Smrg	pairs#64,
1806d522f475Smrg	op=\E[m,
1807d522f475Smrg	setab=\E[4%p1%dm,
1808d522f475Smrg	setaf=\E[3%p1%dm,
1809d522f475Smrg	use=xterm-r6,
1810d522f475Smrg#
1811d522f475Smrg# vi may work better with this entry, because vi
1812d522f475Smrg# doesn't use insert mode much
1813d522f475Smrgxterm-ic|xterm-vi|xterm with insert character instead of insert mode,
1814d522f475Smrg	mir@,
1815d522f475Smrg	ich=\E[%p1%d@,
1816d522f475Smrg	ich1=\E[@,
1817d522f475Smrg	rmir@,
1818d522f475Smrg	smir@,
1819d522f475Smrg	use=xterm,
1820d522f475Smrg#
1821d522f475Smrg# This is used only for testing (it's not relevant to DEC VTxxx terminals, but
1822d522f475Smrg# to ncurses).
1823d522f475Smrgxterm-xmc|xterm with magic-cookie glitch,
1824d522f475Smrg	xmc#1,
1825d522f475Smrg	use=xterm-new,
1826d522f475Smrg#
1827f2e35a3aSmrg# This one was originally for testing ncurses.  While the ISO 6429 defines the
1828f2e35a3aSmrg# REP control, none of the DEC VTxxx terminals (VT52 through VT525) support it.
1829f2e35a3aSmrg#
1830f2e35a3aSmrg# The feature's inclusion in xterm was prompted by changes in ncurses to
1831f2e35a3aSmrg# support testing repeat_char by Alexander Lukyanov, since no readily-available
1832f2e35a3aSmrg# terminal supported this:
1833f2e35a3aSmrg#
1834f2e35a3aSmrg# + Alexander's patch was integrated in ncurses 1996/09/28
1835f2e35a3aSmrg# + xterm patch #32 1996/11/21 was released in XFree86 3.2A 1997/01/26
1836f2e35a3aSmrg#
1837f2e35a3aSmrg# In July 2017, the feature was added to xterm-new in ncurses, making this
1838f2e35a3aSmrg# entry obsolete (but it is kept for reference).
1839d522f475Smrgxterm-rep|xterm with repeat-character control,
1840d522f475Smrg	rep=%p1%c\E[%p2%{1}%-%db,
1841d522f475Smrg	use=xterm-new,
1842d522f475Smrg#
1843d522f475Smrg# This is mainly for testing xterm; the real VT220 will not let you switch
1844d522f475Smrg# character sets without first altering the keyboard language in the setup
1845d522f475Smrg# screen.  Some emulators allow this anyway.  (Note that these strings are
1846d522f475Smrg# normally used only for printers).  The parameter to csnm and scs is the same
1847d522f475Smrg# in both cases:  the keyboard language parameter returned by CSI ? 2 6 n.
1848d522f475Smrgxterm-nrc|xterm with VT220 national replacement character sets,
1849913cc679Smrg	csnm=
1850913cc679Smrg		%?
1851913cc679Smrg			%p1%{1}%=
1852913cc679Smrg			%tNorth\sAmerican
1853913cc679Smrg		%e
1854913cc679Smrg			%p1%{2}%=
1855913cc679Smrg			%tBritish
1856913cc679Smrg		%e
1857913cc679Smrg			%p1%{3}%=
1858913cc679Smrg			%tFlemish
1859913cc679Smrg		%e
1860913cc679Smrg			%p1%{4}%=
1861913cc679Smrg			%tFrench\sCanadian
1862913cc679Smrg		%e
1863913cc679Smrg			%p1%{5}%=
1864913cc679Smrg			%tDanish
1865913cc679Smrg		%e
1866913cc679Smrg			%p1%{6}%=
1867913cc679Smrg			%tFinnish
1868913cc679Smrg		%e
1869913cc679Smrg			%p1%{7}%=
1870913cc679Smrg			%tGerman
1871913cc679Smrg		%e
1872913cc679Smrg			%p1%{8}%=
1873913cc679Smrg			%tDutch
1874913cc679Smrg		%e
1875913cc679Smrg			%p1%{9}%=
1876913cc679Smrg			%tItalian
1877913cc679Smrg		%e
1878913cc679Smrg			%p1%{10}%=
1879913cc679Smrg			%tSwiss\s(French)
1880913cc679Smrg		%e
1881913cc679Smrg			%p1%{11}%=
1882913cc679Smrg			%tSwiss\s(German)
1883913cc679Smrg		%e
1884913cc679Smrg			%p1%{12}%=
1885913cc679Smrg			%tSwedish
1886913cc679Smrg		%e
1887913cc679Smrg			%p1%{13}%=
1888913cc679Smrg			%tNorwegian
1889913cc679Smrg		%e
1890913cc679Smrg			%p1%{14}%=
1891913cc679Smrg			%tFrench/Belgian
1892913cc679Smrg		%e
1893913cc679Smrg			%p1%{15}%=
1894913cc679Smrg			%tSpanish
1895913cc679Smrg		%;,
1896913cc679Smrg	scs=
1897913cc679Smrg		%?
1898913cc679Smrg			%p1%{1}%=
1899913cc679Smrg			%t\E(B
1900913cc679Smrg		%e
1901913cc679Smrg			%p1%{2}%=
1902913cc679Smrg			%t\E(A
1903913cc679Smrg		%e
1904913cc679Smrg			%p1%{3}%=
1905913cc679Smrg			%t\E(R
1906913cc679Smrg		%e
1907913cc679Smrg			%p1%{4}%=
1908913cc679Smrg			%t\E(9
1909913cc679Smrg		%e
1910913cc679Smrg			%p1%{5}%=
1911913cc679Smrg			%t\E(E
1912913cc679Smrg		%e
1913913cc679Smrg			%p1%{6}%=
1914913cc679Smrg			%t\E(5
1915913cc679Smrg		%e
1916913cc679Smrg			%p1%{7}%=
1917913cc679Smrg			%t\E(K
1918913cc679Smrg		%e
1919913cc679Smrg			%p1%{8}%=
1920913cc679Smrg			%t\E(4
1921913cc679Smrg		%e
1922913cc679Smrg			%p1%{9}%=
1923913cc679Smrg			%t\E(Y
1924913cc679Smrg		%e
1925913cc679Smrg			%p1%{10}%=
1926913cc679Smrg			%t\E(=
1927913cc679Smrg		%e
1928913cc679Smrg			%p1%{11}%=
1929913cc679Smrg			%t\E(=
1930913cc679Smrg		%e
1931913cc679Smrg			%p1%{12}%=
1932913cc679Smrg			%t\E(7
1933913cc679Smrg		%e
1934913cc679Smrg			%p1%{13}%=
1935913cc679Smrg			%t\E(E
1936913cc679Smrg		%e
1937913cc679Smrg			%p1%{14}%=
1938913cc679Smrg			%t\E(R
1939913cc679Smrg		%e
1940913cc679Smrg			%p1%{15}%=
1941913cc679Smrg			%t\E(Z
1942913cc679Smrg		%;,
1943d522f475Smrg	use=xterm-new,
1944d522f475Smrg#
1945d522f475Smrg# Foreground 0-15 maps (with toggles) into 30-37 & 90-97
1946d522f475Smrg# Background 0-15 maps (with toggles) into 40-47 & 100-107
1947d522f475Smrg#
1948d522f475Smrg# Originally I suppressed setaf/setab, since ANSI specifies only 8 colors, but
1949d522f475Smrg# Stephen Marley persuaded me to allow the "ANSI" color controls to extend to
1950d522f475Smrg# 16 colors.  (Note that ncurses 4.2 uses setf/setb from this description;
1951d522f475Smrg# however 5.0 selects either according to their availability).  - T.Dickey
1952d522f475Smrg#
1953d522f475Smrg# SVr4 curses does not use more than 8 colors anyway, so using 16 colors is
1954d522f475Smrg# either for terminfo-level applications or via ncurses.
1955d522f475Smrgxterm-16color|xterm with 16 colors,
1956d522f475Smrg	colors#16,
1957913cc679Smrg	pairs#0x100,
1958913cc679Smrg	setab=\E[
1959913cc679Smrg		%?
1960913cc679Smrg			%p1%{8}%<
19614419d26bSmrg			%t
19624419d26bSmrg			%p1%{40}%+
1963913cc679Smrg		%e
1964913cc679Smrg			%p1%{92}%+
1965913cc679Smrg		%;
1966913cc679Smrg		%dm,
1967913cc679Smrg	setaf=\E[
1968913cc679Smrg		%?
1969913cc679Smrg			%p1%{8}%<
19704419d26bSmrg			%t
19714419d26bSmrg			%p1%{30}%+
1972913cc679Smrg		%e
1973913cc679Smrg			%p1%{82}%+
1974913cc679Smrg		%;
1975913cc679Smrg		%dm,
1976913cc679Smrg	setb=
19774419d26bSmrg		%p1%{8}%/%{6}%*%{4}%+\E[%d
19784419d26bSmrg		%p1%{8}%m%Pa
1979913cc679Smrg		%?%ga%{1}%=
1980913cc679Smrg			%t4
1981913cc679Smrg		%e%ga%{3}%=
1982913cc679Smrg			%t6
1983913cc679Smrg		%e%ga%{4}%=
1984913cc679Smrg			%t1
1985913cc679Smrg		%e%ga%{6}%=
1986913cc679Smrg			%t3
1987913cc679Smrg		%e%ga%d
1988913cc679Smrg		%;
1989913cc679Smrg		m,
1990913cc679Smrg	setf=
19914419d26bSmrg		%p1%{8}%/%{6}%*%{3}%+\E[%d
19924419d26bSmrg		%p1%{8}%m%Pa
1993913cc679Smrg		%?%ga%{1}%=
1994913cc679Smrg			%t4
1995913cc679Smrg		%e%ga%{3}%=
1996913cc679Smrg			%t6
1997913cc679Smrg		%e%ga%{4}%=
1998913cc679Smrg			%t1
1999913cc679Smrg		%e%ga%{6}%=
2000913cc679Smrg			%t3
2001913cc679Smrg		%e%ga%d
2002913cc679Smrg		%;
2003913cc679Smrg		m,
2004f2e35a3aSmrg	use=xterm+256color2,
2005f2e35a3aSmrg	use=xterm+osc104,
2006d522f475Smrg	use=xterm-new,
2007f2e35a3aSmrg
2008f2e35a3aSmrg# xterm OSC 104 resets the color palette.  Using it as part of xterm+256color
2009f2e35a3aSmrg# has the drawback that some of the xterm-alikes which use that building block
2010f2e35a3aSmrg# require a different approach to rs1 -TD
2011f2e35a3aSmrgxterm+osc104|reset color palette,
2012f2e35a3aSmrg	oc=\E]104\007,
2013f2e35a3aSmrg	rs1=\Ec\E]104\007,
2014f2e35a3aSmrg
2015f2e35a3aSmrg# "indexed color" is mentioned without definition in ISO 8613-6 (ITU T.416).
2016f2e35a3aSmrg#
2017f2e35a3aSmrg# This implementation uses a 256-element color map where the first 16 entries
2018f2e35a3aSmrg# are shared with the aixterm-compatible colors (and in turn the first 8 are
2019f2e35a3aSmrg# shared with the ANSI colors).  The three levels (256, 16, 8) account for the
2020f2e35a3aSmrg# use of a conditional expression in setaf/setab which reduces the number of
2021f2e35a3aSmrg# characters sent to the screen for typical applications.
2022f2e35a3aSmrg#
2023f2e35a3aSmrg# 256 colors should give 65536 pairs, but SVr4 (legacy) terminfo stores numbers
2024f2e35a3aSmrg# in a signed short.  Most people will not notice problems with only 32767
2025f2e35a3aSmrg# pairs.  With ncurses 6.1, numbers are stored in a signed integer (at least
2026f2e35a3aSmrg# 32-bits), and the inconsistency regarding pairs is eliminated.
2027f2e35a3aSmrgxterm+256color|original xterm 256-color feature,
2028d522f475Smrg	ccc,
2029913cc679Smrg	colors#0x100,
2030f2e35a3aSmrg	pairs#0x10000,
2031913cc679Smrg	initc=\E]4;
20324419d26bSmrg		%p1%d;rgb:
20334419d26bSmrg		%p2%{255}%*%{1000}%/%2.2X/
20344419d26bSmrg		%p3%{255}%*%{1000}%/%2.2X/
20354419d26bSmrg		%p4%{255}%*%{1000}%/%2.2X\E\\,
20362e4f8982Smrg	oc=\E]104\007,
2037913cc679Smrg	setab=\E[
2038913cc679Smrg		%?
2039913cc679Smrg			%p1%{8}%<
20404419d26bSmrg			%t4
20414419d26bSmrg			%p1%d
2042913cc679Smrg		%e
2043913cc679Smrg			%p1%{16}%<
20444419d26bSmrg			%t10
20454419d26bSmrg			%p1%{8}%-%d
2046913cc679Smrg		%e48;5;
2047913cc679Smrg			%p1%d
2048913cc679Smrg		%;
2049913cc679Smrg		m,
2050913cc679Smrg	setaf=\E[
2051913cc679Smrg		%?
2052913cc679Smrg			%p1%{8}%<
20534419d26bSmrg			%t3
20544419d26bSmrg			%p1%d
2055913cc679Smrg		%e
2056913cc679Smrg			%p1%{16}%<
20574419d26bSmrg			%t9
20584419d26bSmrg			%p1%{8}%-%d
2059913cc679Smrg		%e38;5;
2060913cc679Smrg			%p1%d
2061913cc679Smrg		%;
2062913cc679Smrg		m,
2063d522f475Smrg	setb@,
2064d522f475Smrg	setf@,
2065f2e35a3aSmrgxterm+256color2|xterm 256-color feature,
2066f2e35a3aSmrg	setab=\E[
2067f2e35a3aSmrg		%?
2068f2e35a3aSmrg			%p1%{8}%<
20694419d26bSmrg			%t4
20704419d26bSmrg			%p1%d
2071f2e35a3aSmrg		%e
2072f2e35a3aSmrg			%p1%{16}%<
20734419d26bSmrg			%t10
20744419d26bSmrg			%p1%{8}%-%d
20754419d26bSmrg		%e48:5:
2076f2e35a3aSmrg			%p1%d
2077f2e35a3aSmrg		%;
2078f2e35a3aSmrg		m,
2079f2e35a3aSmrg	setaf=\E[
2080f2e35a3aSmrg		%?
2081f2e35a3aSmrg			%p1%{8}%<
20824419d26bSmrg			%t3
20834419d26bSmrg			%p1%d
2084f2e35a3aSmrg		%e
2085f2e35a3aSmrg			%p1%{16}%<
20864419d26bSmrg			%t9
20874419d26bSmrg			%p1%{8}%-%d
20884419d26bSmrg		%e38:5:
2089f2e35a3aSmrg			%p1%d
2090f2e35a3aSmrg		%;
2091f2e35a3aSmrg		m,
2092ad37e533Smrg	setb@,
2093ad37e533Smrg	setf@,
20940bd37d32Smrg	use=xterm+256color,
2095f2e35a3aSmrgxterm-256color|xterm with 256 colors,
2096f2e35a3aSmrg	use=xterm+256color2,
2097f2e35a3aSmrg	use=xterm+osc104,
2098d522f475Smrg	use=xterm-new,
2099d522f475Smrgxterm-88color|xterm with 88 colors,
2100d522f475Smrg	colors#88,
2101d522f475Smrg	pairs#7744,
2102d522f475Smrg	use=xterm-256color,
2103f2e35a3aSmrg
2104f2e35a3aSmrg# "direct color" is mentioned without definition in ISO 8613-6 (ITU T.416).
2105f2e35a3aSmrg#
2106f2e35a3aSmrg# This is a particular implementation which assume 8-bit values for red, green,
2107f2e35a3aSmrg# and blue.  Other encodings are possible; none are addressed by that standard.
2108f2e35a3aSmrg#
2109f2e35a3aSmrg# The "RGB" flag is an ncurses 6.1 extension which tells the library how to
2110f2e35a3aSmrg# quickly compute the color-content for a given color value.
2111f2e35a3aSmrg#
2112f2e35a3aSmrg# Like xterm+256color, this uses a conditional expression.  But it does that
2113f2e35a3aSmrg# for a different reason: to make it readily usable for applications which
2114f2e35a3aSmrg# print text but also use RGB colors, it uses a color map for the usual ANSI
2115f2e35a3aSmrg# colors (0-7) and RGB colors for the remaining range of the color value.
2116f2e35a3aSmrgxterm+direct|xterm with direct-color indexing,
2117f2e35a3aSmrg	RGB,
2118f2e35a3aSmrg	colors#0x1000000,
2119f2e35a3aSmrg	pairs#0x10000,
2120f2e35a3aSmrg	CO#8,
2121f2e35a3aSmrg	initc@,
2122f2e35a3aSmrg	op=\E[39;49m,
2123f2e35a3aSmrg	setab=\E[
2124f2e35a3aSmrg		%?
2125f2e35a3aSmrg			%p1%{8}%<
21264419d26bSmrg			%t4
21274419d26bSmrg			%p1%d
21284419d26bSmrg		%e48:2::
21294419d26bSmrg			%p1%{65536}%/%d:
21304419d26bSmrg			%p1%{256}%/%{255}%&%d:
21314419d26bSmrg			%p1%{255}%&%d
2132f2e35a3aSmrg		%;
2133f2e35a3aSmrg		m,
2134f2e35a3aSmrg	setaf=\E[
2135f2e35a3aSmrg		%?
2136f2e35a3aSmrg			%p1%{8}%<
21374419d26bSmrg			%t3
21384419d26bSmrg			%p1%d
21394419d26bSmrg		%e38:2::
21404419d26bSmrg			%p1%{65536}%/%d:
21414419d26bSmrg			%p1%{256}%/%{255}%&%d:
21424419d26bSmrg			%p1%{255}%&%d
2143f2e35a3aSmrg		%;
2144f2e35a3aSmrg		m,
2145f2e35a3aSmrg	setb@,
2146f2e35a3aSmrg	setf@,
2147f2e35a3aSmrgxterm-direct|xterm with direct-color indexing,
2148f2e35a3aSmrg	use=xterm+direct,
2149f2e35a3aSmrg	use=xterm,
2150d522f475Smrg#
2151d522f475Smrg# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color.
2152d522f475Smrg# To use it, your decTerminalID resource must be set to 200 or above, and the
2153d522f475Smrg# sunKeyboard resource set to true.
2154d522f475Smrg#
2155d522f475Smrg#	HTS	\E H	\210
2156d522f475Smrg#	RI	\E M	\215
2157d522f475Smrg#	SS3	\E O	\217
2158d522f475Smrg#	CSI	\E [	\233
2159d522f475Smrg#
2160d522f475Smrgxterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
2161d522f475Smrg	OTbs,
2162d522f475Smrg	am,
2163d522f475Smrg	bce,
2164d522f475Smrg	km,
2165d522f475Smrg	mc5i,
2166d522f475Smrg	mir,
2167d522f475Smrg	msgr,
2168d522f475Smrg	npc,
2169d522f475Smrg	xenl,
2170d522f475Smrg	AX,
2171d522f475Smrg	colors#8,
2172d522f475Smrg	cols#80,
2173d522f475Smrg	it#8,
2174d522f475Smrg	lines#24,
2175d522f475Smrg	pairs#64,
2176913cc679Smrg	acsc=``aaffggiijjkkllmmnnooppqqr
2177913cc679Smrg	     rssttuuvvwwxxyyzz{{||}}~~,
2178d522f475Smrg	bel=^G,
2179d522f475Smrg	blink=\2335m,
2180d522f475Smrg	bold=\2331m,
2181d522f475Smrg	cbt=\233Z,
2182d522f475Smrg	civis=\233?25l,
2183d522f475Smrg	clear=\233H\2332J,
2184d522f475Smrg	cnorm=\233?25l\233?25h,
2185913cc679Smrg	cr=\r,
2186d522f475Smrg	csr=\233%i%p1%d;%p2%dr,
2187d522f475Smrg	cub=\233%p1%dD,
2188d522f475Smrg	cub1=^H,
2189d522f475Smrg	cud=\233%p1%dB,
2190913cc679Smrg	cud1=\n,
2191d522f475Smrg	cuf=\233%p1%dC,
2192d522f475Smrg	cuf1=\233C,
2193d522f475Smrg	cup=\233%i%p1%d;%p2%dH,
2194d522f475Smrg	cuu=\233%p1%dA,
2195d522f475Smrg	cuu1=\233A,
2196d522f475Smrg	cvvis=\233?12;25h,
2197d522f475Smrg	dch=\233%p1%dP,
2198d522f475Smrg	dch1=\233P,
2199d522f475Smrg	dl=\233%p1%dM,
2200d522f475Smrg	dl1=\233M,
2201d522f475Smrg	ech=\233%p1%dX,
2202d522f475Smrg	ed=\233J,
2203d522f475Smrg	el=\233K,
2204d522f475Smrg	el1=\2331K,
2205d522f475Smrg	flash=\233?5h$<100/>\233?5l,
2206d522f475Smrg	home=\233H,
2207d522f475Smrg	hpa=\233%i%p1%dG,
2208d522f475Smrg	ht=^I,
2209d522f475Smrg	hts=\210,
2210d522f475Smrg	ich=\233%p1%d@,
2211d522f475Smrg	il=\233%p1%dL,
2212d522f475Smrg	il1=\233L,
2213913cc679Smrg	ind=\n,
2214d522f475Smrg	invis=\2338m,
2215913cc679Smrg	is2=\E[62"p\E\sG\233m\233?7h\E>
2216913cc679Smrg	    \E7\233?1;3;4;6l\2334l\233r
2217913cc679Smrg	    \E8,
2218d522f475Smrg	ka1=\217w,
2219d522f475Smrg	ka3=\217u,
2220d522f475Smrg	kb2=\217y,
2221d522f475Smrg	kbeg=\217E,
2222d522f475Smrg	kc1=\217q,
2223d522f475Smrg	kc3=\217s,
2224d522f475Smrg	kcbt=\233Z,
2225d522f475Smrg	kcub1=\217D,
2226d522f475Smrg	kcud1=\217B,
2227d522f475Smrg	kcuf1=\217C,
2228d522f475Smrg	kcuu1=\217A,
2229d522f475Smrg	kdch1=\2333~,
2230d522f475Smrg	kend=\2334~,
2231d522f475Smrg	kent=\217M,
2232d522f475Smrg	kf1=\23311~,
2233d522f475Smrg	kf10=\23321~,
2234d522f475Smrg	kf11=\23323~,
2235d522f475Smrg	kf12=\23324~,
2236d522f475Smrg	kf13=\23325~,
2237d522f475Smrg	kf14=\23326~,
2238d522f475Smrg	kf15=\23328~,
2239d522f475Smrg	kf16=\23329~,
2240d522f475Smrg	kf17=\23331~,
2241d522f475Smrg	kf18=\23332~,
2242d522f475Smrg	kf19=\23333~,
2243d522f475Smrg	kf2=\23312~,
2244d522f475Smrg	kf20=\23334~,
2245d522f475Smrg	kf3=\23313~,
2246d522f475Smrg	kf4=\23314~,
2247d522f475Smrg	kf5=\23315~,
2248d522f475Smrg	kf6=\23317~,
2249d522f475Smrg	kf7=\23318~,
2250d522f475Smrg	kf8=\23319~,
2251d522f475Smrg	kf9=\23320~,
2252d522f475Smrg	khome=\2331~,
2253d522f475Smrg	kich1=\2332~,
2254d522f475Smrg	kmous=\233M,
2255d522f475Smrg	knp=\2336~,
2256d522f475Smrg	kpp=\2335~,
2257d522f475Smrg	mc0=\233i,
2258d522f475Smrg	mc4=\2334i,
2259d522f475Smrg	mc5=\2335i,
2260d522f475Smrg	meml=\El,
2261d522f475Smrg	memu=\Em,
2262d522f475Smrg	op=\23339;49m,
2263d522f475Smrg	rc=\E8,
2264d522f475Smrg	rev=\2337m,
2265d522f475Smrg	ri=\215,
2266d522f475Smrg	rmacs=\E(B,
2267d522f475Smrg	rmam=\233?7l,
2268d522f475Smrg	rmcup=\233?1049l,
2269d522f475Smrg	rmir=\2334l,
2270d522f475Smrg	rmkx=\233?1l\E>,
2271d522f475Smrg	rmso=\23327m,
2272d522f475Smrg	rmul=\23324m,
2273d522f475Smrg	rs1=\Ec,
2274913cc679Smrg	rs2=\E[62"p\E\sG\233m\233?7h\E>
2275913cc679Smrg	    \E7\233?1;3;4;6l\2334l\233r
2276913cc679Smrg	    \E8,
2277d522f475Smrg	sc=\E7,
2278d522f475Smrg	setab=\2334%p1%dm,
2279d522f475Smrg	setaf=\2333%p1%dm,
2280913cc679Smrg	setb=\2334
2281913cc679Smrg		%?
2282913cc679Smrg			%p1%{1}%=
2283913cc679Smrg			%t4
2284913cc679Smrg		%e
2285913cc679Smrg			%p1%{3}%=
2286913cc679Smrg			%t6
2287913cc679Smrg		%e
2288913cc679Smrg			%p1%{4}%=
2289913cc679Smrg			%t1
2290913cc679Smrg		%e
2291913cc679Smrg			%p1%{6}%=
2292913cc679Smrg			%t3
2293913cc679Smrg		%e
2294913cc679Smrg			%p1%d
2295913cc679Smrg		%;
2296913cc679Smrg		m,
2297913cc679Smrg	setf=\2333
2298913cc679Smrg		%?
2299913cc679Smrg			%p1%{1}%=
2300913cc679Smrg			%t4
2301913cc679Smrg		%e
2302913cc679Smrg			%p1%{3}%=
2303913cc679Smrg			%t6
2304913cc679Smrg		%e
2305913cc679Smrg			%p1%{4}%=
2306913cc679Smrg			%t1
2307913cc679Smrg		%e
2308913cc679Smrg			%p1%{6}%=
2309913cc679Smrg			%t3
2310913cc679Smrg		%e
2311913cc679Smrg			%p1%d
2312913cc679Smrg		%;
2313913cc679Smrg		m,
2314913cc679Smrg	sgr=\2330
2315913cc679Smrg		%?
2316913cc679Smrg			%p6
2317913cc679Smrg			%t;1
2318913cc679Smrg		%;
2319913cc679Smrg		%?
2320913cc679Smrg			%p2
2321913cc679Smrg			%t;4
2322913cc679Smrg		%;
2323913cc679Smrg		%?
23244419d26bSmrg			%p1
23254419d26bSmrg			%p3%|
2326913cc679Smrg			%t;7
2327913cc679Smrg		%;
2328913cc679Smrg		%?
2329913cc679Smrg			%p4
2330913cc679Smrg			%t;5
2331913cc679Smrg		%;
2332913cc679Smrg		%?
2333913cc679Smrg			%p7
2334913cc679Smrg			%t;8
2335913cc679Smrg		%;
2336913cc679Smrg		m
2337913cc679Smrg		%?
2338913cc679Smrg			%p9
2339913cc679Smrg			%t\E(0
2340913cc679Smrg		%e
2341913cc679Smrg			\E(B
2342913cc679Smrg		%;,
2343d522f475Smrg	sgr0=\2330m\E(B,
2344d522f475Smrg	smacs=\E(0,
2345d522f475Smrg	smam=\233?7h,
2346d522f475Smrg	smcup=\233?1049h,
2347d522f475Smrg	smir=\2334h,
2348d522f475Smrg	smkx=\233?1h\E=,
2349d522f475Smrg	smso=\2337m,
2350d522f475Smrg	smul=\2334m,
2351d522f475Smrg	tbc=\2333g,
2352d522f475Smrg	u6=\233[%i%d;%dR,
2353d522f475Smrg	u7=\E[6n,
2354913cc679Smrg	u8=\233[?%[;0123456789]c,
2355d522f475Smrg	u9=\E[c,
2356d522f475Smrg	vpa=\233%i%p1%dd,
23570bd37d32Smrg	use=xterm+kbs,
2358d522f475Smrg#
2359d522f475Smrgxterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
2360d522f475Smrg	OTbs,
2361d522f475Smrg	am,
2362d522f475Smrg	bce,
2363d522f475Smrg	km,
2364d522f475Smrg	mc5i,
2365d522f475Smrg	mir,
2366d522f475Smrg	msgr,
2367d522f475Smrg	npc,
2368d522f475Smrg	xenl,
2369d522f475Smrg	AX,
23700bd37d32Smrg	XT,
2371d522f475Smrg	colors#8,
2372d522f475Smrg	cols#80,
2373d522f475Smrg	it#8,
2374d522f475Smrg	lines#24,
2375d522f475Smrg	pairs#64,
2376913cc679Smrg	acsc=``aaffggiijjkkllmmnnooppqqr
2377913cc679Smrg	     rssttuuvvwwxxyyzz{{||}}~~,
2378d522f475Smrg	bel=^G,
2379d522f475Smrg	blink=\E[5m,
2380d522f475Smrg	bold=\E[1m,
2381d522f475Smrg	cbt=\E[Z,
2382d522f475Smrg	civis=\E[?25l,
2383d522f475Smrg	clear=\E[H\E[2J,
2384d522f475Smrg	cnorm=\E[?12l\E[?25h,
2385913cc679Smrg	cr=\r,
2386d522f475Smrg	csr=\E[%i%p1%d;%p2%dr,
2387d522f475Smrg	cub=\E[%p1%dD,
2388d522f475Smrg	cub1=^H,
2389d522f475Smrg	cud=\E[%p1%dB,
2390913cc679Smrg	cud1=\n,
2391d522f475Smrg	cuf=\E[%p1%dC,
2392d522f475Smrg	cuf1=\E[C,
2393d522f475Smrg	cup=\E[%i%p1%d;%p2%dH,
2394d522f475Smrg	cuu=\E[%p1%dA,
2395d522f475Smrg	cuu1=\E[A,
2396d522f475Smrg	cvvis=\E[?12;25h,
2397d522f475Smrg	dch=\E[%p1%dP,
2398d522f475Smrg	dch1=\E[P,
2399d522f475Smrg	dl=\E[%p1%dM,
2400d522f475Smrg	dl1=\E[M,
2401d522f475Smrg	ech=\E[%p1%dX,
2402d522f475Smrg	ed=\E[J,
2403d522f475Smrg	el=\E[K,
2404d522f475Smrg	el1=\E[1K,
2405d522f475Smrg	enacs=\E(B\E)0,
2406d522f475Smrg	flash=\E[?5h$<100/>\E[?5l,
2407d522f475Smrg	home=\E[H,
2408d522f475Smrg	hpa=\E[%i%p1%dG,
2409d522f475Smrg	ht=^I,
2410d522f475Smrg	hts=\EH,
2411d522f475Smrg	ich=\E[%p1%d@,
2412d522f475Smrg	il=\E[%p1%dL,
2413d522f475Smrg	il1=\E[L,
2414913cc679Smrg	ind=\n,
2415d522f475Smrg	indn=\E[%p1%dS,
2416d522f475Smrg	invis=\E[8m,
2417d522f475Smrg	is2=\E[!p\E[?3;4l\E[4l\E>,
2418d522f475Smrg	kDC=\E[3;2~,
2419d522f475Smrg	kEND=\E[1;2F,
2420d522f475Smrg	kHOM=\E[1;2H,
2421d522f475Smrg	kIC=\E[2;2~,
2422d522f475Smrg	kLFT=\E[1;2D,
2423d522f475Smrg	kNXT=\E[6;2~,
2424d522f475Smrg	kPRV=\E[5;2~,
2425d522f475Smrg	kRIT=\E[1;2C,
2426d522f475Smrg	kb2=\EOE,
2427d522f475Smrg	kcbt=\E[Z,
2428d522f475Smrg	kcub1=\EOD,
2429d522f475Smrg	kcud1=\EOB,
2430d522f475Smrg	kcuf1=\EOC,
2431d522f475Smrg	kcuu1=\EOA,
2432d522f475Smrg	kdch1=\E[3~,
2433d522f475Smrg	kend=\EOF,
2434d522f475Smrg	kent=\EOM,
2435d522f475Smrg	kf1=\EOP,
2436d522f475Smrg	kf10=\E[21~,
2437d522f475Smrg	kf11=\E[23~,
2438d522f475Smrg	kf12=\E[24~,
2439d522f475Smrg	kf13=\EO2P,
2440d522f475Smrg	kf14=\EO2Q,
2441d522f475Smrg	kf15=\EO2R,
2442d522f475Smrg	kf16=\EO2S,
2443d522f475Smrg	kf17=\E[15;2~,
2444d522f475Smrg	kf18=\E[17;2~,
2445d522f475Smrg	kf19=\E[18;2~,
2446d522f475Smrg	kf2=\EOQ,
2447d522f475Smrg	kf20=\E[19;2~,
2448d522f475Smrg	kf21=\E[20;2~,
2449d522f475Smrg	kf22=\E[21;2~,
2450d522f475Smrg	kf23=\E[23;2~,
2451d522f475Smrg	kf24=\E[24;2~,
2452d522f475Smrg	kf25=\EO5P,
2453d522f475Smrg	kf26=\EO5Q,
2454d522f475Smrg	kf27=\EO5R,
2455d522f475Smrg	kf28=\EO5S,
2456d522f475Smrg	kf29=\E[15;5~,
2457d522f475Smrg	kf3=\EOR,
2458d522f475Smrg	kf30=\E[17;5~,
2459d522f475Smrg	kf31=\E[18;5~,
2460d522f475Smrg	kf32=\E[19;5~,
2461d522f475Smrg	kf33=\E[20;5~,
2462d522f475Smrg	kf34=\E[21;5~,
2463d522f475Smrg	kf35=\E[23;5~,
2464d522f475Smrg	kf36=\E[24;5~,
2465d522f475Smrg	kf37=\EO6P,
2466d522f475Smrg	kf38=\EO6Q,
2467d522f475Smrg	kf39=\EO6R,
2468d522f475Smrg	kf4=\EOS,
2469d522f475Smrg	kf40=\EO6S,
2470d522f475Smrg	kf41=\E[15;6~,
2471d522f475Smrg	kf42=\E[17;6~,
2472d522f475Smrg	kf43=\E[18;6~,
2473d522f475Smrg	kf44=\E[19;6~,
2474d522f475Smrg	kf45=\E[20;6~,
2475d522f475Smrg	kf46=\E[21;6~,
2476d522f475Smrg	kf47=\E[23;6~,
2477d522f475Smrg	kf48=\E[24;6~,
2478d522f475Smrg	kf5=\E[15~,
2479d522f475Smrg	kf6=\E[17~,
2480d522f475Smrg	kf7=\E[18~,
2481d522f475Smrg	kf8=\E[19~,
2482d522f475Smrg	kf9=\E[20~,
2483d522f475Smrg	khome=\EOH,
2484d522f475Smrg	kich1=\E[2~,
2485d522f475Smrg	kmous=\E[M,
2486d522f475Smrg	knp=\E[6~,
2487d522f475Smrg	kpp=\E[5~,
2488d522f475Smrg	mc0=\E[i,
2489d522f475Smrg	mc4=\E[4i,
2490d522f475Smrg	mc5=\E[5i,
2491d522f475Smrg	meml=\El,
2492d522f475Smrg	memu=\Em,
2493d522f475Smrg	op=\E[39;49m,
2494d522f475Smrg	rc=\E8,
2495d522f475Smrg	rev=\E[7m,
2496d522f475Smrg	ri=\EM,
2497d522f475Smrg	rin=\E[%p1%dT,
2498d522f475Smrg	rmacs=^O,
2499d522f475Smrg	rmam=\E[?7l,
2500d522f475Smrg	rmir=\E[4l,
2501d522f475Smrg	rmkx=\E[?1l\E>,
2502d522f475Smrg	rmso=\E[27m,
2503d522f475Smrg	rmul=\E[24m,
2504d522f475Smrg	rs1=\Ec,
2505d522f475Smrg	rs2=\E[!p\E[?3;4l\E[4l\E>,
2506d522f475Smrg	sc=\E7,
2507d522f475Smrg	setab=\E[4%p1%dm,
2508d522f475Smrg	setaf=\E[3%p1%dm,
2509913cc679Smrg	setb=\E[4
2510913cc679Smrg		%?
2511913cc679Smrg			%p1%{1}%=
2512913cc679Smrg			%t4
2513913cc679Smrg		%e
2514913cc679Smrg			%p1%{3}%=
2515913cc679Smrg			%t6
2516913cc679Smrg		%e
2517913cc679Smrg			%p1%{4}%=
2518913cc679Smrg			%t1
2519913cc679Smrg		%e
2520913cc679Smrg			%p1%{6}%=
2521913cc679Smrg			%t3
2522913cc679Smrg		%e
2523913cc679Smrg			%p1%d
2524913cc679Smrg		%;
2525913cc679Smrg		m,
2526913cc679Smrg	setf=\E[3
2527913cc679Smrg		%?
2528913cc679Smrg			%p1%{1}%=
2529913cc679Smrg			%t4
2530913cc679Smrg		%e
2531913cc679Smrg			%p1%{3}%=
2532913cc679Smrg			%t6
2533913cc679Smrg		%e
2534913cc679Smrg			%p1%{4}%=
2535913cc679Smrg			%t1
2536913cc679Smrg		%e
2537913cc679Smrg			%p1%{6}%=
2538913cc679Smrg			%t3
2539913cc679Smrg		%e
2540913cc679Smrg			%p1%d
2541913cc679Smrg		%;
2542913cc679Smrg		m,
2543913cc679Smrg	sgr=\E[0
2544913cc679Smrg		%?
2545913cc679Smrg			%p6
2546913cc679Smrg			%t;1
2547913cc679Smrg		%;
2548913cc679Smrg		%?
2549913cc679Smrg			%p2
2550913cc679Smrg			%t;4
2551913cc679Smrg		%;
2552913cc679Smrg		%?
25534419d26bSmrg			%p1
25544419d26bSmrg			%p3%|
2555913cc679Smrg			%t;7
2556913cc679Smrg		%;
2557913cc679Smrg		%?
2558913cc679Smrg			%p4
2559913cc679Smrg			%t;5
2560913cc679Smrg		%;
2561913cc679Smrg		%?
2562913cc679Smrg			%p7
2563913cc679Smrg			%t;8
2564913cc679Smrg		%;
2565913cc679Smrg		m
2566913cc679Smrg		%?
2567913cc679Smrg			%p9
2568913cc679Smrg			%t\016
2569913cc679Smrg		%e
2570913cc679Smrg			\017
2571913cc679Smrg		%;,
2572d522f475Smrg	sgr0=\E[m\017,
2573d522f475Smrg	smacs=^N,
2574d522f475Smrg	smam=\E[?7h,
2575d522f475Smrg	smir=\E[4h,
2576d522f475Smrg	smkx=\E[?1h\E=,
2577d522f475Smrg	smso=\E[7m,
2578d522f475Smrg	smul=\E[4m,
2579d522f475Smrg	tbc=\E[3g,
2580d522f475Smrg	u6=\E[%i%d;%dR,
2581d522f475Smrg	u7=\E[6n,
2582d522f475Smrg	u8=\E[?1;2c,
2583d522f475Smrg	u9=\E[c,
2584d522f475Smrg	vpa=\E[%i%p1%dd,
2585d522f475Smrg	ka2=\EOx,
2586d522f475Smrg	kb1=\EOt,
2587d522f475Smrg	kb3=\EOv,
2588d522f475Smrg	kc2=\EOr,
2589f2e35a3aSmrg	use=xterm+alt1049,
25900bd37d32Smrg	use=xterm+kbs,
2591d522f475Smrgxterm-xfree86|xterm terminal emulator (XFree86 4.4 Window System),
2592d522f475Smrg	use=xterm-xf86-v44,
2593d522f475Smrg#
2594d522f475Smrg# Compatible with the R6 xterm, with the following changes:
2595d522f475Smrg#	+ added acsc (perhaps some versions of tic assume the standard vt100
2596d522f475Smrg#	  alternate character set)
2597d522f475Smrg#	+ added u6, u7, u8, u9 strings for Daniel Weaver's tack program.
2598d522f475Smrg#	+ added kmous string for ncurses.
2599d522f475Smrg#	+ added khome/kend strings (which conflict with kfnd/kslt, see note).
26000bd37d32Smrgxterm-r6|xterm X11R6 version,
2601d522f475Smrg	OTbs,
2602d522f475Smrg	am,
2603d522f475Smrg	km,
2604d522f475Smrg	mir,
2605d522f475Smrg	msgr,
2606d522f475Smrg	xenl,
2607d522f475Smrg	cols#80,
2608d522f475Smrg	it#8,
2609d522f475Smrg	lines#24,
2610913cc679Smrg	acsc=``aaffggiijjkkllmmnnooppqqr
2611913cc679Smrg	     rssttuuvvwwxxyyzz{{||}}~~,
2612d522f475Smrg	bel=^G,
2613d522f475Smrg	bold=\E[1m,
2614d522f475Smrg	clear=\E[H\E[2J,
2615913cc679Smrg	cr=\r,
2616d522f475Smrg	csr=\E[%i%p1%d;%p2%dr,
2617d522f475Smrg	cub=\E[%p1%dD,
2618d522f475Smrg	cub1=^H,
2619d522f475Smrg	cud=\E[%p1%dB,
2620913cc679Smrg	cud1=\n,
2621d522f475Smrg	cuf=\E[%p1%dC,
2622d522f475Smrg	cuf1=\E[C,
2623d522f475Smrg	cup=\E[%i%p1%d;%p2%dH,
2624d522f475Smrg	cuu=\E[%p1%dA,
2625d522f475Smrg	cuu1=\E[A,
2626d522f475Smrg	dch=\E[%p1%dP,
2627d522f475Smrg	dch1=\E[P,
2628d522f475Smrg	dl=\E[%p1%dM,
2629d522f475Smrg	dl1=\E[M,
2630d522f475Smrg	ed=\E[J,
2631d522f475Smrg	el=\E[K,
2632d522f475Smrg	enacs=\E)0,
2633d522f475Smrg	home=\E[H,
2634d522f475Smrg	ht=^I,
2635d522f475Smrg	hts=\EH,
2636d522f475Smrg	il=\E[%p1%dL,
2637d522f475Smrg	il1=\E[L,
2638913cc679Smrg	ind=\n,
2639913cc679Smrg	is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[
2640913cc679Smrg	    ?1;3;4;6l\E8,
2641d522f475Smrg	kcub1=\EOD,
2642d522f475Smrg	kcud1=\EOB,
2643d522f475Smrg	kcuf1=\EOC,
2644d522f475Smrg	kcuu1=\EOA,
2645d522f475Smrg	kdch1=\E[3~,
2646d522f475Smrg	kf1=\E[11~,
2647d522f475Smrg	kf10=\E[21~,
2648d522f475Smrg	kf11=\E[23~,
2649d522f475Smrg	kf12=\E[24~,
2650d522f475Smrg	kf13=\E[25~,
2651d522f475Smrg	kf14=\E[26~,
2652d522f475Smrg	kf15=\E[28~,
2653d522f475Smrg	kf16=\E[29~,
2654d522f475Smrg	kf17=\E[31~,
2655d522f475Smrg	kf18=\E[32~,
2656d522f475Smrg	kf19=\E[33~,
2657d522f475Smrg	kf2=\E[12~,
2658d522f475Smrg	kf20=\E[34~,
2659d522f475Smrg	kf3=\E[13~,
2660d522f475Smrg	kf4=\E[14~,
2661d522f475Smrg	kf5=\E[15~,
2662d522f475Smrg	kf6=\E[17~,
2663d522f475Smrg	kf7=\E[18~,
2664d522f475Smrg	kf8=\E[19~,
2665d522f475Smrg	kf9=\E[20~,
2666d522f475Smrg	kmous=\E[M,
2667d522f475Smrg	meml=\El,
2668d522f475Smrg	memu=\Em,
2669d522f475Smrg	rc=\E8,
2670d522f475Smrg	rev=\E[7m,
2671d522f475Smrg	ri=\EM,
2672d522f475Smrg	rmacs=^O,
2673d522f475Smrg	rmcup=\E[2J\E[?47l\E8,
2674d522f475Smrg	rmir=\E[4l,
2675d522f475Smrg	rmkx=\E[?1l\E>,
2676d522f475Smrg	rmso=\E[m,
2677d522f475Smrg	rmul=\E[m,
2678913cc679Smrg	rs2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[
2679913cc679Smrg	    ?1;3;4;6l\E8,
2680d522f475Smrg	sc=\E7,
2681d522f475Smrg	sgr0=\E[m,
2682d522f475Smrg	smacs=^N,
2683d522f475Smrg	smcup=\E7\E[?47h,
2684d522f475Smrg	smir=\E[4h,
2685d522f475Smrg	smkx=\E[?1h\E=,
2686d522f475Smrg	smso=\E[7m,
2687d522f475Smrg	smul=\E[4m,
2688d522f475Smrg	tbc=\E[3g,
2689d522f475Smrg	u6=\E[%i%d;%dR,
2690d522f475Smrg	u7=\E[6n,
2691d522f475Smrg	u8=\E[?1;2c,
2692d522f475Smrg	u9=\E[c,
26930bd37d32Smrg	use=xterm+kbs,
2694d522f475Smrg	use=xterm+decedit,
26950bd37d32Smrgxterm-old|antique xterm version,
26960bd37d32Smrg	use=xterm-r6,
2697d522f475Smrg#
2698d522f475Smrg# Compatible with the R5 xterm, with the following changes:
2699d522f475Smrg#	+ changed 'blink=@', to 'blink@' (the former meant that "@" would start
2700d522f475Smrg#	  a blink, the latter that it is not supported).
2701d522f475Smrg#	+ changed kf1 through kf4 to correspond with actual usage.  Though X
2702d522f475Smrg#	  supports keypad symbols for PF1 to PF4, and xterm interprets these
2703d522f475Smrg#	  correctly, the F1 to F4 codes are commonly (but incorrectly) used.
2704d522f475Smrg#	+ moved reset string from rs1 to rs2, to correlate better with termcap.
2705d522f475Smrg#	+ make khome consistent with other entries.
2706d522f475Smrg#	+ use rmul/smul, rmir/smir from termcap, but not rmcup/smcup because
2707d522f475Smrg#	  not everyone wants the alternate screen.
2708d522f475Smrg#	+ added u6, u7, u8, u9 strings for Daniel Weaver's tack program.
2709d522f475Smrg#	+ added kmous string for ncurses.
2710d522f475Smrgxterm-r5|xterm R5 version,
2711d522f475Smrg	OTbs,
2712d522f475Smrg	am,
2713d522f475Smrg	km,
2714d522f475Smrg	msgr,
2715d522f475Smrg	xenl,
2716d522f475Smrg	cols#80,
2717d522f475Smrg	it#8,
2718d522f475Smrg	lines#24,
2719d522f475Smrg	bel=^G,
2720d522f475Smrg	bold=\E[1m,
2721d522f475Smrg	clear=\E[H\E[2J,
2722913cc679Smrg	cr=\r,
2723d522f475Smrg	csr=\E[%i%p1%d;%p2%dr,
2724d522f475Smrg	cub=\E[%p1%dD,
2725d522f475Smrg	cub1=^H,
2726d522f475Smrg	cud=\E[%p1%dB,
2727913cc679Smrg	cud1=\n,
2728d522f475Smrg	cuf=\E[%p1%dC,
2729d522f475Smrg	cuf1=\E[C,
2730d522f475Smrg	cup=\E[%i%p1%d;%p2%dH,
2731d522f475Smrg	cuu=\E[%p1%dA,
2732d522f475Smrg	cuu1=\E[A,
2733d522f475Smrg	dch=\E[%p1%dP,
2734d522f475Smrg	dch1=\E[P,
2735d522f475Smrg	dl=\E[%p1%dM,
2736d522f475Smrg	dl1=\E[M,
2737d522f475Smrg	ed=\E[J,
2738d522f475Smrg	el=\E[K,
2739d522f475Smrg	home=\E[H,
2740d522f475Smrg	ht=^I,
2741d522f475Smrg	hts=\EH,
2742d522f475Smrg	ich=\E[%p1%d@,
2743d522f475Smrg	ich1=\E[@,
2744d522f475Smrg	il=\E[%p1%dL,
2745d522f475Smrg	il1=\E[L,
2746913cc679Smrg	ind=\n,
2747d522f475Smrg	kcub1=\EOD,
2748d522f475Smrg	kcud1=\EOB,
2749d522f475Smrg	kcuf1=\EOC,
2750d522f475Smrg	kcuu1=\EOA,
2751d522f475Smrg	kdch1=\E[3~,
2752d522f475Smrg	kdl1=\E[31~,
2753d522f475Smrg	kel=\E[8~,
2754d522f475Smrg	kend=\E[4~,
2755d522f475Smrg	kf0=\EOq,
2756d522f475Smrg	kf1=\E[11~,
2757d522f475Smrg	kf10=\E[21~,
2758d522f475Smrg	kf11=\E[23~,
2759d522f475Smrg	kf12=\E[24~,
2760d522f475Smrg	kf2=\E[12~,
2761d522f475Smrg	kf3=\E[13~,
2762d522f475Smrg	kf4=\E[14~,
2763d522f475Smrg	kf5=\E[15~,
2764d522f475Smrg	kf6=\E[17~,
2765d522f475Smrg	kf7=\E[18~,
2766d522f475Smrg	kf8=\E[19~,
2767d522f475Smrg	kf9=\E[20~,
2768d522f475Smrg	khome=\E[1~,
2769d522f475Smrg	kich1=\E[2~,
2770d522f475Smrg	kil1=\E[30~,
2771d522f475Smrg	kmous=\E[M,
2772d522f475Smrg	knp=\E[6~,
2773d522f475Smrg	kpp=\E[5~,
2774d522f475Smrg	rc=\E8,
2775d522f475Smrg	rev=\E[7m,
2776d522f475Smrg	ri=\EM,
2777d522f475Smrg	rmir=\E[4l,
2778d522f475Smrg	rmkx=\E[?1l\E>,
2779d522f475Smrg	rmso=\E[m,
2780d522f475Smrg	rmul=\E[m,
2781913cc679Smrg	rs2=\E>\E[?1;3;4;5;6l\E[4l\E[?7h
2782913cc679Smrg	    \E[m\E[r\E[2J\E[H,
2783d522f475Smrg	sc=\E7,
2784913cc679Smrg	sgr=\E[
2785913cc679Smrg		%?
2786913cc679Smrg			%p1
2787913cc679Smrg			%t;7
2788913cc679Smrg		%;
2789913cc679Smrg		%?
2790913cc679Smrg			%p2
2791913cc679Smrg			%t;4
2792913cc679Smrg		%;
2793913cc679Smrg		%?
2794913cc679Smrg			%p3
2795913cc679Smrg			%t;7
2796913cc679Smrg		%;
2797913cc679Smrg		%?
2798913cc679Smrg			%p4
2799913cc679Smrg			%t;5
2800913cc679Smrg		%;
2801913cc679Smrg		%?
2802913cc679Smrg			%p6
2803913cc679Smrg			%t;1
2804913cc679Smrg		%;
2805913cc679Smrg		m,
2806d522f475Smrg	sgr0=\E[m,
2807d522f475Smrg	smir=\E[4h,
2808d522f475Smrg	smkx=\E[?1h\E=,
2809d522f475Smrg	smso=\E[7m,
2810d522f475Smrg	smul=\E[4m,
2811d522f475Smrg	tbc=\E[3g,
2812d522f475Smrg	u6=\E[%i%d;%dR,
2813d522f475Smrg	u7=\E[6n,
2814d522f475Smrg	u8=\E[?1;2c,
2815d522f475Smrg	u9=\E[c,
28160bd37d32Smrg	use=xterm+kbs,
28174419d26bSmrg
28184419d26bSmrg# DEC status-line is an extension for VT220, and standard with VT320 and up.
28194419d26bSmrgdec+sl|DEC VTxx status line,
28204419d26bSmrg	eslok,
28214419d26bSmrg	hs,
28225307cd1aSmrg	dsl=\E[0$~,
28234419d26bSmrg	fsl=\E[0$},
28244419d26bSmrg	tsl=\E[2$~\E[1$}\E[%i%p1%d`,
2825d522f475Smrg#
2826d522f475Smrg#
2827d522f475Smrg# Customization begins here.
2828d522f475Smrg#
2829d522f475Smrg# This is the only entry which you should have to customize, since "xterm"
2830d522f475Smrg# is widely used for a variety of incompatible terminal emulations including
2831d522f475Smrg# color_xterm and rxvt.
2832d522f475Smrgxterm|X11 terminal emulator,
2833d522f475Smrg	use=xterm-new,
2834d522f475Smrg#	use=xterm-r6,
28350bd37d32Smrg
28360bd37d32Smrg# This fragment is for people who cannot agree on what the backspace key
28370bd37d32Smrg# should send.
28380bd37d32Smrgxterm+kbs|fragment for backspace key,
28390bd37d32Smrg	kbs=^H,
28402e4f8982Smrg#	kbs=^?,
2841