Tmux:如何将功能键绑定到命令?

Mar*_*son 6 tmux

如何将功能键(例如生成的F1 ESC O P)绑定到tmux命令(例如"下一个窗口" ctrl-B n)?

上下文:ssh在mac上运行到linux上的tmux会话.我正在按下fn-F1mac键盘来生成ESC O P.

Ale*_*rok 12

来自以下KEY BINDINGS部分man tmux:

tmux允许命令绑定到大多数密钥,有或没有前缀密钥.大多数人在指定键时表示自己(例如'A'到'Z').Ctrl键可以以'C-'或'^'为前缀,而Alt(meta)可以带有'M-'.此外,还接受以下特殊键名:Up,Down,Left,Right,BSpace,BTab,DC(删除),End,Enter,Escape,F1至F12,Home,IC(Insert),NPage/PageDown/PgDn ,PPage/PageUp/PgUp,Space和Tab.


bind-key [-cnr] [-t mode-table] [-T key-table] key command [arguments](别名:bind)

将键键绑定到命令.密钥绑定在密钥表中.默认情况下(不带-T),密钥绑定在前缀密钥表中.此表用于在前缀键之后按下的键(例如,默认情况下,'c'绑定到前缀表中的新窗口,因此'Cb c'创建一个新窗口). 根表用于没有前缀键的按键:将根'c'绑定到根表中的新窗口(不推荐)意味着普通'c'将创建一个新窗口.-n是-T root的别名. 密钥也可以绑定在自定义密钥表中,并且switch-client -T命令用于从密钥绑定切换到它们.-r标志表示此键可能重复,请参阅repeat-time选项.

因此, bind-key -n F1 next-window允许您点击fn-F1Macbook切换到tmux会话中的下一个窗口.