tmux + 微型文本编辑器:shift-arrow echo keycode

Pol*_*ase 5 tmux

Ubuntu 20.04.3、tmux 3.0a、微型文本编辑器 v2.0.10

问题描述

在窗口中使用微型文本编辑器tmux时,键入修饰键 + 箭头只会回显键代码的文本,而不是执行导航或选择操作。

调试信息

my~/.tmux.conf没有任何与 Shift-箭头、Ctrl-箭头、Alt-箭头、Ctrl-Shift-箭头关联的键绑定。

micro这实际上是输入 xxx-arrows 时编辑器的内容

Shift Left/Right: [1;2D] [1;2C]
Shift Up/Down   : [1;2A] [1;2B]
Ctrl  Left/Right: [1;5D] [1;5C]
Ctrl  Up/Down   : [1;5A] [1;5B]
C-Sht Left/Right: [1;6D] [1;6C]
C-Sht Up/Down   : [1;6A] [1;6B]
Alt Left/Right  : [1;3D] [1;3C]
Alt Up/Down     : [1;3A] [1;3D]
Run Code Online (Sandbox Code Playgroud)

micro在 之外运行tmux,例如在 Gnome 终端中。没有问题。即修改键+箭头执行其预期的操作。

运行nanovim在 tmux 中,修饰键 + 箭头不会回显[1;xx]编辑器区域中的键代码。

还尝试启用以下选项~/.tmux.conf(并重新加载配置)

  • set-window-option -g xterm-keys on
  • set-option -g xterm-keys on

无论启用其中一个还是两个选项,都没有任何改进。目前我~/.tmux.conf没有设置任何这些选项。

问题

tmux这个问题与文本编辑器有关吗micro?希望有解决办法。

Pol*_*ase 3

解决方法(micro作者):https ://github.com/zyedidia/micro/issues/983#issuecomment-355867571

编辑~/.config/micro/bindings.json、添加

{
    "\u001b[1;2A": "SelectUp",
    "\u001b[1;2B": "SelectDown",
    "\u001b[1;2C": "SelectRight",
    "\u001b[1;2D": "SelectLeft",
    "\u001b[1;3D": "WordLeft",
    "\u001b[1;3C": "WordRight",
    "\u001b[1;3A": "MoveLinesUp",
    "\u001b[1;3B": "MoveLinesDown",
    "\u001b[1;4C": "SelectWordRight",
    "\u001b[1;4D": "SelectWordLeft",
    "\u001b[1;5D": "StartOfLine",
    "\u001b[1;5C": "EndOfLine",
    "\u001b[1;6D": "SelectToStartOfLine",
    "\u001b[1;6C": "SelectToEndOfLine",
    "\u001b[1;5A": "CursorStart",
    "\u001b[1;5B": "CursorEnd",
    "\u001b[1;6A": "SelectToStart",
    "\u001b[1;6B": "SelectToEnd"
}
Run Code Online (Sandbox Code Playgroud)