commit 3b69544d7ed6c3cd17ada5dded3387367042d4ff
parent 73f6c829bb7367a39ab37a4ba0c97322f18ade10
Author: Jan Christoph Ebersbach <jceb@e-jc.de>
Date: Mon, 31 Jul 2017 07:31:33 +0200
Introduce 0x9b as CSI
Diffstat:
1 file changed, 23 insertions(+), 0 deletions(-)
diff --git a/st.suckless.org/patches/fix_keyboard_input.md b/st.suckless.org/patches/fix_keyboard_input.md
@@ -52,6 +52,29 @@ Notes
nmap <M-Tab> :echo "<M-Tab>"<CR>
```
+- Leonard suggests to bind the CSI sequence that starts an escape sequence to
+ `0x9b` instead of `0x1b` (Esc) followed by `0x5b` (left bracket, [). This
+ removes the double use of the Esc key in terminals. Programs that run in
+ terminals always have to work around the doulbe use of the Esc key by
+ introducing a timeout that has to pass before a press of the plain Esc key is
+ acted upon. For example in vim the timeout is set by the `ttimeout` and
+ `ttimeoutlen` setting. If you want to get rid of the double use and the
+ timeout, replace all occurences of `\033[` with `\233` in the key defition.
+ In addition, settings in your CLI programs have to be adjusted to disable the
+ timeout.
+
+Here is an example. This entry
+
+```
+ { XK_underscore, ControlMask, "\033[95;5u", 0, 0, 0},
+```
+
+becomes the following:
+
+```
+ { XK_underscore, ControlMask, "\23395;5u", 0, 0, 0},
+```
+
Download
--------