summaryrefslogtreecommitdiffstats
path: root/runtime/doc/map.txt
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-11-23 20:20:18 +0000
committerBram Moolenaar <Bram@vim.org>2022-11-23 20:20:18 +0000
commit63a2e360cca2c70ab0a85d14771d3259d4b3aafa (patch)
tree9f0d9131e530cf658c2b7bf05e16539a1ebb0a28 /runtime/doc/map.txt
parent0b6d6a186e961faa5b9058406234ffd93a7e6688 (diff)
patch 9.0.0930: cannot debug the Kitty keyboard protocol with TermDebugv9.0.0930
Problem: Cannot debug the Kitty keyboard protocol with TermDebug. Solution: Add Kitty keyboard protocol support to the libvterm fork. Recognize the escape sequences that the protocol generates. Add the 'keyprotocol' option to allow the user to specify for which terminal what protocol is to be used, instead of hard-coding this. Add recognizing the kitty keyboard protocol status.
Diffstat (limited to 'runtime/doc/map.txt')
-rw-r--r--runtime/doc/map.txt54
1 files changed, 41 insertions, 13 deletions
diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt
index f2b6a61216..adccae8ac7 100644
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -10,18 +10,19 @@ This subject is introduced in sections |05.4|, |24.7| and |40.1| of the user
manual.
1. Key mapping |key-mapping|
- 1.1 MAP COMMANDS |:map-commands|
- 1.2 Special arguments |:map-arguments|
- 1.3 Mapping and modes |:map-modes|
- 1.4 Listing mappings |map-listing|
- 1.5 Mapping special keys |:map-special-keys|
- 1.6 Special characters |:map-special-chars|
- 1.7 What keys to map |map-which-keys|
- 1.8 Examples |map-examples|
- 1.9 Using mappings |map-typing|
- 1.10 Mapping alt-keys |:map-alt-keys|
- 1.11 Mapping in modifyOtherKeys mode |modifyOtherKeys|
- 1.12 Mapping an operator |:map-operator|
+ 1.1 MAP COMMANDS |:map-commands|
+ 1.2 Special arguments |:map-arguments|
+ 1.3 Mapping and modes |:map-modes|
+ 1.4 Listing mappings |map-listing|
+ 1.5 Mapping special keys |:map-special-keys|
+ 1.6 Special characters |:map-special-chars|
+ 1.7 What keys to map |map-which-keys|
+ 1.8 Examples |map-examples|
+ 1.9 Using mappings |map-typing|
+ 1.10 Mapping alt-keys |:map-alt-keys|
+ 1.11 Mapping in modifyOtherKeys mode |modifyOtherKeys|
+ 1.12 Mapping with Kitty keyboard protocol |kitty-keyboard-protocol|
+ 1.13 Mapping an operator |:map-operator|
2. Abbreviations |abbreviations|
3. Local mappings and functions |script-local|
4. User-defined commands |user-commands|
@@ -1009,7 +1010,34 @@ When the 'esckeys' option is off, then modifyOtherKeys will be disabled in
Insert mode to avoid every key with a modifier causing Insert mode to end.
-1.12 MAPPING AN OPERATOR *:map-operator*
+1.12 MAPPING WITH KITTY KEYBOARD PROTOCOL *kitty-keyboard-protocol*
+
+If the value of 'term' contains "kitty" then Vim will send out an escape
+sequence to enable the Kitty keyboard protocol. This can be changed with the
+'keyprotocol' option.
+
+Like modifyOtherKeys, this will make it possible to distinguish between more
+keys with modifiers. Also, this protocol sends an escape sequence for the Esc
+key, so that Vim does not need to use a timeout to know whether receiving an
+Esc character means the Esc key was pressed or it's the start of an escape
+sequence.
+
+Vim automatically detects if the Kitty keyboard protocol was enabled when it
+spots the response to the status request (this should be part of the |t_TI|
+termcap entry). To see if Vim detected such an escape sequence use: >
+ :verbose map
+The first line will then show "Kitty keyboard protocol: {value}" (possibly
+translated). The meaning of {value}:
+ Unknown no status received yet
+ Off protocol is not used
+ On protocol is used
+ Disabled protocol was used but expected to have been disabled
+ by 't_TE'
+ Cleared protocol expected to have beeen disabled by 't_TE',
+ previous state is unknown
+
+
+1.13 MAPPING AN OPERATOR *:map-operator*
An operator is used before a {motion} command. To define your own operator
you must create a mapping that first sets the 'operatorfunc' option and then