Skip to content

Commit b7fd46d

Browse files
committed
Add entries for bracketed paste to kitty's terminfo
These were added to ncurses 6.4 in early 2023.
1 parent dfcd538 commit b7fd46d

File tree

3 files changed

+11
-1
lines changed

3 files changed

+11
-1
lines changed

kitty/terminfo.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,12 @@ def encode_keystring(keybytes: bytes) -> str:
288288
'u8': r'\E[?%[;0123456789]c',
289289
'u9': r'\E[c',
290290

291+
# Bracketed paste, added to ncurses 6.4 in 2023
292+
'PS': '\E200~',
293+
'PE': '\E201~',
294+
'BE': '\E[?2004h',
295+
'BD': '\E[?2004l',
296+
291297
# The following are entries that we don't use
292298
# # turn on blank mode, (characters invisible)
293299
# 'invis': r'\E[8m',
@@ -460,7 +466,7 @@ def encode_keystring(keybytes: bytes) -> str:
460466
queryable_capabilities.update(string_capabilities)
461467
extra = (bool_capabilities | numeric_capabilities.keys() | string_capabilities.keys()) - set(termcap_aliases.values())
462468
no_termcap_for = frozenset(
463-
'Cr Cs Se Ss Setulc Su Smulx Sync Tc setrgbf setrgbb fullkbd kUP kDN kbeg kBEG'.split() + [
469+
'Cr Cs Se Ss Setulc Su Smulx Sync Tc PS PE BE BD setrgbf setrgbb fullkbd kUP kDN kbeg kBEG'.split() + [
464470
f'k{key}{mod}'
465471
for key in 'UP DN RIT LFT BEG END HOM IC DC PRV NXT'.split()
466472
for mod in range(3, 8)])

terminfo/kitty.terminfo

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,12 @@ xterm-kitty|KovIdTTY,
1616
it#8,
1717
lines#24,
1818
pairs#32767,
19+
BD=\E[?2004l,
20+
BE=\E[?2004h,
1921
Cr=\E]112\007,
2022
Cs=\E]12;%p1%s\007,
23+
PE=\E201~,
24+
PS=\E200~,
2125
Se=\E[2\sq,
2226
Setulc=\E[58:2:%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1%{255}%&%d%;m,
2327
Smulx=\E[4:%p1%dm,

terminfo/x/xterm-kitty

58 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)