tmux 的有效密钥是什么?

tmux 的有效密钥是什么?

我试图学习如何bind-key [-cnr] [-t key-table] key command [arguments]更好地使用,但在弄清楚什么是“有效”时遇到了一些困难“用于bind-key命令。

我也尝试过man tmux谷歌,但找不到任何有用的东西。

  • 如何找出有效键的语法是什么?
  • man有相关的帮助命令或页面吗?
  • 也许我不知道这个有效密钥的技术术语,是否有这些密钥的术语,以便我可以更好地进行谷歌搜索?

例如,我试图弄清楚以下命令重新映射的含义:

bind-key -n M-S-Left resize-pane -L 2
bind-key -n M-S-Right resize-pane -R 2
bind-key -n M-S-Up resize-pane -U 2
bind-key -n M-S-Down resize-pane -D 4

在页面上很容易-n找到man(不需要前缀)。但我不明白M-S-Left键是什么意思。

我猜测它的映射偏移和左箭头加上M该命令的任何含义resize-pane -L 2

  • 我如何弄清楚这M意味着什么?
  • 如果我想要控制+任何我想要的键怎么办?控制= C
  • 我怎样才能解决这个问题,而不只是尝试键盘上的随机按键直到出现问题?
  • 另外,我如何确认、弄清楚我是否没有将其映射到已使用的密钥集?
  • 是否有“显示所有别名”之类的东西?
  • 作为问题的补充,这些有效密钥与 的密钥相同吗vim

问题是,它vim自己的语言似乎有不同的脚本,因为它有时需要一些东西。

答案1

可用按键

查看man tmux/搜索KEY BINDINGS

tmux 允许将命令绑定到大多数键,无论有或没有前缀键。

当指定键时,大多数代表它们自己(例如“A”到“Z”)。 Ctrl 键可能带有“C-”或“^”前缀,Alt(元)带有“M-”前缀。

此外,还接受以下特殊键名称:

上、下、左、右、BSpace、BTab、DC(删除)、End、Enter、Escape、F1 至 F20、Home、IC(插入)、NPage/PageDown/PgDn、PPage/PageUp/PgUp、空格和 Tab 。请注意,要绑定 '"' 或 ''' 键,需要使用引号 [...]

例如,MS-Left 应该是Alt++ ShiftLeft


列出所有绑定键

要列出所有按键绑定,只需在会话中按Ctrl-b然后即可。?tmux

这也记录在man tmux以下部分中EXAMPLES

输入“Cb?”列出当前窗口中的当前键绑定;向上和向下可用于导航列表或“q”用于退出列表。

您还可以通过 列出所有键绑定tmux list-keys。如果你想检查已经设置的键,你可以grep通过输出来检查它是否已经设置。


研究

要通过 Google 查找更多信息,请搜索部分名称man tmux- 只需输入tmux default key bindings例如:)。但经常man tmux就足够了。

这个网站tmux如果您在 Google 中搜索所述字符串,则会弹出一个非常好的文档。

拱门维基也总是好的。

答案2

这是 tmux 2.2 中可用的“扩展”键名称的完整列表(从源头上撕下来):

    /* Function keys. */
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
IC
DC
Home
End
NPage
PageDown
PgDn
PPage
PageUp
PgUp
Tab
BTab
Space
BSpace
Enter
Escape
    /* Arrow keys. */
Up
Down
Left
Right
    /* Numeric keypad. */
KP/
KP*
KP-
KP7
KP8
KP9
KP+
KP4
KP5
KP6
KP1
KP2
KP3
KPEnter
KP0
KP.
    /* Mouse keys. */
MouseDown1Pane
MouseDown1Status
MouseDown1Border
MouseDown2Pane
MouseDown2Status
MouseDown2Border
MouseDown3Pane
MouseDown3Status
MouseDown3Border
MouseUp1Pane
MouseUp1Status
MouseUp1Border
MouseUp2Pane
MouseUp2Status
MouseUp2Border
MouseUp3Pane
MouseUp3Status
MouseUp3Border
MouseDrag1Pane
MouseDrag1Status
MouseDrag1Border
MouseDrag2Pane
MouseDrag2Status
MouseDrag2Border
MouseDrag3Pane
MouseDrag3Status
MouseDrag3Border
MouseDragEnd1Pane
MouseDragEnd1Status
MouseDragEnd1Border
MouseDragEnd2Pane
MouseDragEnd2Status
MouseDragEnd2Border
MouseDragEnd3Pane
MouseDragEnd3Status
MouseDragEnd3Border
WheelUpPane
WheelUpStatus
WheelUpBorder
WheelDownPane
WheelDownStatus
WheelDownBorder

除了 ASCII 可打印字符集之外,还可以使用这些字符集,并与M-C-S-前缀结合使用。

相关内容