+# These entries describe MGR's xterm-equivalent.
+# They are courtesy of Vincent Broman <broman@nosc.mil> 14 Jan 1997
+#
+
+mgr|Bellcore MGR (non X) window system terminal emulation,
+ 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,
+ dch=\E%p1%dE$<5>, dch1=\EE, dl=\E%p1%dd$<3*>,
+ dl1=\Ed$<3>, ed=\EC, el=\Ec, hd=\E1;2f, ht=^I, hu=\E1;2u,
+ ich=\E%p1%dA$<5>, ich1=\EA, il=\E%p1%da$<3*>,
+ il1=\Ea$<3>, ind=\n, kbs=^H, kcub1=\E[D, kcud1=\E[B,
+ kcuf1=\E[C, kcuu1=\E[A, nel=\r\n, rev=\E1n, rmam=\E5S,
+ rmso=\E0n, rmul=\E0n, sgr0=\E0n, smam=\E5s, smso=\E1n,
+ smul=\E4n,
+mgr-sun|Mgr window with Sun keyboard,
+ ka1=\E[214z, ka3=\E[216z, kb2=\E[218z, kc1=\E[220z,
+ kc3=\E[222z, kcpy=\E[197z, kend=\E[220z, kent=\E[250z,
+ kf1=\E[224z, kf10=\E[233z, kf11=\E[234z, kf12=\E[235z,
+ kf2=\E[225z, kf3=\E[226z, kf4=\E[227z, kf5=\E[228z,
+ kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, kf9=\E[232z,
+ kfnd=\E[200z, khlp=\E[207z, khome=\E[214z, knp=\E[222z,
+ kopn=\E[198z, kpp=\E[216z, kund=\E[195z, use=mgr,
+mgr-linux|Mgr window with Linux keyboard,
+ ka1=\E[H, ka3=\E[5~, kb2=\E[G, kc1=\E[Y, kc3=\E[6~,
+ kdch1=\E[3~, kend=\E[4~, kf0=\E[[J, kf1=\E[[A, kf10=\E[21~,
+ kf11=\E[23~, kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D,
+ kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
+ khome=\E[1~, knp=\E[6~, kpp=\E[5~, use=mgr,
+
+#### SIMPLETERM
+# st.suckless.org
+
+st|stterm|aka simpleterm,
+ use=st-0.8,
+
+# Reviewed 0.8.2:
+# In tack,
+# there is some problem turning off line-drawing
+# shift+control function-keys do nothing; shift+control cursor keys work
+# the padding tests make the terminal non-functional.
+# In vttest,
+# SD/SU work
+# SL/SR/REP do not work
+# ECMA-48 cursor movement works, e.g., CHA, CBT, etc.
+#
+# This entry discards the ccc/initc capabilities from st-0.7 because they
+# belong in st-256color.
+st-0.8|simpleterm 0.8,
+ dim=\E[2m, kcbt@, kent@, oc=\E]104\007,
+ 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,
+ Ms=\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,
+ use=ecma+strikeout, use=st-0.6,
+
+# 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
+# tmux extensions, see TERMINFO EXTENSIONS in tmux(1)
+# Se and Ss are implemented in the source-code, but the terminfo
+# provided with the source is incorrect, since Se/Ss are mis-coded
+# as booleans rather than strings.
+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,
+ 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,
+ Ms=\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,
+ use=ecma+strikeout, use=st-0.6,
+
+# st-0.4.1
+#
+# This version uses a table which supports a single modifier (a subset of
+# xterm's keys, using the same scheme). Because it supports only a single
+# modifier in this table, function keys f36-f48 are normally unavailable
+# because they are assigned to modifier-4.
+#
+# The program assigns TERM to match the program name (the upstream source says
+# "st", but Debian renames it to "stterm").
+#
+# The source includes two entries which are not useful here:
+# st-meta| simpleterm with meta key,
+# st-meta-256color| simpleterm with meta key and 256 colors,
+# because st's notion of "meta" does not correspond to the terminfo definition.
+# Rather, it acts like xterm - when the meta feature is disabled.
+#
+# Removed invis -TD
+# Added eo, removed ul -TD
+#
+# Reviewed st 0.5:
+# implements control-modifier, but not control-shift for special keys
+# implements alt-modifier, but not alt-shift for special keys
+#
+# Reviewed st 0.6:
+# http://git.suckless.org/st/log/st.info
+# 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-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{{||}}~~,
+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J,
+ 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, dim=\E[2m, dl=\E[%p1%dM,
+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
+ enacs=\E)0, flash=\E[?5h$<100/>\E[?5l, fsl=^G, 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, invis=\E[8m,
+ is2=\E[4l\E>\E[?1034l, 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, ka1=\E[1~, ka3=\E[5~, kb2=\EOu,
+ kbs=^?, kc1=\E[4~, kc3=\E[6~, kcbt=\E[Z, kclr=\E[3;5~,
+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
+ kdl1=\E[3;2~, ked=\E[1;5F, kel=\E[1;2F, kent=\EOM,
+ kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
+ 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~, kf25=\E[1;5P, kf26=\E[1;5Q,
+ kf27=\E[1;5R, kf28=\E[1;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[1;6P, kf38=\E[1;6Q, kf39=\E[1;6R,
+ kf4=\EOS, kf40=\E[1;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[1;3P, kf5=\E[15~, kf50=\E[1;3Q, kf51=\E[1;3R,
+ kf52=\E[1;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[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,
+ kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kil1=\E[2;5~,
+ kind=\E[1;2B, kmous=\E[M, 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, rmacs=\E(B, 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%;%?%p5%t;2%;%?%p7%t;8%;m,
+ sgr0=\E[0m, smacs=\E(0, 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=vt220+pcedit, use=ecma+index,
+ use=xterm+alt1049, use=vt220+cvis, use=xterm+sl,
+ use=ecma+italics, use=ecma+strikeout,
+#
+# st-0.1.1
+#
+# Note: the original terminfo description uses leading blank to persuade
+# ncurses to use "st" as its name. Proper fix for that is to use "st" as an
+# alias.
+#
+# Reading the code shows it should work for aixterm 16-colors
+# - added st-16color
+#
+# Using tack:
+# - set eo (erase-overstrike)
+# - set xenl
+# - tbc doesn't work
+# - hts works
+# - cbt doesn't work
+# - shifted cursor-keys send sequences like rxvt
+# - sgr referred to unimplemented "invis" mode.
+# Fixes: add eo and xenl per tack, remove nonworking cbt, hts and tbc, invis
+simpleterm|old-st|simpleterm 0.1.1,
+ am, eo, mir, msgr, ul, xenl,
+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
+ csr=\E[%i%p1%d;%p2%dr, 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, dch1=\E[P, dl=\E[%p1%dM,
+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%i%p1%dG,
+ ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\n, kbs=^?,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
+ 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~, knp=\E[6~, kpp=\E[5~, op=\E[37;40m, rc=\E8,
+ rev=\E[7m, rmacs=\E(B, rmso=\E[m, rmul=\E[m, sc=\E7,
+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
+ %t;7%;m,
+ sgr0=\E[0m, smacs=\E(0, smso=\E[7m, smul=\E[4m,
+ use=vt220+cvis, use=ecma+index,
+st-16color|stterm-16color|simpleterm with 16-colors,
+ use=ibm+16color, use=st,
+# Tested with st 0.8.2
+# The issue with the titlebar is fixed, though st is very slow.
+# In st 0.7, 256 colors "works", but when running xterm's test-scripts, some
+# garbage is shown in the titlebar.
+#
+# terminal wants to use TERM=stterm-256color, but that is longer than 14
+# characters, making the choice nonportable.
+st-256color|stterm-256color|simpleterm with 256 colors,
+ use=xterm+256color, use=st,
+
+#### TERMINATOR
+# https://github.com/software-jessies-org/jessies/wiki/Terminator
+#
+# Tested using the Debian package org.jessies.terminator 6.104.3256 on 64-bit
+# Debian/current -TD (2011/8/20)
+#
+# There were some packaging problems:
+# a) using Java, the program starts off using 50Mb, and climbs from there,
+# up to 114Mb after testing (no scrollback).
+# b) it insists on reinstalling its terminal description in $HOME/.terminfo
+# (two copies, just in case the host happens to be Mac OS X).
+# I deleted this after testing with tack.
+#
+# Issues/features found with tack:
+# a) tbc does not work (implying that hts also is broken).
+# Comparing with the tabs utility shows a problem with the last tabstop on
+# a line.
+# b) has xterm-style shifted function-key strings
+# meta also is used, but control is ignored.
+# c) has xterm-style modifiers for cursor keys (shift, control, shift+control,
+# meta)
+# d) some combinations of shift/control send xterm-style sequences for
+# insert/delete/home/end.
+# e) numeric keypad sends only numbers (compare with vttest).
+# f) meta mode (km) is not implemented.
+#
+# Issues found with ncurses test-program:
+# a) bce is inconsistently implemented
+# b) widths of Unicode values above 256 do not always agree with wcwidth.
+#
+# Checked with vttest, found low degree of compatibility there.
+#
+# Checked with xterm's scripts, found that the 256-color palette is fixed.
+#
+# Fixes:
+# a) add sgr string
+# b) corrected sgr0 to reset alternate character set
+# c) modified smacs/rmacs to use SCS rather than SI/SO
+# d) removed bce
+# e) removed km
+#
+# Revisiting in May 2019, the Debian package was no longer available, and a
+# developer-provided ".deb" does not work. However, a usable Windows ".msi"
+# (which relies upon Cygwin) can be tested. The developers provide a terminfo,
+# but some of the features it lists do not work reliably (bce, italics, invis).
+#
+# tack:
+# tbc fails
+# invis attribute fails
+# key-definitions could be expanded, with some work:
+# + supports xterm-style cursor key-modifiers for shift
+# + supports xterm-style function key-modifiers for shift,control,alt
+# + supports xterm-style editing key-modifiers for shift,control,alt
+# (kbs=^?)
+# ncurses test-program:
+# "C" menu shows that bce implementation is incomplete
+# italics did not work
+# dim worked once in tack, but not in ncurses test-program
+# "F" thick-line characters do not display
+# vttest:
+# terminal does not respond to 80/132-column switching
+# wrapping at the right margin is erratic
+# there are several problems in the cursor-movements and screen-features
+# no VT52, no double-sized characters
+# Device attributes response says it is a vanilla VT100
+# does not respond to xterm mouse controls
+# alternate screen tests do not fill the screen, return wrong position
+# window modify/report operations do not work
+# miscellaneous ISO-6429 tests, e.g., REP, do not work
+# CBT, CHT, HPR, CNL,CPL, VPR do not work
+#
+# removed the cancel for "hs", removed cbt, invis, corrected sgr -TD
+# use xterm+256setaf, etc -TD
+terminator|Terminator no line wrap,
+ bce, eo, mir, msgr, xenl, xon,
+ cols#80, it#8, lines#24, lm#0,
+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ bold=\E[1m, clear=\E[H\E[2J, 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, 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=^G, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
+ il=\E[%p1%dL, il1=\E[L, ind=\n, is1=\E[?47l\E=\E[?1l,
+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^?,
+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP,
+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf2=\EOQ, kf3=\EOR,
+ kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
+ kf9=\E[20~, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B,
+ rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec,
+ rs2=\E[!p\E[?3;4l\E[4l\E>, s0ds=\E(B, s1ds=\E(0, sc=\E7,
+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p5%t;2%;%?%p1%p3%|%t;7
+ %;m%?%p9%t\E(0%e\E(B%;,
+ sgr0=\E[m\E(B, smacs=\E(0, smir=\E[4h, smso=\E[7m,
+ smul=\E[4m, tbc=\E[3g, tsl=\E]2;, vpa=\E[%i%p1%dd,
+ use=vt220+pcedit, use=ecma+italics, use=ecma+index,
+ use=xterm+256setaf, use=xterm+sl-twm,
+ use=xterm+alt1049, use=vt220+cvis,
+
+#### TERMINOLOGY
+# https://www.enlightenment.org/about-terminology
+# https://github.com/borisfaure/terminology
+#
+# 2014/10/14:
+# Tested terminology-0.3.0, 0.6.1, using tack and vttest. This is not a VT100
+# emulator, nor is it compatible with xterm, but it uses a few features from
+# both -TD
+#
+# General comments:
+# cursor does not fill on focus
+# there are pervasive problems with clearing/erasing parts of the screen
+# resizing the window causes it to stop listening to the keyboard
+# tack -
+# doesn't understand VT100 CPR needed for resize
+# no CBT
+# no cvvis
+# has invis
+# no blink
+# uses bce model for colors, but (see below) fails the vttest screens
+# has partial support for 256color feature.
+# tack function-keys (a subset of xterm+pcf0), and
+# tack cursor-keys (a subset of xterm+pce2):
+# ctrl+shift (ignored)
+# 2 shift
+# shift-alt modifier -> shift (2)
+# 3 alt
+# 4
+# 5 ctrl
+# tack modifiers did not work for fkeys in 0.3.0; subset works in 0.6.1
+# ctrl + khome/kend works - none of the other modifiers do
+# vttest -
+# spits lots of messages from termptyesc.c especially in vttest.
+# no 132-column mode
+# fails menu 1, 2 (definitely not VT100-compatible)
+# primary (claims VT420 with several options, apparently none work) and
+# secondary report says (perhaps... VT420): \E[>41;285;0c
+# CHA, HPR, VPA, CNL, CPL work
+# BCE with ED/EL - fail
+# BCE with ECH/indexing - fail
+# SD/SU work
+# unlike teken, background light/dark works
+# can set title
+# X10 and Normal mouse work
+# Any-event mouse works
+# Mouse button-event works
+#
+# 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-0.6.1|EFL-based terminal emulator (0.6.1),
+ 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~,
+ kind=\E[1;2B, kri=\E[1;2A,
+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p7%t;8
+ %;m%?%p9%t\016%e\017%;$<2>,
+ vpa=\E[%i%p1%dd, kDC3=\E[3;3~, kDC4=\E[3;4~,
+ kDC5=\E[3;5~, kDC6=\E[3;6~, kDC7=\E[3;7~, kDN=\E[1;2B,
+ kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B, kDN6=\E[1;6B,
+ kDN7=\E[1;7B, kEND5=\E[1;5F, kHOM5=\E[1;5H,
+ kLFT3=\E[1;3D, kLFT4=\E[1;4D, kLFT5=\E[1;5D,
+ kLFT6=\E[1;6D, kLFT7=\E[1;7D, kRIT3=\E[1;3C,
+ kRIT4=\E[1;4C, kRIT5=\E[1;5C, kRIT6=\E[1;6C,
+ kRIT7=\E[1;7C, kUP=\E[1;2A, use=xterm+pcf0, use=vt100,
+ use=xterm+256setaf,
+
+# 2017-11-11:
+# 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 (1.0.0),
+ 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=vt220+cvis, use=xterm+x11mouse, use=xterm+pce2,
+ use=xterm+pcf2, use=xterm+pcc2, use=terminology-0.6.1,
+
+# 2020/12/26:
+# Tested terminology 1.8.1 using tack and vttest.
+# tack -
+# flash does not work
+# italics and crossed-out text work
+# no meta mode
+# vttest -
+# DA1 says this is a VT420 with with 132 columns, NRCS, horizontal scrolling
+# DA2 says this is a VT510, version 33.7
+# NRCS does not work, program hangs in the locking shift test.
+# some of the VT420 rectangle operations work
+# left/right margins do not work
+# most of DECSCUSR works
+# most problems with bce are fixed.
+terminology-1.8.1|EFL-based terminal emulator (1.8.1),
+ km@,
+ cvvis@, flash@, initc@, kcbt=\E[Z, rmm@, smm@, Ms@,
+ use=ecma+index, use=xterm+256setaf, use=ansi+rep,
+ use=ecma+strikeout, use=xterm+sm+1006,
+ use=xterm+pcfkeys, use=xterm+tmux, use=vt220+cvis,
+ use=ecma+italics, use=xterm-basic,
+
+terminology|EFL-based terminal emulator,
+ use=terminology-1.8.1,
+
+######## OPENGL CLIENTS
+
+#### Alacritty
+# https://github.com/jwilm/alacritty
+# Version 0.6.0 (2020/11/25)
+# Version 0.4.0 (2019/11/25)
+# Version 0.3.3 (2019/08/03)
+# Version 0.2.1 (2018/10/03)
+# Project started in 2016/02, uses Rust and OpenGL, and in contrast to (most X
+# terminal programs) is not designed to run with a remote server.
+#
+# Packaged in Arch Linux -
+# vttest:
+# initial screensize 24x80
+# no DECCOLM (does not switch between 80/132 columns)
+# otherwise, passes wrapping test
+# no DECSCNM
+# identifies as a VT102
+# numeric keypad does not send expected codes (seen in 0.4.0)
+# passes bce test
+# vt220:
+# ECH works in 0.3.3 (0.2.1 left text on right margin)
+# no SRM, DECSCA
+# vt320:
+# fails DECXCPR
+# does not implement any of the DECRQM/DECRPM controls
+# does not implement any of the DECRQSS controls
+# vt420:
+# no DECLRMM
+# no DECBI, DECFI
+# other:
+# fails CHT, otherwise ECMA-48 cursor movement ok
+# fails ERM/SPA, SL, SR, passes REP, SD, SU
+# xterm:
+# no X10 mouse
+# has normal and highlight mouse
+# has any-event and button-event mouse
+# + does support SGR-mouse
+# + does not correctly support focus in/out events (seen in 0.4.0)
+# cursor-position wrong after alternate-screen (fixed in 0.4.0)
+# none of the dtterm controls work
+# tack:
+# bell and flash do not work
+# blink does not work
+# italics and crossed-out work (latter did not work in 0.2.1)
+# function-keys work up (tested combinations which window manager allows)
+# treats meta as escape-prefix
+#
+# The program sources include "alacritty" and "alacritty-direct", which are
+# copied from "xterm-256color" and "xterm-direct" (but using semicolon for
+# subparameter delimiter). Refactored here to use ncurses building blocks -TD
+alacritty|alacritty terminal emulator,
+ rs1=\Ec\E]104\007, use=xterm+256color,
+ use=alacritty+common,
+
+alacritty-direct|alacritty with direct color indexing,
+ use=xterm+indirect, use=alacritty+common,
+
+# cancel km, since it is not actually meta mode -TD
+# added ecma+strikeout in 0.3.3 -TD
+# added xterm+sl-twm in 0.3.3 -TD
+alacritty+common|base fragment for alacritty,
+ km@, npc,
+ kb2=\EOE, kbs=^?, kcbt=\E[Z, kent=\EOM, Se=\E[0 q,
+ Smulx=\E[4:%p1%dm, use=ecma+index, use=xterm+sm+1006,
+ use=xterm-basic, use=xterm+app, use=ansi+rep,
+ use=xterm+tmux, use=ecma+strikeout, use=xterm+sl-twm,
+ use=ecma+italics, use=xterm+pce2, use=xterm+pcc2,
+ use=xterm+pcf2,
+
+#### Kitty
+# https://github.com/kovidgoyal/kitty
+# Project started in 2016/10 (see alacritty), but is a Python script rather
+# than Rust, using OpenGL. The same caveats regarding remote connections
+# apply. This is not an X terminal, though (like alacritty), it copies
+# features from xterm.
+#
+# Regarding the name "kitty", that is a pun, reflected in the description.
+# But see
+# http://www.9bis.net/kitty/
+# https://github.com/kovidgoyal/kitty/issues/9
+# https://github.com/kovidgoyal/kitty/issues/1025
+# and
+# http://lists.gnu.org/archive/html/bug-ncurses/2018-09/msg00005.html
+# https://github.com/kovidgoyal/kitty/issues/879
+#
+# Version 0.21.2 (June 28, 2021)
+# changes since 0.19.1
+# Notes:
+# Repeatable tests with tack and vttest assume a standard screensize --
+# measured in characters. However, kitty uses pixel-measurements and
+# does not readily use characters.
+# Resizing with twm shows only pixel-based hint rather than characters
+# manual page states that it is possible to override initial window size,
+# but configuration file has no effect on initial window size.
+# The same problem with XFCE4, but editing the cached json file works
+# for setting the window size (the "c" suffix for cells does not):
+# {"window-size": [720, 440]}
+# though the values depend upon the font in use.
+# vttest
+# tack
+# flash works
+# invisible text still does not work
+# function/special key modifiers finally work
+#
+# Version 0.19.1 (October 6, 2020)
+# changes since 0.13.3:
+# vttest
+# ISO-6429
+# REP works, though using unspecified behavior
+# xterm
+# xterm's SGR-mouse mode is recognized.
+# does recognize original alternate-screen
+# bug: mouse focus in/out does not work.
+# bug: X10 mouse mode responds like any-event
+# bug: highlight-tracking does not work; terminal hangs.
+#
+# tack
+# rs1 adds an empty string for resetting title- and other OSC-strings.
+# italics work
+#
+# Version 0.13.3 (January 19, 2019)
+# Notes:
+# initial screensize 71x22
+# does not respond to "resize -s"
+# resizing with window manager gives no clues
+# vttest
+# does not switch between 80/132 columns
+# fails wrapping test, copying vte/rxvt
+# no reverse-background, no blink
+# claims to be VT200:
+# primary \E[?62;c
+# secondary \E[>1;4000;12c
+# however -
+# no GR in the locking-shifts screen
+# no NRCS or ISO-2022, anyway
+# no VT52
+# VT220:
+# has DECTCEM, ECH, but no SRM and DECSCA
+# has operating condition report, none of the others
+# VT320:
+# has SU/SD
+# DECRQSS ok for DECSTBM, SGR, none of the others
+# no status-line
+# VT420:
+# DECXCPR device status works, none of the others
+# no left/right margins
+# has DECCARA, but not DECERA, DECFRA, DECRARA, DECSERA
+# inside of DECCARA is uncolored
+# line-drawing with DECCARA does not work
+# aside from left/right margins, editing sequences look ok
+# no DECFI, DECBI
+# color:
+# fails ECH test for bce
+# ISO-6429
+# fails REP, SL, SL, but other cursor-movement ok
+# xterm:
+# does not recognize original alternate-screen
+# cursor-position wrong after alternate-screen
+# has normal mouse, any-event, any-button, but
+# no X10 mouse
+# no mouse-highlight tracking
+# no DEC locator
+# dtterm - only supports report-size chars/pixels
+# recognizes tcap-query
+# tack:
+# flash doesn't work
+# italics do not work
+# bce should be set (but see vttest)
+#* developer's terminfo stopped at kf25, but the program continues,
+# copying xterm for the rest of the control+fkey sequence
+# (but only one modifier is supported, like iTerm2).
+#* it omitted shifted pageup/down
+#* control+editing keys work
+# In contrast to function-keys, some additional modifier combinations
+# act like xterm for the editing/cursor-keys, e.g., alt+shift. While
+# the implementation is incomplete, the building-blocks are consistent
+# with what has been implemented -TD
+# DECKPAM does not work -TD
+#* ka1, ka3, kc1, kc3 were bogus (removed)
+#* meta sends escape (removed kmm) -TD
+#* cvvis does not make cursor "more visible" -TD
+kitty|KovId's TTY,
+ use=xterm+256color, use=kitty+common,
+kitty-direct|KovId's TTY using direct colors,
+ oc=\E]104\007, use=xterm+direct2, use=kitty+common,
+kitty+common|KovId's TTY common properties,
+ am, mc5i, mir, msgr, npc, xenl,
+ cols#80, it#8, lines#24,
+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
+ yzz{{||}}~~,
+ bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, 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, dim=\E[2m, 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=\n, kBEG=\E[1;2E, kbeg=\EOE, kbs=^?, kcbt=\E[Z,
+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
+ kdch1=\E[3~, kend=\EOF, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
+ kf12=\E[24~, 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~,
+ kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R, kf28=\E[1;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~, kf4=\EOS, kf5=\E[15~,
+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\EOH,
+ kich1=\E[2~, kind=\E[1;2B, knp=\E[6~, kpp=\E[5~,
+ kri=\E[1;2A, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
+ rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l,
+ rmso=\E[27m, rmul=\E[24m, rs1=\E]\E\\\Ec, sc=\E7,
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;
+ %?%p1%p3%|%t;7%;m,
+ sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h,
+ smkx=\E[?1h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
+ vpa=\E[%i%p1%dd, Smulx=\E[4:%p1%dm, use=ansi+enq,
+ use=ansi+rep, use=xterm+sm+1006, use=ecma+index,
+ use=xterm+pcfkeys, use=xterm+sl-twm,
+ use=ecma+strikeout, use=ecma+italics,
+ use=xterm+alt1049, use=att610+cvis, use=xterm+tmux,
+
+kitty+setal|set underline colors (nonstandard),
+ setal=\E[58:2::%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1
+ %{255}%&%dm,
+
+######## WAYLAND CLIENTS
+
+#### Foot
+# https://codeberg.org/dnkl/foot/
+# Version 1.8.2
+#
+# This identifies as a VT220 with 4=sixel and 22=color, however:
+# tack:
+# bell does not work
+# status-line does not work because foot does not set the window title
+# sends escape when meta key is used, whether or not smm/rmm enabled
+# vttest:
+# wrap-test fails
+# no application-mode for numeric keypad (unless private mode 1035 is set)
+# no NRCS
+# no VT52
+# no SRM
+# protected areas do not work
+# SU/SD work, SL/SR do not
+# DECRPM responds, but not the corresponding ANSI reports.
+# otherwise few reports, except cursor-position and mouse and some dtterm
+# VT520 cursor-movement works, except for left/right margins
+# supports xterm/DECSCUSR, though default case in vttest does not blink
+# Send: <27> [ 0 <32> q
+# Text: The cursor should be a blinking rectangle
+# partial support for xterm mouse any-event mode and button-event mode:
+# + does not report focus-in/focus-out
+# + does not report buttons 6/7
+# alternate-screen works
+foot|foot terminal emulator,
+ oc=\E]104\E\\, use=xterm+256color2, use=foot+base,
+
+foot-direct|foot with direct color indexing,
+ use=xterm+direct, use=foot+base,
+
+foot+base|foot base fragment,
+ am, bce, bw, hs, mir, msgr, npc, xenl, AX, XT,
+ cols#80, it#8, lines#24,
+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=\r,
+ cub1=^H, cud1=\n, dim=\E[2m, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
+ el1=\E[1K, flash=\E]555\E\\, ind=\n, invis=\E[8m,
+ is2=\E[!p\E[?3;4l\E[4l\E>, kbs=^?, kcbt=\E[Z,
+ oc=\E]104\E\\, op=\E[39;49m, rev=\E[7m, ri=\EM, rmacs=\E(B,
+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
+ rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>,
+ 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, smacs=\E(0, smam=\E[?7h, smkx=\E[?1h\E=,
+ smso=\E[7m, smul=\E[4m, E3=\E[3J, use=att610+cvis,
+ use=ansi+csr, use=ansi+cup, use=ansi+enq, use=ansi+local,
+ use=ansi+idc, use=ansi+idl, use=ansi+rca2, use=ansi+rep,
+ use=ansi+tabs, use=ecma+index, use=ecma+italics,
+ use=ecma+strikeout, use=xterm+alt+title,
+ use=xterm+pcfkeys, use=xterm+sm+1006, use=xterm+tmux2,
+ use=xterm+sl-alt,
+
+######## WEB CLIENTS
+
+#### DomTerm
+# https://domterm.org
+#
+# Quoting its webpage:
+# The domterm command runs a server that manages sessions (usually shell
+# processes). The user interface and terminal emulation is handled by a
+# JavaScript library that can run in a regular web browser or an embedded
+# browser such as Electron, using Web Sockets to talk to the server.
+#
+# it can connect to, and display in, a web browser, or as a standalone Qt
+# application. Either way, it displays in the current desktop session.
+#
+# Testing current code (2019/07/06) with Fedora 30:
+# tack
+# no flash
+# no beep
+# no dim
+# no blink
+# no invis
+# no italics
+# ok smxx/rmxx
+# bce screen shows diagonal lines...
+# kf6 sends nothing
+# kf11 toggles maximize
+# cursor-key application mode works
+# numeric keypad application does not work; keys always send face-codes
+# sends utf-8 for meta, like xterm
+# vttest
+# has problems with menu #1 (wrapping)
+# DA = VT200 with 132 columns, color
+# DA2 = 990, 100300 ("\E[>990;100300;0c")
+# no VT52, no double-size characters
+# vt220 ECH test works, SRM, DECSCA do not
+# S7C1T/S8C1t does not work
+# DECUDK does not work
+# CNL does not work; the other ECMA-48 cursor-movement tests work
+# REP sort-of works (does not match xterm)
+# SD/SU work, but not SL/SR
+# window reporting: works for size in chars/pixels, but not other tests
+# X10 mouse clicks work -- but return 4 rather than 1 for codes
+# any-event mouse mode acts like any-button mode
+# implements SGR mouse-mode
+# other:
+# does not implement initc
+# does accept either colons or semicolon in 38/48 SGR.
+domterm|DomTerm web client,
+ npc,
+ bel@, blink@, dim@, invis@, kcbt=\E[Z, ritm@, rmkx=\E[?1l,
+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|
+ %t;7%;m,
+ sitm@, smkx=\E[?1h, use=xterm+256setaf, use=ecma+index,
+ use=xterm+sm+1006, use=xterm+pcfkeys, use=xterm-basic,