xenocara/app/xterm/terminfo
2006-11-26 11:11:12 +00:00

1442 lines
33 KiB
Terminfo

# $XTermId: terminfo,v 1.133 2006/08/01 00:55:47 tom Exp $
#
# $XFree86: xc/programs/xterm/terminfo,v 3.59 2006/02/13 01:14:59 dickey Exp $
#
# XFree86 updates/notes/new entries (including xterm-8bit, xterm-16color)
# - Thomas E. Dickey
#
#------------------------------------------------------------------------------
# Copyright 1996-2005,2006 by Thomas E. Dickey
#
# All Rights Reserved
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
# "Software"), to deal in the Software without restriction, including
# without limitation the rights to use, copy, modify, merge, publish,
# distribute, sublicense, and/or sell copies of the Software, and to
# permit persons to whom the Software is furnished to do so, subject to
# the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name(s) of the above copyright
# holders shall not be used in advertising or otherwise to promote the
# sale, use or other dealings in this Software without prior written
# authorization.
#------------------------------------------------------------------------------
#
# Special Capabilities:
# --------------------
# ich has a corresponding capability that inserts a single blank. We could
# have used ich1=\E[@, which works with ncurses, but that is not standard
# behavior. If it is set, then SVr4 vi (e.g., Solaris 2.6) emits both
# smir/rmir and ich1.
# meml locks memory above the cursor; memu unlocks (ala HP terminals). This
# is not recognized by some older (e.g., SVr3) tic programs, but none
# do more than warn about it. Ignore the warning.
# smcup clears memory before switching to the alternate screen. The older
# (deprecated) \E[?47h did not do this, requiring applications to
# embed a \E[2J in the rmcup string. However, that behavior cannot
# be disabled via titeInhibit, making that resource not function as
# intended on systems with terminfo.
# rs2/is2 are shorter with XFree86 xterm because it supports DECSTR. We
# use the shorter sequence for compatibility with the termcap, which
# is trimmed to keep it shorter than 1023 characters. It (escape \E[!p)
# replaces these in the conventional vt100 reset-string:
# \E7 - save cursor (fixes origin-mode side-effect)
# \E[r - reset scrolling margins
# \E[m - reset SGR (including color)
# \E[?7h - reset wraparound mode (DECAWM)
# \E[?1l - reset application cursor keys (DECCKM)
# \E[?6l - reset origin mode (DECOM)
# \E8 - restore cursor
# DECSTR is recognized by XFree86 xterm even in vt52 mode.
#
# Editing Keypad:
# --------------
# XFree86 xterm emulates vt220 if the decTerminalID resource is set to 200 or
# higher. Otherwise it emulates a vt100 or vt52 depending on the value of the
# resource. When emulating a vt220, we support the editing keypad. Sun and PC
# keyboards have an editing keypad which is similar to the vt220:
#
# VT220 editing keypad
# ----------------------------
# Find Insert Remove
# Select Prev Next
# ----------------------------
#
# Sun/PC editing keypad
# ----------------------------
# Insert Home PageUp
# Delete End PageDn
# ----------------------------
#
# If the sunKeyboard resource is true, we map it this way (adjusting the values
# of Home, End and Delete):
# VT220 Sun/PC
# ----------------------------
# Find Home
# Select End
# Insert Insert
# Remove Delete
# Prev PageUp
# Next PageDn
# ----------------------------
#
# Note that all of the keys on the editing keypad transmit escape sequences. A
# vt220 does this only when in vt220 mode; when emulating a vt100 the editing
# keypad is inactive.
#
# Alternative keycodes:
# --------------------
# Several of the function keys have alternative names, depending on the type of
# host which your xterm is connected to. DEC (i.e., the VMS system) uses F15
# as the HELP key, F16 as the DO key. Unix applications generally do not do
# this. Curses applications in particular, assign a unique keycode to each
# capability string. These terminal descriptions do not have conflicting
# definitions, to ensure that Unix curses applications use a consistent set of
# keycodes. To get a VMS-bias, make these substitutions:
# 1. change khome to kfnd
# 2. change kend to kslt
# The original xterm-r6 entry does in fact have a VMS bias.
#
# Some legacy applications using the termcap emulation may expect kll where
# we have specified kend.
#
# Function keys with modifiers (Sun/PC):
# -------------------------------------
# Shift-Fx - kf{12+x}
# Control-Fx - kf{24+x}
# Shift-Control-Fx - kf{36+x}
#
# The terminfo defines some special keys which are documented as "shifted",
# e.g., kDC is shifted-delete-character.
#
# Note however, that even though the terminfo says a key might be sent, there
# may be conflicts which prevent this. For example, it is common to use
# shifted pageup and pagedown for window manager functions. The default
# translation for xterm since X11R4 has overridden shifted Insert, Select,
# PageUp and PageDown, which correspond to terminfo kIC, kEND, kPRV and kNXT
# respectively.
#
xterm-new|modern xterm terminal emulator,
npc,
indn=\E[%p1%dS,
kDC=\E[3;2~,
kEND=\E[1;2F,
kHOM=\E[1;2H,
kIC=\E[2;2~,
kLFT=\E[1;2D,
kNXT=\E[6;2~,
kPRV=\E[5;2~,
kRIT=\E[1;2C,
kb2=\EOE,
kcbt=\E[Z,
kcub1=\EOD,
kcud1=\EOB,
kcuf1=\EOC,
kcuu1=\EOA,
kend=\EOF,
kent=\EOM,
khome=\EOH,
kich1=\E[2~,
kind=\E[1;2B,
knp=\E[6~,
kpp=\E[5~,
kri=\E[1;2A,
rin=\E[%p1%dT,
use=xterm+pcfkeys,
use=xterm-basic,
#
# Encode modifiers using parameters (see ctlseqs.msg).
# Note that this is unrelated to PCTERM.
#
# Some names are extensions allowed by ncurses:
# kDN, kDN5, kDN6, kLFT5, kLFT6, kRIT5, kRIT6, kUP, kUP5, kUP6
# The numbers correspond to the modifier parameters, e.g., 5=control,
# 6=control/shift.
#
# XTerm resources:
# ---------------
# The xterm-pcfn, xterm-pcf0, xterm-pcf1, xterm-pcf2 and xterm-pcf3 fragments
# correspond to default resource settings for xterm on a 104-key PC keyboard
# with 12 function-keys:
#
# *sunKeyboard:false
# *oldXtermFKeys:false
# *modifyCursorKeys:2
# *modifyFunctionKeys:2
# *ctrlFKeys:10
#
# The key numbers are computed based on the modifiers:
#
# kf1-kf12 are F1-F12
# kf13-kf24 are shift F1-F12
# kf25-kf36 are control F1-F12
# kf37-kf48 are control+shift F1-F12
# kf49-kf60 are alt F1-F12
# kf61-kf63 are shift-alt F1-F3
#
# Note that ncurses would allow definition of kf64 and beyond, if there were
# an application that required it.
#
xterm+pcfkeys|fragment for PC-style keys,
use=xterm+pcf0,
use=xterm+pcc2,
#
# The ctrlFKeys resource is only relevant to the xterm-pcfn and xterm-pcfN
# entries, since the modifyFunctionKeys resource overrides ctrlFKeys when it is
# positive. A different choice of ctrlFKeys would give a different set of
# function-key strings.
xterm+pcfn|fragment with modifyFunctionKeys:-1 and ctrlFKeys:10,
kf1=\EOP,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf13=\E[25~,
kf14=\E[26~,
kf15=\E[28~,
kf16=\E[29~,
kf17=\E[31~,
kf18=\E[32~,
kf19=\E[33~,
kf2=\EOQ,
kf20=\E[34~,
kf21=\E[42~,
kf22=\E[43~,
kf23=\E[44~,
kf24=\E[45~,
kf25=\E[46~,
kf26=\E[47~,
kf27=\E[48~,
kf28=\E[49~,
kf29=\E[50~,
kf3=\EOR,
kf30=\E[51~,
kf31=\E[52~,
kf32=\E[53~,
kf33=\E[54~,
kf34=\E[55~,
kf35=\E[56~,
kf36=\E[57~,
kf37=\E[58~,
kf38=\E[59~,
kf39=\E[60~,
kf4=\EOS,
kf40=\E[61~,
kf41=\E[62~,
kf42=\E[63~,
kf43=\E[64~,
kf44=\E[65~,
kf45=\E[66~,
kf46=\E[67~,
kf47=\E[68~,
kf48=\E[69~,
kf5=\E[15~,
kf6=\E[17~,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
# Changing ctrlFKeys to 12 would let us number the keys using just shift- and
# control- modifiers:
# kf1-kf12 are F1-F12
# kf13-kf24 are shift F1-F12
# kf25-kf36 are control F1-F12
# kf37-kf48 are control+shift F1-F12
xterm+pcfN|fragment with modifyFunctionKeys:-1 and ctrlFKeys:12,
kf1=\EOP,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf13=\E[25~,
kf14=\E[26~,
kf15=\E[28~,
kf16=\E[29~,
kf17=\E[31~,
kf18=\E[32~,
kf19=\E[33~,
kf2=\EOQ,
kf20=\E[34~,
kf21=\E[42~,
kf22=\E[43~,
kf23=\E[44~,
kf24=\E[45~,
kf25=\E[46~,
kf26=\E[47~,
kf27=\E[48~,
kf28=\E[49~,
kf29=\E[50~,
kf3=\EOR,
kf30=\E[51~,
kf31=\E[52~,
kf32=\E[53~,
kf33=\E[54~,
kf34=\E[55~,
kf35=\E[56~,
kf36=\E[57~,
kf37=\E[58~,
kf38=\E[59~,
kf39=\E[60~,
kf4=\EOS,
kf40=\E[61~,
kf41=\E[62~,
kf42=\E[63~,
kf43=\E[64~,
kf44=\E[65~,
kf45=\E[66~,
kf46=\E[67~,
kf47=\E[68~,
kf48=\E[69~,
kf5=\E[15~,
kf6=\E[17~,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
xterm+pcf0|fragment with modifyFunctionKeys:0,
kf1=\EOP,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf13=\EO2P,
kf14=\EO2Q,
kf15=\EO2R,
kf16=\EO2S,
kf17=\E[15;2~,
kf18=\E[17;2~,
kf19=\E[18;2~,
kf2=\EOQ,
kf20=\E[19;2~,
kf21=\E[20;2~,
kf22=\E[21;2~,
kf23=\E[23;2~,
kf24=\E[24;2~,
kf25=\EO5P,
kf26=\EO5Q,
kf27=\EO5R,
kf28=\EO5S,
kf29=\E[15;5~,
kf3=\EOR,
kf30=\E[17;5~,
kf31=\E[18;5~,
kf32=\E[19;5~,
kf33=\E[20;5~,
kf34=\E[21;5~,
kf35=\E[23;5~,
kf36=\E[24;5~,
kf37=\EO6P,
kf38=\EO6Q,
kf39=\EO6R,
kf4=\EOS,
kf40=\EO6S,
kf41=\E[15;6~,
kf42=\E[17;6~,
kf43=\E[18;6~,
kf44=\E[19;6~,
kf45=\E[20;6~,
kf46=\E[21;6~,
kf47=\E[23;6~,
kf48=\E[24;6~,
kf49=\EO3P,
kf5=\E[15~,
kf50=\EO3Q,
kf51=\EO3R,
kf52=\EO3S,
kf53=\E[15;3~,
kf54=\E[17;3~,
kf55=\E[18;3~,
kf56=\E[19;3~,
kf57=\E[20;3~,
kf58=\E[21;3~,
kf59=\E[23;3~,
kf6=\E[17~,
kf60=\E[24;3~,
kf61=\EO4P,
kf62=\EO4Q,
kf63=\EO4R,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
# This is the same as xterm+pcf2 because the unmodified keys all happen to
# have a pattern that forces the modifier to the same position.
xterm+pcf1|fragment with modifyFunctionKeys:1,
use=xterm+pcf2,
xterm+pcf2|fragment with modifyFunctionKeys:2,
kf1=\EOP,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf13=\E[2P,
kf14=\E[2Q,
kf15=\E[2R,
kf16=\E[2S,
kf17=\E[15;2~,
kf18=\E[17;2~,
kf19=\E[18;2~,
kf2=\EOQ,
kf20=\E[19;2~,
kf21=\E[20;2~,
kf22=\E[21;2~,
kf23=\E[23;2~,
kf24=\E[24;2~,
kf25=\E[5P,
kf26=\E[5Q,
kf27=\E[5R,
kf28=\E[5S,
kf29=\E[15;5~,
kf3=\EOR,
kf30=\E[17;5~,
kf31=\E[18;5~,
kf32=\E[19;5~,
kf33=\E[20;5~,
kf34=\E[21;5~,
kf35=\E[23;5~,
kf36=\E[24;5~,
kf37=\E[6P,
kf38=\E[6Q,
kf39=\E[6R,
kf4=\EOS,
kf40=\E[6S,
kf41=\E[15;6~,
kf42=\E[17;6~,
kf43=\E[18;6~,
kf44=\E[19;6~,
kf45=\E[20;6~,
kf46=\E[21;6~,
kf47=\E[23;6~,
kf48=\E[24;6~,
kf49=\E[3P,
kf5=\E[15~,
kf50=\E[3Q,
kf51=\E[3R,
kf52=\E[3S,
kf53=\E[15;3~,
kf54=\E[17;3~,
kf55=\E[18;3~,
kf56=\E[19;3~,
kf57=\E[20;3~,
kf58=\E[21;3~,
kf59=\E[23;3~,
kf6=\E[17~,
kf60=\E[24;3~,
kf61=\E[4P,
kf62=\E[4Q,
kf63=\E[4R,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
xterm+pcf3|fragment with modifyFunctionKeys:3,
kf1=\EOP,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf13=\E[2P,
kf14=\E[2Q,
kf15=\E[2R,
kf16=\E[2S,
kf17=\E[>15;2~,
kf18=\E[>17;2~,
kf19=\E[>18;2~,
kf2=\EOQ,
kf20=\E[>19;2~,
kf21=\E[>20;2~,
kf22=\E[>21;2~,
kf23=\E[>23;2~,
kf24=\E[>24;2~,
kf25=\E[5P,
kf26=\E[5Q,
kf27=\E[5R,
kf28=\E[5S,
kf29=\E[>15;5~,
kf3=\EOR,
kf30=\E[>17;5~,
kf31=\E[>18;5~,
kf32=\E[>19;5~,
kf33=\E[>20;5~,
kf34=\E[>21;5~,
kf35=\E[>23;5~,
kf36=\E[>24;5~,
kf37=\E[6P,
kf38=\E[6Q,
kf39=\E[6R,
kf4=\EOS,
kf40=\E[6S,
kf41=\E[>15;6~,
kf42=\E[>17;6~,
kf43=\E[>18;6~,
kf44=\E[>19;6~,
kf45=\E[>20;6~,
kf46=\E[>21;6~,
kf47=\E[>23;6~,
kf48=\E[>24;6~,
kf49=\E[3P,
kf5=\E[15~,
kf50=\E[3Q,
kf51=\E[3R,
kf52=\E[3S,
kf53=\E[>15;3~,
kf54=\E[>17;3~,
kf55=\E[>18;3~,
kf56=\E[>19;3~,
kf57=\E[>20;3~,
kf58=\E[>21;3~,
kf59=\E[>23;3~,
kf6=\E[17~,
kf60=\E[>24;3~,
kf61=\E[4P,
kf62=\E[4Q,
kf63=\E[4R,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
#
# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27)
# and revised in patch #167 (2002/8/24).
#
# The original assignments from patch #94 for cursor-keys had some technical
# issues:
#
# A parameter for a function-key to represent a modifier is just more
# bits. But for a cursor-key it may change the behavior of the
# application. For instance, emacs decodes the first parameter of a
# cursor-key as a repeat count.
#
# A parameterized string should (really) not begin with SS3 (\EO).
# Rather, CSI (\E[) should be used.
#
# For these reasons, the original assignments were deprecated. For
# compatibility reasons, they are still available as a setting of xterm's
# modifyCursorKeys resource. These fragments list the modified cursor-keys
# that might apply to xterm+pcfkeys with different values of that resource.
xterm+pcc3|fragment with modifyCursorKeys:3,
kDN=\E[>1;2B,
kDN5=\E[>1;5B,
kDN6=\E[>1;6B,
kLFT5=\E[>1;5D,
kLFT6=\E[>1;6D,
kRIT5=\E[>1;5C,
kRIT6=\E[>1;6C,
kUP=\E[>1;2A,
kUP5=\E[>1;5A,
kUP6=\E[>1;6A,
xterm+pcc2|fragment with modifyCursorKeys:2,
kDN=\E[1;2B,
kDN5=\E[1;5B,
kDN6=\E[1;6B,
kLFT5=\E[1;5D,
kLFT6=\E[1;6D,
kRIT5=\E[1;5C,
kRIT6=\E[1;6C,
kUP=\E[1;2A,
kUP5=\E[1;5A,
kUP6=\E[1;6A,
xterm+pcc1|fragment with modifyCursorKeys:1,
kDN=\E[2B,
kDN5=\E[5B,
kDN6=\E[6B,
kLFT5=\E[5D,
kLFT6=\E[6D,
kRIT5=\E[5C,
kRIT6=\E[6C,
kUP=\E[2A,
kUP5=\E[5A,
kUP6=\E[6A,
xterm+pcc0|fragment with modifyCursorKeys:0,
kDN=\EO2B,
kDN5=\EO5B,
kDN6=\EO6B,
kLFT5=\EO5D,
kLFT6=\EO6D,
kRIT5=\EO5C,
kRIT6=\EO6C,
kUP=\EO2A,
kUP5=\EO5A,
kUP6=\EO6A,
#
# This chunk is used for building the VT220/Sun/PC keyboard variants.
xterm-basic|modern xterm terminal emulator - common,
am,
bce,
km,
mc5i,
mir,
msgr,
xenl,
AX,
colors#8,
cols#80,
it#8,
lines#24,
pairs#64,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
blink=\E[5m,
bold=\E[1m,
cbt=\E[Z,
civis=\E[?25l,
clear=\E[H\E[2J,
cnorm=\E[?12l\E[?25h,
cr=^M,
csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD,
cub1=^H,
cud=\E[%p1%dB,
cud1=^J,
cuf=\E[%p1%dC,
cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH,
cuu=\E[%p1%dA,
cuu1=\E[A,
cvvis=\E[?12;25h,
dch=\E[%p1%dP,
dch1=\E[P,
dl=\E[%p1%dM,
dl1=\E[M,
ech=\E[%p1%dX,
ed=\E[J,
el=\E[K,
el1=\E[1K,
flash=\E[?5h$<100/>\E[?5l,
home=\E[H,
hpa=\E[%i%p1%dG,
ht=^I,
hts=\EH,
ich=\E[%p1%d@,
il=\E[%p1%dL,
il1=\E[L,
ind=^J,
invis=\E[8m,
is2=\E[!p\E[?3;4l\E[4l\E>,
kbs=^H,
kdch1=\E[3~,
kmous=\E[M,
mc0=\E[i,
mc4=\E[4i,
mc5=\E[5i,
meml=\El,
memu=\Em,
op=\E[39;49m,
rc=\E8,
rev=\E[7m,
ri=\EM,
rmacs=\E(B,
rmam=\E[?7l,
rmcup=\E[?1049l,
rmir=\E[4l,
rmkx=\E[?1l\E>,
rmm=\E[?1034l,
rmso=\E[27m,
rmul=\E[24m,
rs1=\Ec,
rs2=\E[!p\E[?3;4l\E[4l\E>,
sc=\E7,
setab=\E[4%p1%dm,
setaf=\E[3%p1%dm,
setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
sgr0=\E(B\E[m,
smacs=\E(0,
smam=\E[?7h,
smcup=\E[?1049h,
smir=\E[4h,
smkx=\E[?1h\E=,
smm=\E[?1034h,
smso=\E[7m,
smul=\E[4m,
tbc=\E[3g,
u6=\E[%i%d;%dR,
u7=\E[6n,
u8=\E[?1;2c,
u9=\E[c,
vpa=\E[%i%p1%dd,
#
# The xterm-new description has all of the features, but is not completely
# compatible with vt220. If you are using a Sun or PC keyboard, set the
# sunKeyboard resource to true:
# + maps the editing keypad
# + interprets control-function-key as a second array of keys, so a
# 12-fkey keyboard can support vt220's 20-fkeys.
# + maps numeric keypad "+" to ",".
# + uses DEC-style control sequences for the application keypad.
#
# Some packagers modify xterm's resource definitions to provide extra function
# keys by using the shift-modifier in the translations resource. However, that
# interferes with the DECUDK functionality.
#
xterm-vt220|xterm emulating vt220,
ka1=\EOw,
ka3=\EOy,
kb2=\EOu,
kc1=\EOq,
kc3=\EOs,
kcbt=\E[Z,
kcub1=\EOD,
kcud1=\EOB,
kcuf1=\EOC,
kcuu1=\EOA,
kend=\E[4~,
kent=\EOM,
kf1=\EOP,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf13=\E[25~,
kf14=\E[26~,
kf15=\E[28~,
kf16=\E[29~,
kf17=\E[31~,
kf18=\E[32~,
kf19=\E[33~,
kf2=\EOQ,
kf20=\E[34~,
kf3=\EOR,
kf4=\EOS,
kf5=\E[15~,
kf6=\E[17~,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
khome=\E[1~,
kich1=\E[2~,
knp=\E[6~,
kpp=\E[5~,
use=xterm-basic,
#
xterm-vt52|xterm emulating dec vt52,
cols#80,
it#8,
lines#24,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
clear=\EH\EJ,
cr=^M,
cub1=\ED,
cud1=\EB,
cuf1=\EC,
cup=\EY%p1%' '%+%c%p2%' '%+%c,
cuu1=\EA,
ed=\EJ,
el=\EK,
home=\EH,
ht=^I,
ind=^J,
kbs=^H,
kcub1=\ED,
kcud1=\EB,
kcuf1=\EC,
kcuu1=\EA,
nel=^M^J,
ri=\EI,
rmacs=\EG,
smacs=\EF,
#
# Sun does not number the function keys this way in their sparse termcap; their
# terminal descriptions ignore the keypads. kb(7M) states that there are codes
# reserved for 64 function keys, 16 each in left, right, top and bottom. Each
# keyboard type has a different number of function keys in different
# arrangements. Using xkeycaps for reference:
#
# Type 3: left 10, top 9, right 15
# ------
# kf1-kf9 are XK_F1-XK_F9
# There is no kf10 on this keyboard type.
# kf11-kf20 are keysyms XK_L1 through XK_L10.
# kf31-kf45 are keysyms XK_R1 through XK_R15.
#
# However, X's keysymdef.h is hard-coded to make
# XK_L1==XK_F11 and
# XK_R1==XK_F21,
# by someone who was unfamiliar with terminal types other than Sun's. So
# xterm uses the internal X keysymbols, but the terminfo entry uses the Sun
# numbering scheme.
#
# Type 4: left 11, top 12, right 15
# ------
# The left-keypad contains an unnumbered Help-key.
# The right-keypad also contains NumLock, Ins, Del, Enter, + and - keys which
# do not appear to be part of the R-sequence.
#
# Type 5: left 9, top 12, right (more than one keypad)
# ------
# These keyboards do not use the same naming convention, look like a hybrid of
# the type 4 and IBM keyboards.
#
# XTerm resources:
# ---------------
# Set the modifyFunctionKeys resource to negative (-1) to make it simple to
# enter the higher function-key values using shift- and control-modifiers.
#
xterm-sun|xterm with sun function keys,
kb2=\E[218z,
kcpy=\E[197z,
kcub1=\EOD,
kcud1=\EOB,
kcuf1=\EOC,
kcuu1=\EOA,
kdch1=\E[3z,
kend=\E[220z,
kent=\EOM,
kf1=\E[224z,
kf10=\E[233z,
kf11=\E[192z,
kf12=\E[193z,
kf13=\E[194z,
kf14=\E[195z,
kf15=\E[196z,
kf17=\E[198z,
kf18=\E[199z,
kf19=\E[200z,
kf2=\E[225z,
kf20=\E[201z,
kf3=\E[226z,
kf31=\E[208z,
kf32=\E[209z,
kf33=\E[210z,
kf34=\E[211z,
kf35=\E[212z,
kf36=\E[213z,
kf38=\E[215z,
kf4=\E[227z,
kf40=\E[217z,
kf42=\E[219z,
kf44=\E[221z,
kf45=\E[222z,
kf46=\E[234z,
kf47=\E[235z,
kf5=\E[228z,
kf6=\E[229z,
kf7=\E[230z,
kf8=\E[231z,
kf9=\E[232z,
kfnd=\E[200z,
khlp=\E[196z,
khome=\E[214z,
kich1=\E[2z,
knp=\E[222z,
kpp=\E[216z,
kund=\E[195z,
use=xterm-basic,
#
xterm-hp|xterm with hpterm function keys,
kclr=\EJ,
kcub1=\ED,
kcud1=\EB,
kcuf1=\EC,
kcuu1=\EA,
kdch1=\EP,
kend=\EF,
kf1=\Ep,
kf2=\Eq,
kf3=\Er,
kf4=\Es,
kf5=\Et,
kf6=\Eu,
kf7=\Ev,
kf8=\Ew,
khome=\Eh,
kich1=\EQ,
knp=\ES,
kpp=\ET,
use=xterm-basic,
#
# scoterm implements 48 function-keys using shift- and control-modifiers to
# multiple 12 function-keys. X has a hard-coded limit of 35 function-keys,
# but xterm can represent larger values.
#
# XTerm resources:
# ---------------
# Set the modifyFunctionKeys resource to negative (-1) to make it simple to
# enter the higher function-key values using shift- and control-modifiers.
#
# Also, set ctrlFKeys resource to 12 (the default is 10) to make xterm see 48
# function-keys on a keyboard with 12 function-keys and 4 control/shift
# modifier combinations.
#
xterm-sco|xterm with SCO function keys,
kbeg=\E[E,
kcub1=\E[D,
kcud1=\E[B,
kcuf1=\E[C,
kcuu1=\E[A,
kdch1=\177,
kend=\E[F,
kf1=\E[M,
kf10=\E[V,
kf11=\E[W,
kf12=\E[X,
kf13=\E[Y,
kf14=\E[Z,
kf15=\E[a,
kf16=\E[b,
kf17=\E[c,
kf18=\E[d,
kf19=\E[e,
kf2=\E[N,
kf20=\E[f,
kf21=\E[g,
kf22=\E[h,
kf23=\E[i,
kf24=\E[j,
kf25=\E[k,
kf26=\E[l,
kf27=\E[m,
kf28=\E[n,
kf29=\E[o,
kf3=\E[O,
kf30=\E[p,
kf31=\E[q,
kf32=\E[r,
kf33=\E[s,
kf34=\E[t,
kf35=\E[u,
kf36=\E[v,
kf37=\E[w,
kf38=\E[x,
kf39=\E[y,
kf4=\E[P,
kf40=\E[z,
kf41=\E[@,
kf42=\E[[,
kf43=\E[\\,
kf44=\E[],
kf45=\E[\^,
kf46=\E[_,
kf47=\E[`,
kf48=\E[{,
kf5=\E[Q,
kf6=\E[R,
kf7=\E[S,
kf8=\E[T,
kf9=\E[U,
khome=\E[H,
kich1=\E[L,
kmous=\E[>M,
knp=\E[G,
kpp=\E[I,
use=xterm-basic,
#
# Other variants:
xterm-24|xterms|vs100|xterm terminal emulator (X Window System),
lines#24,
use=xterm,
xterm-65|xterm with tall window 65x80 (X Window System),
lines#65,
use=xterm,
xterm-bold|xterm with bold instead of underline (X Window System),
smso=\E[7m,
smul=\E[1m,
use=xterm,
xterm-boldso|xterm with bold for standout (X Window System),
rmso=\E[m,
smso=\E[1m,
use=xterm,
xterm-mono|monochrome xterm,
bce@,
colors@,
ncv@,
pairs@,
op@,
setab@,
setaf@,
setb@,
setf@,
sgr@,
use=xterm,
#
# VTxxx terminals are usually set up so that full-screen applications will use
# the cursor application mode strings. This is good for full-screen
# applications, including legacy applications which may have hard-coded
# behavior, but bad for interactive shells (e.g., tcsh, bash) which use arrow
# keys to scroll through a history of command strings.
#
# To see the difference between normal/application modes, consider this example:
# + In normal (non-application) mode, the terminal transmits a down-arrow
# as \E[C, which happens to echo as a down-arrow.
# + In application mode the terminal transmits \EOC, which echoes as C.
# That is because the \EO is the SS3 control, which says to use the
# character from the G3 character set for the next cell.
#
# One example of hard-coded behavior would be for applications written to work
# with VT52 and VT100 terminals. If the application's parser ignores 'O' and
# '?' characters after the escape, then the cursor and keypad strings for the
# two terminals are the same. (Indeed, one of the first curses applications
# which I used did something like this to cover "ANSI" terminals -TD).
#
# To make this work (leaving the cursor keys in normal mode), we have to adjust
# the terminal initialization sequences:
#
# smkx/rmkx set/reset the cursor and keypad application modes. We retain
# the latter (otherwise many applications fail).
#
# smcup/rmcup set/restore cursor-addressing mode for full-screen
# applications. For xterm, this normally means the alternate
# screen, which is not compatible with interactive shells. Some
# programs are "smart" and disable these.
#
xterm-noapp|xterm with cursor keys in normal mode,
kcub1=\E[D,
kcud1=\E[B,
kcuf1=\E[C,
kcuu1=\E[A,
rmcup@,
rmkx=\E>,
smcup@,
smkx=\E=,
use=xterm,
#
# This should work for the commonly used "color xterm" variations (XFree86
# xterm, color_xterm, nxterm, rxvt). Note that it does not set 'bce', so for
# XFree86 and and rxvt, some applications that use colors will be less
# efficient, and in a few special cases (with "smart" optimization) the wrong
# color will be painted in spots.
xterm-color|generic "ANSI" color xterm (X Window System),
colors#8,
ncv@,
pairs#64,
op=\E[m,
setab=\E[4%p1%dm,
setaf=\E[3%p1%dm,
use=xterm-r6,
#
# vi may work better with this entry, because vi
# doesn't use insert mode much
xterm-ic|xterm-vi|xterm with insert character instead of insert mode,
mir@,
ich=\E[%p1%d@,
ich1=\E[@,
rmir@,
smir@,
use=xterm,
#
# This is used only for testing (it's not relevant to DEC VTxxx terminals, but
# to ncurses).
xterm-xmc|xterm with magic-cookie glitch,
xmc#1,
use=xterm-new,
#
# This one also is primarily for testing ncurses; while the ISO 6429 defines
# the REP control, none of the DEC VTxxx terminals (VT52 through VT420) support
# it.
xterm-rep|xterm with repeat-character control,
rep=%p1%c\E[%p2%{1}%-%db,
use=xterm-new,
#
# This is mainly for testing xterm; the real VT220 will not let you switch
# character sets without first altering the keyboard language in the setup
# screen. Some emulators allow this anyway. (Note that these strings are
# normally used only for printers). The parameter to csnm and scs is the same
# in both cases: the keyboard language parameter returned by CSI ? 2 6 n.
xterm-nrc|xterm with VT220 national replacement character sets,
csnm=%?%p1%{1}%=%tNorth American%e%p1%{2}%=%tBritish%e%p1%{3}%=%tFlemish%e%p1%{4}%=%tFrench Canadian%e%p1%{5}%=%tDanish%e%p1%{6}%=%tFinnish%e%p1%{7}%=%tGerman%e%p1%{8}%=%tDutch%e%p1%{9}%=%tItalian%e%p1%{10}%=%tSwiss (French)%e%p1%{11}%=%tSwiss (German)%e%p1%{12}%=%tSwedish%e%p1%{13}%=%tNorwegian%e%p1%{14}%=%tFrench/Belgian%e%p1%{15}%=%tSpanish%;,
scs=%?%p1%{1}%=%t\E(B%e%p1%{2}%=%t\E(A%e%p1%{3}%=%t\E(R%e%p1%{4}%=%t\E(9%e%p1%{5}%=%t\E(E%e%p1%{6}%=%t\E(5%e%p1%{7}%=%t\E(K%e%p1%{8}%=%t\E(4%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(=%e%p1%{11}%=%t\E(=%e%p1%{12}%=%t\E(7%e%p1%{13}%=%t\E(E%e%p1%{14}%=%t\E(R%e%p1%{15}%=%t\E(Z%;,
use=xterm-new,
#
# Foreground 0-15 maps (with toggles) into 30-37 & 90-97
# Background 0-15 maps (with toggles) into 40-47 & 100-107
#
# Originally I suppressed setaf/setab, since ANSI specifies only 8 colors, but
# Stephen Marley persuaded me to allow the "ANSI" color controls to extend to
# 16 colors. (Note that ncurses 4.2 uses setf/setb from this description;
# however 5.0 selects either according to their availability). - T.Dickey
#
# SVr4 curses does not use more than 8 colors anyway, so using 16 colors is
# either for terminfo-level applications or via ncurses.
xterm-16color|xterm with 16 colors,
colors#16,
pairs#256,
setab=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm,
setaf=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%dm,
setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
use=xterm-new,
#
# This uses RGB values 0..1000
#
# 256 colors should give 65536 pairs, but terminfo stores numbers in a signed
# short. Most people will not notice problems with only 32767 pairs.
xterm-256color|xterm with 256 colors,
ccc,
colors#256,
pairs#32767,
initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m,
setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
setb@,
setf@,
use=xterm-new,
xterm-88color|xterm with 88 colors,
colors#88,
pairs#7744,
use=xterm-256color,
#
# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color.
# To use it, your decTerminalID resource must be set to 200 or above, and the
# sunKeyboard resource set to true.
#
# HTS \E H \210
# RI \E M \215
# SS3 \E O \217
# CSI \E [ \233
#
xterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
am,
bce,
km,
mc5i,
mir,
msgr,
npc,
xenl,
colors#8,
cols#80,
it#8,
lines#24,
pairs#64,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
blink=\2335m,
bold=\2331m,
cbt=\233Z,
civis=\233?25l,
clear=\233H\2332J,
cnorm=\233?25l\233?25h,
cr=^M,
csr=\233%i%p1%d;%p2%dr,
cub=\233%p1%dD,
cub1=^H,
cud=\233%p1%dB,
cud1=^J,
cuf=\233%p1%dC,
cuf1=\233C,
cup=\233%i%p1%d;%p2%dH,
cuu=\233%p1%dA,
cuu1=\233A,
cvvis=\233?12;25h,
dch=\233%p1%dP,
dch1=\233P,
dl=\233%p1%dM,
dl1=\233M,
ech=\233%p1%dX,
ed=\233J,
el=\233K,
el1=\2331K,
flash=\233?5h$<100/>\233?5l,
home=\233H,
hpa=\233%i%p1%dG,
ht=^I,
hts=\210,
ich=\233%p1%d@,
il=\233%p1%dL,
il1=\233L,
ind=^J,
invis=\2338m,
is2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
ka1=\217w,
ka3=\217u,
kb2=\217y,
kbeg=\217E,
kbs=^H,
kc1=\217q,
kc3=\217s,
kcbt=\233Z,
kcub1=\217D,
kcud1=\217B,
kcuf1=\217C,
kcuu1=\217A,
kdch1=\2333~,
kend=\2334~,
kent=\217M,
kf1=\23311~,
kf10=\23321~,
kf11=\23323~,
kf12=\23324~,
kf13=\23325~,
kf14=\23326~,
kf15=\23328~,
kf16=\23329~,
kf17=\23331~,
kf18=\23332~,
kf19=\23333~,
kf2=\23312~,
kf20=\23334~,
kf3=\23313~,
kf4=\23314~,
kf5=\23315~,
kf6=\23317~,
kf7=\23318~,
kf8=\23319~,
kf9=\23320~,
khome=\2331~,
kich1=\2332~,
kmous=\233M,
knp=\2336~,
kpp=\2335~,
mc0=\233i,
mc4=\2334i,
mc5=\2335i,
meml=\El,
memu=\Em,
op=\23339;49m,
rc=\E8,
rev=\2337m,
ri=\215,
rmacs=\E(B,
rmam=\233?7l,
rmcup=\233?1049l,
rmir=\2334l,
rmkx=\233?1l\E>,
rmso=\23327m,
rmul=\23324m,
rs1=\Ec,
rs2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
sc=\E7,
setab=\2334%p1%dm,
setaf=\2333%p1%dm,
setb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
setf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
sgr0=\2330m\E(B,
smacs=\E(0,
smam=\233?7h,
smcup=\233?1049h,
smir=\2334h,
smkx=\233?1h\E=,
smso=\2337m,
smul=\2334m,
tbc=\2333g,
u6=\233[%i%d;%dR,
u7=\E[6n,
u8=\233[?1;2c,
u9=\E[c,
vpa=\233%i%p1%dd,
#
# Compatible with the R6 xterm, with the following changes:
# + added acsc (perhaps some versions of tic assume the standard vt100
# alternate character set)
# + added u6, u7, u8, u9 strings for Daniel Weaver's tack program.
# + added kmous string for ncurses.
# + added khome/kend strings (which conflict with kfnd/kslt, see note).
xterm-r6|xterm-old|xterm X11R6 version,
am,
km,
mir,
msgr,
xenl,
cols#80,
it#8,
lines#24,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
blink@,
bold=\E[1m,
clear=\E[H\E[2J,
cr=^M,
csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD,
cub1=^H,
cud=\E[%p1%dB,
cud1=^J,
cuf=\E[%p1%dC,
cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH,
cuu=\E[%p1%dA,
cuu1=\E[A,
dch=\E[%p1%dP,
dch1=\E[P,
dl=\E[%p1%dM,
dl1=\E[M,
ed=\E[J,
el=\E[K,
enacs=\E)0,
home=\E[H,
ht=^I,
hts=\EH,
il=\E[%p1%dL,
il1=\E[L,
ind=^J,
is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8,
kbs=^H,
kcub1=\EOD,
kcud1=\EOB,
kcuf1=\EOC,
kcuu1=\EOA,
kdch1=\177,
kend=\E[4~,
kf1=\E[11~,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf13=\E[25~,
kf14=\E[26~,
kf15=\E[28~,
kf16=\E[29~,
kf17=\E[31~,
kf18=\E[32~,
kf19=\E[33~,
kf2=\E[12~,
kf20=\E[34~,
kf3=\E[13~,
kf4=\E[14~,
kf5=\E[15~,
kf6=\E[17~,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
khome=\E[1~,
kich1=\E[2~,
kmous=\E[M,
knp=\E[6~,
kpp=\E[5~,
meml=\El,
memu=\Em,
rc=\E8,
rev=\E[7m,
ri=\EM,
rmacs=^O,
rmcup=\E[2J\E[?47l\E8,
rmir=\E[4l,
rmkx=\E[?1l\E>,
rmso=\E[m,
rmul=\E[m,
rs2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8,
sc=\E7,
sgr0=\E[m,
smacs=^N,
smcup=\E7\E[?47h,
smir=\E[4h,
smkx=\E[?1h\E=,
smso=\E[7m,
smul=\E[4m,
tbc=\E[3g,
u6=\E[%i%d;%dR,
u7=\E[6n,
u8=\E[?1;2c,
u9=\E[c,
#
# Compatible with the R5 xterm, with the following changes:
# + changed 'blink=@', to 'blink@' (the former meant that "@" would start
# a blink, the latter that it is not supported).
# + changed kf1 through kf4 to correspond with actual usage. Though X
# supports keypad symbols for PF1 to PF4, and xterm interprets these
# correctly, the F1 to F4 codes are commonly (but incorrectly) used.
# + moved reset string from rs1 to rs2, to correlate better with termcap.
# + make khome consistent with other entries.
# + use rmul/smul, rmir/smir from termcap, but not rmcup/smcup because
# not everyone wants the alternate screen.
# + added u6, u7, u8, u9 strings for Daniel Weaver's tack program.
# + added kmous string for ncurses.
xterm-r5|xterm R5 version,
am,
km,
msgr,
xenl,
cols#80,
it#8,
lines#24,
bel=^G,
blink@,
bold=\E[1m,
clear=\E[H\E[2J,
cr=^M,
csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD,
cub1=^H,
cud=\E[%p1%dB,
cud1=^J,
cuf=\E[%p1%dC,
cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH,
cuu=\E[%p1%dA,
cuu1=\E[A,
dch=\E[%p1%dP,
dch1=\E[P,
dl=\E[%p1%dM,
dl1=\E[M,
ed=\E[J,
el=\E[K,
home=\E[H,
ht=^I,
hts=\EH,
ich=\E[%p1%d@,
ich1=\E[@,
il=\E[%p1%dL,
il1=\E[L,
ind=^J,
kbs=^H,
kcub1=\EOD,
kcud1=\EOB,
kcuf1=\EOC,
kcuu1=\EOA,
kdch1=\177,
kdl1=\E[31~,
kel=\E[8~,
kend=\E[4~,
kf0=\EOq,
kf1=\E[11~,
kf10=\E[21~,
kf11=\E[23~,
kf12=\E[24~,
kf2=\E[12~,
kf3=\E[13~,
kf4=\E[14~,
kf5=\E[15~,
kf6=\E[17~,
kf7=\E[18~,
kf8=\E[19~,
kf9=\E[20~,
khome=\E[1~,
kich1=\E[2~,
kil1=\E[30~,
kmous=\E[M,
knp=\E[6~,
kpp=\E[5~,
rc=\E8,
rev=\E[7m,
ri=\EM,
rmir=\E[4l,
rmkx=\E[?1l\E>,
rmso=\E[m,
rmul=\E[m,
rs2=\E>\E[?1;3;4;5;6l\E[4l\E[?7h\E[m\E[r\E[2J\E[H,
sc=\E7,
sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m,
sgr0=\E[m,
smir=\E[4h,
smkx=\E[?1h\E=,
smso=\E[7m,
smul=\E[4m,
tbc=\E[3g,
u6=\E[%i%d;%dR,
u7=\E[6n,
u8=\E[?1;2c,
u9=\E[c,
#
# Customization begins here.
xterm-xfree86|xterm terminal emulator (XFree86),
use=xterm-new,
#
# This is the only entry which you should have to customize, since "xterm"
# is widely used for a variety of incompatible terminal emulations including
# color_xterm and rxvt.
xterm|X11 terminal emulator,
use=xterm-new,
# use=xterm-r6,