# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.607 $
-# $Date: 2017/07/30 00:10:59 $
+# $Revision: 1.617 $
+# $Date: 2017/08/26 21:07:47 $
#
# 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,
- 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,
+ 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+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).
+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, 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")
#
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
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,
+ 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,
%=%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,
+ 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, vpa=\E[%i%p1%dd, E3=\E[3J,
+ use=ecma+italics, use=ansi+pp, use=xterm+kbs,
use=vt100+enq,
# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997
# 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,
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@,
# mlterm.ti; this entry is based on testing with tack and vttest -TD
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=ecma+italics, use=xterm+app, use=xterm+pcf0,
use=xterm+pcc2, use=xterm+pce2, use=mlterm2,
# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD
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,
+ 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,
+ use=ecma+italics,
#
# st-0.1.1
#
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
# 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,
+ rmso=\E[27m, smso=\E[7m, 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,
# 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
+# http://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
+#
######## SHANTIH! SHANTIH! SHANTIH!