# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.607 $
-# $Date: 2017/07/30 00:10:59 $
+# $Revision: 1.650 $
+# $Date: 2018/01/22 01:14:23 $
#
# The original header is preserved below for reference. It is noted that there
# is a "newer" version which differs in some cosmetic details (but actually
colors#8, ncv#3, pairs#64,
op=\E[39;49m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ecma+italics|ECMA-48 italics,
+ ritm=\E[23m, sitm=\E[3m,
+
# Attribute control for ECMA-48-compatible terminals
ecma+sgr|attribute capabilities for true ECMA-48 terminals,
rmso=\E[27m, rmul=\E[24m, use=klone+sgr8,
ri=\EI, rmcup=, rmso=\Eq, rs1=\Ez_\Eb@\EcA, sc=\Ej, sgr0=\Eq,
smcup=\Ee, smso=\Ep,
-#### Apple Terminal.app
+#### Apple
+
+######## Terminal.app
# nsterm*|Apple_Terminal - AppKit Terminal.app
#
nsterm|Apple_Terminal|AppKit Terminal.app,
use=nsterm-build361,
-# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and
-# more featureful) terminal emulator for Mac OS X. It is similar
-# enough in capabilities to nsterm-16color that I have derived this
-# description from that one, but as far as I know they share no code.
-# Many of the features are user-configurable, but I attempt only to
-# describe the default configuration.
-#
-# NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is
-# disabled.
+######## iTerm, iTerm2
+
+# iTerm 0.10
+#
+# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and more
+# featureful) terminal emulator for Mac OS X. It is similar enough in
+# capabilities to nsterm-16color that I have derived this description from that
+# one, but as far as I know they share no code. Many of the features are
+# user-configurable, but I attempt only to describe the default configuration
+# (B. Sittler).
+#
+# According to its documentation, iTerm uses terminfo to obtain function key
+# definitions. For example, if it is started with TERM=xterm, it uses key
+# definitons from that terminal description from the local OSX machine. Those
+# $TERM settings may be augmented using the bookmark and profile dialogs.
+# However, the behavior seen with tack does not agree with either the terminfo
+# description or the function keys in its "xterm" profile.
+#
+# NOTES:
+# with vttest:
+# reports primary DA as VT100 with AVO: \E[?1;2c
+# reports secondary DA as "\E[>0;95;c"
+# supports blink and underline
+# displays bold text as red
+# recognizes all dtterm controls for modifying/querying window
+# resizing via escape sequence is very slow
+# supports X11R5 mouse (no X10) and XFree86 mouse (button- and event-tracking)
+# supports X11R5 alternate screen and XFree86 1049 (no 1047/1048)
+# supports CHA, VPA, VPR, but no other ECMA-48 cursor movement such as HPA
+# with tack:
+# .
+# with ncurses test-program:
+# ncurses 'k' has problem in second screen; light background does not fill
+# with xterm scripts
+# can display/alter xterm-256color cube
+# can display/alter xterm-88color cube
iTerm.app|iterm|iTerm.app terminal emulator for Mac OS X,
- bce, bw@,
- csr@, dim@, kend=\EOF, khome=\EOH,
+ am, bce, hs, mir, msgr, npc, xenl, xon,
+ cols#80, it#8, lines#24, wsl#50,
+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
+ clear=\E[H\E[J, cnorm=\E[?25h, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ cud=\E[%p1%dB, cud1=\n, 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,
+ dsl=\E]2;\007, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
+ flash=\E[?5h$<200/>\E[?5l, fsl=^G, home=\E[H,
+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
+ il=\E[%p1%dL, il1=\E[L, ind=\n, kLFT=\E[1;2D, kRIT=\E[1;2C,
+ kbs=^?, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
+ kcuu1=\EOA, kdch1=\E[3~, kend=\EOF, kent=\EOM, kf1=\EOP,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR,
+ kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
+ kf9=\E[20~, khome=\EOH, knp=\E[6~, kpp=\E[5~, op=\E[0m,
+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l,
+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>,
+ rmso=\E[m, rmul=\E[m,
+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?
+ %p9%t\016%e\017%;,
+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h,
+ smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
+ tbc=\E[3g, tsl=\E]2;, u6=\E[%i%d;%dR, u7=\E[6n,
+ u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd, TS=\E]2;,
+ kEND5=\E[1;5F, kHOM5=\E[1;5H, use=vt100+keypad,
+ use=xterm+x11mouse, use=xterm+256setaf,
+
+# iTerm2 3.0.15
+#
+# https://www.iterm2.com/
+# https://github.com/gnachman/iTerm2
+# ~/Library/Preferences/com.googlecode.iterm2.plist
+# "iTerm" stalled in 2009. A different set of developers began "iTerm2".
+#
+# NOTES:
+# with vttest:
+# reports primary DA as VT100 with AVO: \E[?1;2c
+# reports secondary DA as "\E[>0;95;0c"
+# numeric keypad application mode does not work
+# by default, dtterm window-modifications are ignored
+# by default, dtterm window-reports return, but icon as "L", window as "l"
+# supports SD/SU, no REP, SL, SR
+# supports CBT, CHA, VPA, CNL, CPL, VPR (no HPA, CHT, HPR)
+# no improvement to XFree86 1047/1048 modes
+# with tack:
+# in meta-mode, imitates xterm, sending UTF-8
+# special-key modifiers based on xterm use incompatible default for alt/meta
+# with ncurses test-program:
+# no italics
+# no improvement to ncurses 'k'
+# with xterm scripts:
+# acolors.sh works
+#
+# Italic text did not work initially, apparently because upgrading did not
+# add/change that preference (set in Preferences, Profiles, Text). A new
+# install of iTerm 3.0.15 provides italics by default (blinking text:no).
+#
+# 2018/01/21: found xterm+sm+1006 did not work with version 3.1.5
+iTerm2.app|iterm2|terminal emulator for Mac OS X,
+ blink@, dim=\E[2m, kEND=\E[1;2F, kHOM=\E[1;2H, ka1@, ka3@,
+ kb2@, kc1@, kc3@, kent@, kf13=\E[1;2P, kf14=\E[1;2Q,
+ kf15=\E[1;2R, kf16=\E[1;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~,
+ kind=\E[1;2B, kri=\E[1;2A,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
- %p7%t;8%;m%?%p9%t\016%e\017%;,
- use=xterm+256setaf, use=nsterm-16color,
+ %p5%t;2%;m%?%p9%t\016%e\017%;,
+ kDN3=\E\E[B, kDN4=\E[1;10B, kDN5=\E[1;5B, kDN6=\E[1;6B,
+ kEND3=\E[1;9F, kEND4=\E[1;10F, kEND6=\E[1;6F,
+ kEND7=\E[1;13F, kEND8=\E[1;14F, kHOM3=\E[1;9H,
+ kHOM4=\E[1;10H, kHOM6=\E[1;6H, kHOM7=\E[1;13H,
+ kHOM8=\E[1;14H, kLFT3=\E\E[D, kLFT4=\E[1;10D,
+ kLFT5=\E[1;5D, kLFT6=\E[1;6D, kNXT3=\E\E[6~,
+ kPRV3=\E\E[5~, kRIT3=\E\E[C, kRIT4=\E[1;10C,
+ kRIT5=\E[1;5C, kRIT6=\E[1;6C, kUP3=\E\E[A, kUP4=\E[1;10A,
+ kUP5=\E[1;5A, kUP6=\E[1;6A, use=ecma+italics, use=iterm,
# xnuppc - Darwin PowerPC Console (a.k.a. "darwin")
#
# Not used here, the program recognizes escapes for italic, underline and
# dim, rendering those as green, cyan and gray respectively.
fbterm|FbTerm for Linux with framebuffer,
- colors#0x100, pairs#0x7fff,
+ colors#0x100, pairs#0x10000,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
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~,
kspd=^Z, nel=\r\n, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\E[T,
- rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E[10m, rmir=\E[4l,
- rmso=\E[27m, rmul=\E[24m, rs1=\EM\E[?1000l, sc=\E7,
- setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ rin=\E[%p1%dT, rmacs=\E[10m, rmir=\E[4l, rmso=\E[27m,
+ rmul=\E[24m, rs1=\EM\E[?1000l, sc=\E7, setab=\E[4%p1%dm,
+ setaf=\E[3%p1%dm,
sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;
2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
- sgr0=\E[0m, sitm=\E[3m, smacs=\E[11m, smir=\E[4h,
- smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l,
- gsbom=\E[>1h,
+ sgr0=\E[0m, smacs=\E[11m, smir=\E[4h, smso=\E[7m,
+ smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l, gsbom=\E[>1h,
+ use=ecma+italics,
#### QNX
#
iris-color|xwsh|IRIX ANSI with color,
ncv#33,
csr=\E[%i%p1%d;%p2%dr, dch=\E[%p1%dP, dim=\E[2m,
- ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, ritm=\E[23m,
- rmul=\E[24m, rs1=\Ec,
+ ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, rmul=\E[24m, rs1=\Ec,
rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
- sitm=\E[3m, use=vt100+enq, use=klone+color,
+ use=ecma+italics, use=vt100+enq, use=klone+color,
use=iris-ansi-ap,
#### OpenBSD consoles
#
# Several features such as backspace/delete are optional; this entry documents
# the default behavior -TD
-
+#
+# PuTTY recognizes xterm's 1049 mode for switching to/from alternate screen,
+# but implements it incorrectly as mentioned here:
+# http://stackoverflow.com/questions/24613237/terminal-retains-bg-color-after-closing-vim-using-color-scheme-and-putty-256co/37869114#37869114
putty|PuTTY terminal emulator,
am, bce, bw, ccc, mir, msgr, xenl, xon, XT,
colors#8, it#8, ncv#22, pairs#64, U8#1,
# "resize -s"), though it does not pass SIGWINCH to the application if the
# user resizes the window with the mouse.
teraterm2.3|Tera Term Pro,
- km, xon@,
+ km,
ncv#43, vt@,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
cnorm=\E[?25h, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
cuu1=\E[A, 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\E[?5l$<200/>, hpa=\E[%i%p1%dG,
+ flash=\E[?5h$<200/>\E[?5l, hpa=\E[%i%p1%dG,
il=\E[%p1%dL, il1=\E[L, kdch1=\E[3~, 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~,
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=\n, kbs=^H, kcub1=\EOD,
- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~,
- 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,
+ il=\E[%p1%dL, il1=\E[L, ind=\n, kcub1=\EOD, kcud1=\EOB,
+ kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, 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, use=vt100+enq,
+ smul=\E[4m, tbc=\E[3g, use=vt100+enq, use=xterm+kbs,
# Compatible with the R6 xterm
# (from XFree86 3.2 distribution, <acsc> and <it> added, <blink@> removed)
# added khome/kend, hts based on the R6 xterm code - TD
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=\n,
- is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, kbs=^H,
+ is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8,
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
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,
- use=vt100+enq,
+ use=xterm+kbs, use=vt100+enq,
xterm-old|antique xterm version,
use=xterm-r6,
# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up.
ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL,
il1=\E[L, ind=\n,
is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
- kbeg=\EOE, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
- kcuu1=\EOA, kdch1=^?, kend=\EOF, 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~, kfnd=\E[1~, khome=\EOH, kich1=\E[2~,
- kmous=\E[M, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, meml=\El,
- memu=\Em, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l,
- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>,
- rmso=\E[27m, rmul=\E[24m, rs1=^O,
- rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7,
+ kbeg=\EOE, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
+ kdch1=^?, kend=\EOF, 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~,
+ kfnd=\E[1~, khome=\EOH, kich1=\E[2~, kmous=\E[M, knp=\E[6~,
+ kpp=\E[5~, kslt=\E[4~, meml=\El, memu=\Em, rc=\E8, rev=\E[7m,
+ ri=\EM, rmacs=^O, rmam=\E[?7l, rmcup=\E[2J\E[?47l\E8,
+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
+ rs1=^O, rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>,
+ sc=\E7,
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}
%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h,
smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
- tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt100+enq,
+ tbc=\E[3g, vpa=\E[%i%p1%dd, use=xterm+kbs, use=vt100+enq,
use=ecma+color, use=vt220+keypad,
# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100
xterm-new|modern xterm terminal emulator,
npc,
indn=\E[%p1%dS, kb2=\EOE, kcbt=\E[Z, kent=\EOM,
- rin=\E[%p1%dT, use=ansi+rep, use=ansi+enq,
- use=xterm+pcfkeys, use=xterm+tmux, use=ecma+strikeout,
+ rin=\E[%p1%dT, use=ansi+rep, use=ecma+strikeout,
+ use=xterm+sm+1006, use=xterm+pcfkeys, use=xterm+tmux,
use=xterm-basic,
# This fragment is for people who cannot agree on what the backspace key
xterm+vt+edit|fragment for vt220-style editing keypad,
kfnd=\E[1~, kslt=\E[4~,
+# These variations for alternate-screen and title-stacking were introduced by
+# xterm patch #331:
+xterm+noalt|xterm without altscreen,
+ rmcup@, smcup@,
+
+xterm+alt1049|xterm 90 feature,
+ rmcup=\E[?1049l, smcup=\E[?1049h,
+
+xterm+titlestack|xterm 251 feature,
+ rmcup=\E[23;0;0t, smcup=\E[22;0;0t,
+
+xterm+alt+title|xterm 90 and 251 features combined,
+ rmcup=\E[?1049l\E[23;0;0t, smcup=\E[?1049h\E[22;0;0t,
#
# Those chunks use the new-style (the xterm oldFunctionKeys resource is false).
# Alternatively, the same scheme with old-style function keys as in xterm-r6
il=\E[%p1%dL, il1=\E[L, ind=\n, invis=\E[8m,
is2=\E[!p\E[?3;4l\E[4l\E>, kmous=\E[M, meml=\El,
memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
- ritm=\E[23m, 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,
+ rmacs=\E(B, rmam=\E[?7l, 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%;%?%p5%t;2%;%?%p2%t;4%;
%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
- sgr0=\E(B\E[m, sitm=\E[3m, 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,
- vpa=\E[%i%p1%dd, E3=\E[3J, use=ansi+pp, use=xterm+kbs,
- use=vt100+enq,
+ sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
+ smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m, smul=\E[4m,
+ tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3J, use=ecma+italics,
+ use=ansi+pp, use=xterm+kbs, use=xterm+alt+title,
+ use=ansi+enq,
# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997
# In retrospect, something like xterm-r6 was intended here -TD
# xterm patch #111 (1999/7/10) -TD
xterm+256color|xterm 256-color feature,
ccc,
- colors#0x100, pairs#0x7fff,
+ colors#0x100, pairs#0x10000,
initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
oc=\E]104\007,
# palette is hardcoded...
xterm+256setaf|xterm 256-color (set-only),
ccc@,
- colors#0x100, pairs#0x7fff,
- initc@,
+ colors#0x100, pairs#0x10000,
+ initc@, op=\E[39;49m,
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
rs1=\Ec\E]104\007, use=xterm+88color,
use=xterm-256color,
+# Emacs 26.1 and later support direct color mode in terminals, using a
+# combination of user-defined capabilities and ncurses-dependent function
+# calls. We will not include that here.
+#
+# Here is a first revision, which (disregarding the reuse of colors 1-7 which
+# is of interest only to the numerically illiterate), is compatible with other
+# terminal descriptions written for curses. It relies upon the extended range
+# for numeric capabilities provided in ncurses 6.1:
+xterm+direct2|xterm with direct-color indexing,
+ RGB,
+ colors#0x1000000, pairs#0x10000,
+ initc@, op=\E[39;49m,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e48\:2\:%p1%{65536}%/%d\:%p1
+ %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e38\:2\:%p1%{65536}%/%d\:%p1
+ %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+ setb@, setf@,
+xterm-direct2|xterm with direct-color indexing (old),
+ use=xterm+direct2, use=xterm+titlestack, use=xterm,
+
+# That in turn had a problem: in the original patch submitted for KDE konsole
+# in 2006, the submitter and the developer alike overlooked a "color space
+# identifier" parameter. This version provides for that parameter:
+xterm+direct|xterm with direct-color indexing,
+ RGB,
+ colors#0x1000000, pairs#0x10000,
+ initc@, op=\E[39;49m,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e48\:2\:\:%p1%{65536}%/%d\:%p1
+ %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e38\:2\:\:%p1%{65536}%/%d\:%p1
+ %{256}%/%{255}%&%d\:%p1%{255}%&%d%;m,
+ setb@, setf@,
+xterm-direct|xterm with direct-color indexing,
+ use=xterm+direct, use=xterm,
+
+# Meanwhile, in KDE #107487, the patch submitter and the developer both saw
+# that xterm's original implementation should have used colons for the
+# subparameter separators, but chose not to correct this in konsole. As of
+# late 2017, konsole still accepts only the nonstandard semicolon delimiters.
+xterm+indirect|xterm with direct-color indexing (old),
+ RGB,
+ colors#0x1000000, pairs#0x10000,
+ initc@, op=\E[39;49m,
+ setab=\E[%?%p1%{8}%<%t4%p1%d%e48;2;%p1%{65536}%/%d;%p1%{256}
+ %/%{255}%&%d;%p1%{255}%&%d%;m,
+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e38;2;%p1%{65536}%/%d;%p1%{256}
+ %/%{255}%&%d;%p1%{255}%&%d%;m,
+ setb@, setf@,
+konsole-direct|konsole with direct-color indexing,
+ use=xterm+indirect, use=konsole,
+st-direct|st with direct-color indexing,
+ use=xterm+indirect, use=st,
+vte-direct|vte with direct-color indexing,
+ use=xterm+direct, use=vte,
+
# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who
# asked for some of xterm's advanced features to be added to its terminfo
# entry. It defines extended capabilities not found in standard terminfo or
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,
- use=xterm+kbs,
+ u7=\E[6n, u8=\233[?%[;0123456789]c, u9=\E[c,
+ vpa=\233%i%p1%dd, use=xterm+kbs,
xterm-hp|xterm with hpterm function keys,
kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
# Testing with tack shows that flash does not/has not worked -TD
vte-2012|VTE 0.34.1,
ncv#16,
- dim=\E[2m, flash@, invis=\E[8m, ritm=\E[23m, rmso=\E[27m,
- rmul=\E[24m,
+ dim=\E[2m, flash@, invis=\E[8m, rmso=\E[27m, rmul=\E[24m,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p5%t;2%;%?%p7%t;8%;%?%p1%p3
%|%t;7%;m%?%p9%t\016%e\017%;,
- sitm=\E[3m, use=vte-2008,
+ use=ecma+italics, use=vte-2008,
# Version 3.6.1 sets TERM to xterm-256color (still hardcoded), which has
# 61 differences from a correct entry for gnome terminal.
gnome-2012|GNOME Terminal 3.6.0,
ncv@,
cbt=\E[Z, el1=\E[1K, flash=\E[?5h$<100/>\E[?5l,
ich=\E[%p1%d@, indn=\E[%p1%dS, kent=\EOM, rin=\E[%p1%dT,
- use=xterm+pcfkeys, use=vte-2012,
+ use=xterm+sm+1006, use=xterm+pcfkeys, use=vte-2012,
vte|VTE aka GNOME Terminal,
use=vte-2014,
xfce|Xfce Terminal,
use=vte-2008,
+# TERMITE
+#
+# https://github.com/thestinger/termite
+#
+# A review requires install of Arch Linux since Fedora and Debian don't have
+# this program. It uses "vte3-ng" (a conflicting package), which is here:
+# https://github.com/thestinger/vte-ng
+# which (based on the default branch setting) seems to be a fork of vte
+# 0.48.2, and is noted as such in Arch:
+# https://www.archlinux.org/packages/community/x86_64/vte3-ng/
+# It won't be merged:
+# https://bugzilla.gnome.org/show_bug.cgi?id=679658#c10
+# https://bugzilla.gnome.org/show_bug.cgi?id=78291
+# but perhaps made obsolete.
+#
+# The entry as given was mislabeled "xterm-termite" (it is not xterm), and
+# was mostly cut/paste from xterm-256color, but since VTE does not actually
+# implement several of the features in that terminal description, this one is
+# trimmed to eliminate those. Also, since it is a slightly older version of
+# VTE, it lacks a few more features (again, trimmed).
+termite|VTE-based terminal,
+ am, ccc, km, mir, msgr, npc, xenl,
+ cols#80, it#8, lines#24, ncv@,
+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
+ yzz{{||}}~~,
+ bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
+ clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
+ cud=\E[%p1%dB, cud1=\n, 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, 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, ind=\n, indn=\E[%p1%dS, invis=\E[8m,
+ is2=\E[!p\E[?3;4l\E[4l\E>, kb2=\EOE, kbs=^?, kcbt=\E[Z,
+ kent=\EOM, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM,
+ rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E(B, rmam=\E[?7l,
+ rmcup=\E[?1049l, rmkx=\E[?1l\E>, rmso=\E[27m,
+ rmul=\E[24m, rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7,
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
+ %t;7%;%?%p7%t;8%;m,
+ sgr0=\E(B\E[m, sitm=\E[3m, smacs=\E(0, smam=\E[?7h,
+ smcup=\E[?1049h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
+ tbc=\E[3g, vpa=\E[%i%p1%dd, use=ansi+idc, use=ansi+idl,
+ use=ansi+enq, use=xterm+256color, use=ecma+color,
+ use=xterm+pcfkeys, use=xterm+sl-twm,
+
#### Other GNOME
# Multi-Gnome-Terminal 1.6.2
#
hpa=\E[%i%p1%dG, indn=\E[%p1%dS, kbs=^?, kdch1=\E[3~,
kend=\E[4~, kf1@, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@,
kf17@, kf18@, kf19@, kf2@, kf20@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@,
- kf9@, kfnd@, khome=\E[1~, kslt@, rin=\E[%p1%dT, ritm=\E[23m,
- rmam=\E[?7l, rmso=\E[27m, rmul=\E[24m,
+ kf9@, kfnd@, khome=\E[1~, kslt@, rin=\E[%p1%dT, rmam=\E[?7l,
+ rmso=\E[27m, rmul=\E[24m,
rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?
%p9%t\016%e\017%;,
- sgr0=\E[0m\017, sitm=\E[3m, smam=\E[?7h, vpa=\E[%i%p1%dd,
- use=ecma+color, use=xterm-r6,
+ sgr0=\E[0m\017, smam=\E[?7h, vpa=\E[%i%p1%dd,
+ use=ecma+italics, use=ecma+color, use=xterm-r6,
konsole-linux|KDE console window with linux keyboard,
kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13@,
kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\E[[B, kf20@,
# Tested mlterm 3.2.2:
# mlterm 3.x has made changes, but they are not reflected in the included
-# mlterm.ti; this entry is based on testing with tack and vttest -TD
+# mlterm.ti; this entry is based on testing with ncurses, tack and vttest -TD
+# 2018/01/21: found xterm+sm+1006 did not work with version 3.3.8
mlterm3|multi lingual terminal emulator,
kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
- ritm=\E[23m, sitm=\E[3m, use=xterm+app, use=xterm+pcf0,
- use=xterm+pcc2, use=xterm+pce2, use=mlterm2,
+ use=ecma+italics, use=xterm+app, use=xterm+pcf0,
+ use=xterm+pcc2, use=xterm+pce2, use=xterm+x11mouse,
+ use=mlterm2,
# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD
#
# xiterm 0.5-5.2
# This is not based on xterm's source...
# vttest shows several problems with keyboard, cursor-movements.
-# see also http://invisible-island.net/xterm/xterm.faq.html#bug_xiterm
+# see also https://invisible-island.net/xterm/xterm.faq.html#bug_xiterm
xiterm|internationalized terminal emulator for X,
km@,
kbs=^?, kdch1=\E[3~, use=klone+color, use=xterm-r6,
# from BSD termcap. (hpterm: added empty <acsc>, we have no idea what ACS
# chars look like --esr)
hpterm|X-hpterm|hp X11 terminal emulator,
- am, da, db, mir, xhp,
+ am, da, db, mir, xhp, xon,
cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, pb#9600, xmc#0,
acsc=, bel=^G, bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=\r,
cub1=^H, cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC,
rmul=\E&d@,
sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+
%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
- sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB,
- smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
+ sgr0=\E&d@\017, smacs=^N, smir=\EQ, smkx=\E&s1A,
+ smln=\E&jB, smso=\E&dJ, smul=\E&dD, tbc=\E3,
+ vpa=\E&a%p1%dY,
# HPUX 11 provides a color version.
hpterm-color|HP X11 terminal emulator with color,
ccc,
rs2=\E[4l\E[34l\E[?1l\E[?3l\E[?5l\E[?7h, sc=\E7,
sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;
2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
- sgr0=\E[m, smacs=^N, smcup=\E[?1l\E=, smkx=\E=,
+ sgr0=\E[m\017, smacs=^N, smcup=\E[?1l\E=, smkx=\E=,
smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g,
#### MVTERM
# apparently implements alternate screen like xterm
# does not use padding, of course.
mvterm|vv100|SwitchTerm aka mvTERM,
- am, eslok, hs, km, mir, msgr, xenl,
+ am, eslok, hs, km, mir, msgr, xenl, xon,
colors#8, cols#80, it#8, lines#24, pairs#64,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
rmul=\E[24m,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
- sgr0=\E[m, smacs=^N, smir=\E[4h, smso=\E[7m, smul=\E[4m,
- vpa=\E[%i%p1%dd,
+ sgr0=\E[m\017, smacs=^N, smir=\E[4h, smso=\E[7m,
+ smul=\E[4m, vpa=\E[%i%p1%dd,
# mterm normally sets $TERM to "mterm"
mterm|mouse-sun|Der Mouse term,
am, bw, mir,
setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?
%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
- sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h,
+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, u6=\E[%i%d;%dR,
u7=\E[6n, vpa=\E[%i%p1%dd,
khome=\E[1~, knp=\E[6~, kpp=\E[5~, rev=\E[7m, rmacs=\E[10m,
rmam=\E[?7l, rmcup=\E[?1049l, rs1=\E[H\E[J\E[m\Ec,
setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6
- %t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
+ sgr=\E[0;10%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
+ %t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
sgr0=\E[0;10m, smacs=\E[11m, smam=\E[?7h,
smcup=\E[?1049h, smso=\E[3m, smul=\E[4m,
#
mgr|Bellcore MGR (non X) window system terminal emulation,
- am, km,
+ am, km, xon,
bel=^G, bold=\E2n, civis=\E9h, clear=^L, cnorm=\Eh, cr=\r,
csr=\E%p1%d;%p2%dt, cub1=^H, cud1=\Ef, cuf1=\Er,
cup=\E%p2%d;%p1%dM, cuu1=\Eu, cvvis=\E0h,
#### SIMPLETERM
# st.suckless.org
+
+st|stterm| simpleterm,
+ use=st-0.7,
+
+# Reviewed 0.7:
+# dim is intermittent, sometimes works, sometimes does not
+# italics may show up with yellow color
+# has control cursor-keys, alt cursor-keys, still no combinations
+# has control pageup/down
+st-0.7|simpleterm 0.7,
+ ccc,
+ dim=\E[2m,
+ initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*
+ %{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
+ kcbt@, kent@, oc=\E]104\007,
+ 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%;%?%p5%t;2%;%?%p7%t;8%;m,
+ Ss=\E]52;%p1%s;%p2%s\007, kDN3=\E[1;3B, kDN5=\E[1;5B,
+ kLFT3=\E[1;3D, kLFT5=\E[1;5D, kNXT3=\E[6;3~,
+ kNXT5=\E[6;5~, kPRV3=\E[5;3~, kPRV5=\E[5;5~,
+ kRIT3=\E[1;3C, kRIT5=\E[1;5C, kUP3=\E[1;3A, kUP5=\E[1;5A,
+ rmxx=\E[29m, smxx=\E[9m, use=st-0.6,
+
# st-0.4.1
#
# This version uses a table which supports a single modifier (a subset of
# Tmux unofficial extensions, see TERMINFO EXTENSIONS in tmux(1)
# still has no function keys past kf36 (no combinations of modifiers)
# no application keypad mode, e.g, kent.
-st|stterm| simpleterm 0.4.1,
- am, bce, hs, mir, msgr, npc, xenl, Tc, XT,
+st-0.6|simpleterm 0.6,
+ am, bce, hs, mir, msgr, npc, xenl, XT,
colors#8, cols#80, it#8, lines#24, pairs#64,
acsc=+C\,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyy
zz{{||}}~~,
kil1=\E[2;5~, kind=\E[1;2B, kmous=\E[M, knp=\E[6~,
kpp=\E[5~, kri=\E[1;2A, krmir=\E[2;2~, mc0=\E[i, mc4=\E[4i,
mc5=\E[5i, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
- ritm=\E[23m, rmacs=\E(B, rmcup=\E[?1049l, rmir=\E[4l,
- rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
- rs2=\E[4l\E>\E[?1034l, sc=\E7, setab=\E[4%p1%dm,
- setaf=\E[3%p1%dm,
+ rmacs=\E(B, rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>,
+ rmso=\E[27m, rmul=\E[24m, rs1=\Ec, rs2=\E[4l\E>\E[?1034l,
+ 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[0m, sitm=\E[3m, smacs=\E(0, smcup=\E[?1049h,
- smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
- tbc=\E[3g, tsl=\E]0;, u6=\E[%i%d;%dR, u7=\E[6n,
- u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd, Se=\E[2 q,
- Ss=\E[%p1%d q,
+ sgr0=\E[0m, smacs=\E(0, smcup=\E[?1049h, 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,
+ vpa=\E[%i%p1%dd, Se=\E[2 q, Ss=\E[%p1%d q, use=xterm+sl,
+ use=ecma+italics,
#
# st-0.1.1
#
# e) removed km
terminator|Terminator no line wrap,
eo, mir, msgr, xenl, xon,
- colors#0x100, cols#80, it#8, lines#24, lm#0, pairs#0x7fff,
+ colors#0x100, cols#80, it#8, lines#24, lm#0, pairs#0x10000,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J,
cnorm=\E[?25h, cr=\r, csr=\E[%i%p1%d;%p2%dr,
# This description uses xterm+pcf0, which is misleading because the program
# does not handle combinations of modifiers - but listing them all would
# involve more effort than its developers spent -TD
-terminology|EFL-based terminal emulator,
- mc5i@, xon@,
+terminology-0.6.1|EFL-based terminal emulator,
+ mc5i@,
blink@, ed@, el@, el1@, invis=\E[8m, kLFT=\E[1;2D,
kRIT=\E[1;2C, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
kRIT7=\E[1;7C, kUP=\E[1;2A, use=xterm+pcf0, use=vt100,
use=xterm+256setaf,
+# Tested terminology 1.0.0
+#
+# tack -
+# Shifted cursor-keys send nothing, but xterm modifiers for control+shift
+# and control+alt were added like xterm+pcc2
+# Editing keys have some features from xterm+pce2
+# Changed from xterm+pcf0 to xterm+pcf2
+#
+# vttest -
+# REP, SL, SR fail
+#
+# Aside from the partial fixes for function/cursor/editing keys, no improvement
+# in other tests versus 0.6.1
+terminology-1.0.0|EFL-based terminal emulator,
+ civis=\E[?25l, cnorm=\E[?12l\E[?25h, dim=\E[2m,
+ flash=\E[?5h$<100/>\E[?5l, kend=\E[OF, khome=\E[OH,
+ rmacs=\E(B,
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
+ %?%p1%p3%|%t;7%;%?%p7%t;8%;m$<2>,
+ sgr0=\E(B\E[m, smacs=\E(0, use=ecma+italics,
+ use=xterm+x11mouse, use=xterm+pce2, use=xterm+pcf2,
+ use=xterm+pcc2, use=terminology-0.6.1,
+
+terminology|EFL-based terminal emulator,
+ use=terminology-1.0.0,
+
######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS
#
am, hc,
colors#8, it#8, ncv#13, pairs#64,
bold=\E[1m, cud1=\n, ht=^I, ind=\n, op=\E[39;49m,
- ritm=\E[23m, rmul=\E[24m, setab=\E[4%p1%dm,
- setaf=\E[3%p1%dm, sgr0=\E[m, sitm=\E[3m, smul=\E[4m,
+ rmul=\E[24m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ sgr0=\E[m, smul=\E[4m, use=ecma+italics,
#### Screen
# sgr are not impacted (because that usually resets all capabilities before
# setting any), but termcap applications do not use sgr -TD
screen|VT 100/ANSI X3.64 virtual terminal,
- OTbs, OTpt, am, km, mir, msgr, xenl, G0,
+ OTbs, OTpt, am, km, mir, msgr, xenl, G0, XT,
colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
yzz{{||}}~~,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
- enacs=\E(B\E)0, flash=\Eg, home=\E[H, ht=^I, hts=\EH,
- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\n, is2=\E)0,
- kbs=^H, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
- kcuu1=\EOA, kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
+ enacs=\E(B\E)0, flash=\Eg, home=\E[H, hpa=\E[%i%p1%dG,
+ ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
+ ind=\n, indn=\E[%p1%dS, is2=\E)0, kbs=^H, kcbt=\E[Z,
+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
+ kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, 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~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
sgr=\E[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;
5%;%?%p5%t;2%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smcup=\E[?1049h, smir=\E[4h,
- smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g, E0=\E(B,
- S0=\E(%p1%c, use=ecma+color,
+ smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g,
+ vpa=\E[%i%p1%dd, E0=\E(B, S0=\E(%p1%c, use=ecma+color,
# The bce and status-line entries are from screen 3.9.13 (and require some
# changes to .screenrc).
screen-bce|VT 100/ANSI X3.64 virtual terminal with bce,
invis@, kIC@, kNXT@, kPRV@, meml@, memu@, rep@,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
%t;7%;%?%p4%t;5%;%?%p5%t;2%;m,
- E3@, use=screen+italics, use=screen+fkeys, use=xterm-new,
+ E3@, use=screen+italics, use=screen+fkeys,
+ use=xterm+x11mouse, use=xterm-new,
#:screen.xterm|screen for modern xterm,
#: use=screen.xterm-new,
# xterm-r6 does not really support khome/kend unless it is propped up by
# tmux is compatible with screen, but has support for italics, and some of the
# xterm cursor bits.
tmux|tmux terminal multiplexer,
- ritm=\E[23m, rmso=\E[27m, sitm=\E[3m, smso=\E[7m,
+ invis=\E[8m, rmso=\E[27m,
+ sgr=\E[0%?%p6%t;1%;%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;
+ \s\s\s\s\s\s\s\s\s\s\s\s5%;%?%p5%t;2%;m%?%p9%t\016%e
+ \017%;,
+ smso=\E[7m, E3=\E[3J, use=ecma+italics,
use=ecma+strikeout, use=xterm+edit, use=xterm+pcfkeys,
use=xterm+sl, use=xterm+tmux, use=screen,
kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
kfnd=\E[1~, khome=\E[7~, kich1=\E[2~, kind=\E[a,
kmous=\E[M, knp=\E[6~, kpp=\E[5~, kri=\E[b, kslt=\E[4~,
- op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, ritm=\E[23m,
- rmacs=^O, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[27m,
+ op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[27m,
rmul=\E[24m,
rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H,
rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?
setaf=\E[3%p1%dm,
sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?
%p9%t\016%e\017%;,
- sgr0=\E[m\017, sitm=\E[3m, smacs=^N, smcup=\E7\E[?47h,
- smir=\E[4h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- vpa=\E[%i%p1%dd,
+ sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
+ use=ecma+italics,
dvtm-256color|dynamic virtual terminal manager with 256 colors,
- colors#0x100, pairs#0x7fff,
+ colors#0x100, pairs#0x10000,
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
rmln=\E&j@, rmso=\E&d@, rmul=\E&d@,
sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+
%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
- sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smln=\E&jB, smso=\E&dB,
- smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
+ sgr0=\E&d@\017, smir=\EQ, smkx=\E&s1A, smln=\E&jB,
+ smso=\E&dB, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
# HP 236 console
# From: <ddavis@ic.berkeley.edu>
dsl=\EP2;1~\E\\, ed=\E[J, el=\E[K, fsl=\E\\, il1=\E[L,
ind=\ED, is1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r,
rev=\E[7m, ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
- sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, tsl=\EP2~,
- use=vt100+4bsd,
+ sgr0=\E[m\017$<2>, smir=\E[4h, smso=\E[7m, smul=\E[4m,
+ tsl=\EP2~, use=vt100+4bsd,
#### Wyse (wy)
#
rmln=\E|, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y,
sc=\E7,
sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1
- %|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
+ %|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;%?%p8%t\EV%;,
sgr0=\E[m\017, smacs=^N, smkx=\E[19;1j, smln=\E~,
smso=\E[7m, smul=\E[4m, tbc=\E[3g,
tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd,
kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
khome=\E[H, nel=\EE, rev=\E}, ri=\ET, rmacs=\E(B, rmso=\E~,
rmul=\EZ,
- sgr=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|
- %t;5%;%?%p5%t;0%;m,
+ sgr=\EX\E~\EZ\E4\E(B%?%p1%p3%|%t\E}%;%?%p2%t\E\\%;%?%p4%p6%|
+ %t\E3%;%?%p5%t\EW%;%?%p9%t\E(0%;,
sgr0=\EX\E~\EZ\E4\E(B, smacs=\E(0, smso=\E}, smul=\E\\,
tbc=\EF,
rs1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|
\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l,
rs2=\E[5;0|, sc=\E7,
- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1
+ sgr=\E[0%?%p1%p5%|%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1
%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smir=\E[4h,
smkx=\E[19;1|\E[21;4|\Eent, smln=\E?, smso=\E[7m,
km@,
enacs=\E)6, is2=\E[3;2;2;0;1;0v\E(0\017, rmacs=^O,
rs2=\E[4;0;2;0;1;0v\E(0,
- sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1
- %p5%|%t2;%;m%?%p9%t\016%e\017%;,
+ sgr=\E[%?%p1%p5%|%t2;%;%?%p2%p6%|%t4;%;%?%p1%p3%|%p6%|%t7;%;
+ %?%p4%t5;%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, use=dgkeys+7b, use=d410,
d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode,
clear=\E[2J\E[H, cud1=\n, cuf1=\E[C,
cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
home=\E[H, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, ri=\EM,
- rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
- use=vt100+4bsd,
+ rmso=\E[m, rmul=\E[m, sgr0=\E[m\017$<2>, smso=\E[7m,
+ smul=\E[4m, use=vt100+4bsd,
# except in 132 column mode, where it needs a little padding.
# This is still less padding than the vt100, and you can always turn on
# the ^S/^Q handshaking, so you can use vt100 flavors for things like
#
# AIX entries. IBM ships these with AIX 3.2.5.
# -- added rc, sc based on manpage -TD
+# -- added rmacs, smacs based on manpage -TD
# Note that we could use ibm+16color, but that is not how IBM defines this one.
aixterm|IBM Aixterm Terminal Emulator,
eslok, hs,
acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E,
- fsl=\E[?F, rc=\E8, ri@, s0ds=\E(B, s1ds=\E(0, sc=\E7,
- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
- %;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
- sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6154,
+ fsl=\E[?F, rc=\E8, ri@, rmacs=\E(B, s0ds=\E(B, s1ds=\E(0,
+ sc=\E7,
+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7
+ %t;8%;m%?%p9%t\E(0%e\E(B%;,
+ sgr0=\E[0;10m\E(B, smacs=\E(0, tsl=\E[?%p1%dT,
+ use=ibm6154,
aixterm-m|IBM AIXterm Monochrome Terminal Emulator,
eslok, hs,
acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E,
fsl=\E[?F, ri@, s0ds=\E(B, s1ds=\E(0,
- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
- %;m,
+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7
+ %t;8%;m%?%p9%t\E(0%e\E(B%;,
sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6153,
aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator,
eslok, hs,
bold=\E[1m, dsl=\E[?E, fsl=\E[?F, ri@,
- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1
- %;m,
+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7
+ %t;8%;m,
tsl=\E[?%p1%dT, use=ibm6153,
jaixterm|IBM Kanji Aixterm Terminal Eemulator,
- acsc@, use=aixterm,
+ acsc@, rmacs@,
+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7%t;8
+ %;m,
+ sgr0=\E[m, smacs@, use=aixterm,
jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator,
- acsc@, use=aixterm-m,
+ acsc@, rmacs@,
+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7%t;8
+ %;m,
+ sgr0=\E[m, smacs@, use=aixterm-m,
# This flavor is adapted from xterm, in turn from aixterm documentation -TD
aixterm-16color|IBM Aixterm Terminal Emulator with 16 colors,
rs2=\Ec\E[12;31h\E[?3;4;5;10l\E[?6;7;19;25h\E[33;34l\E[0m\E(
B\E)0\E%/0n\E[P\031$<200>,
sc=\E7,
- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5
- %;m%?%p9%t\016%e\017%;$<100>,
+ sgr=%?%p9%t\016%e\017%;\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1
+ %p3%|%t;7%;%?%p4%t;5%;m$<100>,
sgr0=\017\E[0m$<120>, smacs=\016$<90>, smir=\E[4h$<80>,
smso=\E[7m$<30>, smul=\E[4m$<30>, tbc=\E[3g$<40>,
tsl=\E[>+1$<70>,
# function keys do not use 2-character names, and are available only with
# terminfo.
#
-# As of mid-2012, no other terminfo/termcap implementation than ncurses
-# supports this extension; termcap libraries can as noted above make limited
-# use of the feature.
+# Beginning in 2010, NetBSD curses has also provided a "-x" option for
+# tic/infocmp, and uses this database (with a few changes). There are a few
+# differences, noted in
+# https://invisible-island.net/ncurses/ncurses-netbsd.html
#
-# ncurses makes explicit checks for a few user-definable capabilities: AX, U8,
-# XM.
+# ncurses makes explicit checks for a few user-definable capabilities: AX,
+# RGB, U8, XM, which are documented in the user_caps(5) manual page.
#
#### SCREEN Extensions:
#
# + move SGR 24 and 27 from vte-2014 to vte-2012 (request by Alain
# Williams) -TD
#
+# 2017-08-16
+# + update "iterm" entry -TD
+# + add "iterm2" entry (report by Leonardo Brondani Schenkel) -TD
+#
+# 2017-08-18
+# + update notes on user-defined capabilities -TD
+#
+# 2017-08-26
+# + fixes for "iterm2" (report by Leonardo Brondani Schenkel) -TD
+#
+# 2017-11-11
+# + add "op" to xterm+256setaf -TD
+# + reviewed terminology 1.0.0 -TD
+# + reviewed st 0.7 -TD
+#
+# 2017-11-18
+# + modify old terminology entry and a few other terminal emulators to
+# account for xon -TD
+# + correct sgr string for tmux, which used screen's "standout" code
+# rather than the standard code (patch by Roman Kagan)
+# + correct sgr/sgr0 strings in a few other cases reported by tic, making
+# those correspond to the non-sgr settings where they differ, but
+# otherwise use ECMA-48 consistently:
+# jaixterm, aixterm, att5420_2, att4424, att500, decansi, d410-7b,
+# dm80, hpterm, emu-220, hp2, iTerm2.app, mterm-ansi, ncrvt100an,
+# st-0.7, vi603, vwmterm -TD
+#
+# 2017-12-30
+# + add xterm+noalt, xterm+titlestack, xterm+alt1049, xterm+alt+title
+# blocks from xterm #331 -TD
+# + add xterm+direct, xterm+indirect, xterm-direct entries from xterm
+# #331 -TD
+# + modify xterm+256color and xterm+256setaf to use correct number of
+# color pairs, for ncurses 6.1 -TD
+# + add rs1 capability to xterm-256color -TD
+# + modify xterm-r5, xterm-r6 and xterm-xf86-v32 to use xterm+kbs to
+# match xterm #272, reflecting packager's changes -TD
+# + remove "boolean" Se, Ss from st-0.7 -TD
+#
+# 2017-01-04
+# + add konsole-direct and st-direct -TD
+# + remove unsupported "Tc" capability from st-0.7; use st-direct if
+# direct-colors are wanted -TD
+#
+# 2017-01-17
+# + add vte-direct -TD
+# + add XT, hpa, indn, and vpa to screen, and invis, E3 to tmux (patch by
+# Pierre Carru)
+#
+# 2017-01-21
+# + use xterm+sm+1006 in xterm-new, vte-2014 -TD
+# + use xterm+x11mouse in iterm, iterm2, mlterm3 because xterm's 1006
+# mode does not work with those programs. konsole is debatable -TD
+# + add "termite" entry (report by Markus Pfeiffer) -TD
+#
######## SHANTIH! SHANTIH! SHANTIH!