我正在尝试将 tmux 中的移动键(窗格之间)重新映射为类似 Vim 的样式。
我不喜欢'hjkl',因此我更喜欢使用'jkl;' 键。在我的键盘上,';' 字符是“ç”。我正在这样做:
bind j select-pane -L
bind k select-pane -D
bind l select-pane -U
bind ç select-pane -R
但似乎 tmux 无法识别 'ç' 键。我怎么解决这个问题?
我正在尝试将 tmux 中的移动键(窗格之间)重新映射为类似 Vim 的样式。
我不喜欢'hjkl',因此我更喜欢使用'jkl;' 键。在我的键盘上,';' 字符是“ç”。我正在这样做:
bind j select-pane -L
bind k select-pane -D
bind l select-pane -U
bind ç select-pane -R
但似乎 tmux 无法识别 'ç' 键。我怎么解决这个问题?
目前,tmux并不真正支持核心字符具有多字节表示的绑定键。内部键表示主要是“8 位加修饰符”。现在大多数终端都使用 UTF-8,所以你的 c-with-cedilla (U+00E7) 可能是两个字节:C3 A7。
如果您的终端使用 8 位编码,它应该可以工作。您需要确保您的终端配置正确,并且您的tmux客户端不使用 UTF-8(不要使用该-u
选项,确保 LC_ALL、LC_CTYPE 和 LANG 都不包括UTF-8
or UTF8
),不要启用utf8
window 选项,并确保您的配置文件以与终端使用的相同编码保存。
bind-key
当从(例如)参数解析键字符串时, tmux将任何多字节序列(在去除前导修饰符之后)视为命名键(例如Up
, PageUp
, F1
,KP0
等);见。key_string_lookup_string
_ key-string.c
这就是导致unknown key
错误消息的原因。
我之前也在 Super User 上写过这个:tmux: trying to bind utf8 key。