From c344206a78185c6faabd3cd131464dbdb5a82c69 Mon Sep 17 00:00:00 2001 From: Eric Mrak Date: Thu, 22 Jun 2023 14:55:03 -0700 Subject: [PATCH] Add terminfo entries for cursor shape/color and underline color --- kitty/terminfo.py | 16 +++++++++++++++- terminfo/kitty.terminfo | 5 +++++ terminfo/x/xterm-kitty | Bin 3398 -> 3534 bytes 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/kitty/terminfo.py b/kitty/terminfo.py index 2478931e5..f8028c8ed 100644 --- a/kitty/terminfo.py +++ b/kitty/terminfo.py @@ -266,6 +266,20 @@ string_capabilities = { 'setrgbf': r'\E[38:2:%p1%d:%p2%d:%p3%dm', # Set RGB background color (non-standard used by neovim) 'setrgbb': r'\E[48:2:%p1%d:%p2%d:%p3%dm', + # DECSCUSR Set cursor style + 'Ss': r'\E[%p1%d\sq', + # DECSCUSR Reset cursor style to power-on default + 'Se': r'\E[2\sq', + # Set cursor color + 'Cs': r'\E]12;%p1%s\007', + # Reset cursor color + 'Cr': r'\E]112\007', + # Indicates support for styled and colored underlines (non-standard) as + # described at: + # https://github.com/kovidgoyal/kitty/blob/master/protocol-extensions.asciidoc + # 'Setulc' is quivalent to the 'Su' boolean capability. Until + # standardized, specify both for application compatibility. + 'Setulc': r'\E[58:2:%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1%{255}%&%d%;m', # The following entries are for compatibility with xterm, # and shell scripts using e.g. `tput u7` to emit a CPR escape @@ -448,7 +462,7 @@ queryable_capabilities = cast(Dict[str, str], numeric_capabilities.copy()) queryable_capabilities.update(string_capabilities) extra = (bool_capabilities | numeric_capabilities.keys() | string_capabilities.keys()) - set(termcap_aliases.values()) no_termcap_for = frozenset( - 'Su Smulx Sync Tc setrgbf setrgbb fullkbd kUP kDN kbeg kBEG'.split() + [ + 'Cr Cs Se Ss Setulc Su Smulx Sync Tc setrgbf setrgbb fullkbd kUP kDN kbeg kBEG'.split() + [ f'k{key}{mod}' for key in 'UP DN RIT LFT BEG END HOM IC DC PRV NXT'.split() for mod in range(3, 8)]) diff --git a/terminfo/kitty.terminfo b/terminfo/kitty.terminfo index 96de693b0..9ab7c7cf2 100644 --- a/terminfo/kitty.terminfo +++ b/terminfo/kitty.terminfo @@ -16,7 +16,12 @@ xterm-kitty|KovIdTTY, it#8, lines#24, pairs#32767, + Cr=\E]112\007, + Cs=\E]12;%p1%s\007, + Se=\E[2\sq, + Setulc=\E[58:2:%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1%{255}%&%d%;m, Smulx=\E[4:%p1%dm, + Ss=\E[%p1%d\sq, Sync=\EP=%p1%ds\E\\, acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, bel=^G, diff --git a/terminfo/x/xterm-kitty b/terminfo/x/xterm-kitty index cee3d582fada1493b2a09a1a92ac50ba43598471..c64aadb55b1b735b8b518bcc253153f0fc18c72d 100644 GIT binary patch delta 441 zcmYL@Uqqd87{@=~x3;rn(Tdhm4(;t2Dd$~p(wWGK5i@gUD_KjOHgb-3I{o9wJ6()f zk;KO6B6ZR1A`ZpO=wiv1im8juE+Q(KSd7MOzq2ml@jTz}*Yi9+D_7P_7IrUqO}yY! zmL$MO0ma;>lNiHzJY$?GUNgfy3oP-0kF4>9uk5hT5x@9DwsLhz#quklD!IC$u$py8 zEqbU&imP8Kjq153^itEB(_5wWPRm-=hPL(H)2O#Q{Um57jc#-N3De!W zdZ#{HXYx{R6_;Yc2o) delta 304 zcmWO0%`3xk0LSt7rDHq&u%RL#Mc;=Ni@_g~bA9guaCYS2fs8+SBOZ^IHL?KOURtrjKO`FP(l)C}(^dg_KZEHFYM@gqIFFO=Exn!;BFk%nWnHST>m?TkMkJfMe4+=Zdrm z-SNO9SyOr;#|NK$^J`KCa;Q`ls!@Y!wa6z+-Re`7UxVg0u1Q4{m3zWxdE#DAB$i%u P