Mercurial > vim
changeset 31285:76acee969543 v9.0.0976
patch 9.0.0976: enabling the kitty keyboard protocol uses push/pop
Commit: https://github.com/vim/vim/commit/a87749e3eae3f918b6678f45cf975f0cf06d3e97
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Nov 30 10:23:17 2022 +0000
patch 9.0.0976: enabling the kitty keyboard protocol uses push/pop
Problem: Enabling the kitty keyboard protocol uses push/pop.
Solution: Use the start/stop codes to avoid unpredictable behavior.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 30 Nov 2022 11:30:05 +0100 |
parents | 3dc5f502764c |
children | 33c4af586833 |
files | runtime/doc/options.txt src/term.c src/version.c |
diffstat | 3 files changed, 8 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -4901,7 +4901,7 @@ A jump table for the options with a shor mok2 modifyOtherKeys level 2, as supported by xterm kitty Kitty keyboard protocol, as supported by Kitty - The option value is a list of command separated items. Each item has + The option value is a list of comma separated items. Each item has a pattern that is matched against the 'term' option, a colon and the protocol name to be used. To illustrate this, the default value would be set with: > @@ -4926,12 +4926,13 @@ A jump table for the options with a shor CSI >4;m disables modifyOtherKeys The t_TI value is changed to: CSI >4;2m enables modifyOtherKeys + CSI ?4m request the modifyOtherKeys state kitty The t_TE value is changed to: CSI >4;m disables modifyOtherKeys - CSI <u disables the kitty keyboard protocol + CSI =0;1u disables the kitty keyboard protocol The t_TI value is changed to: - CSI >1u enables the kitty keyboard protocol + CSI =1;1u enables the kitty keyboard protocol CSI ?u request kitty keyboard protocol state CSI >c request the termresponse
--- a/src/term.c +++ b/src/term.c @@ -608,11 +608,11 @@ static tcap_entry_T builtin_mok2[] = { static tcap_entry_T builtin_kitty[] = { // t_TI enables the kitty keyboard protocol, requests the kitty keyboard // protocol state and requests the version response. - {(int)KS_CTI, "\033[>1u\033[?u\033[>c"}, + {(int)KS_CTI, "\033[=1;1u\033[?u\033[>c"}, // t_TE also disabled modifyOtherKeys, because t_TI from xterm may already // have been used. - {(int)KS_CTE, "\033[>4;m\033[<u"}, + {(int)KS_CTE, "\033[>4;m\033[=0;1u"}, {(int)KS_NAME, NULL} // end marker };