当前位置: 首页 > 面试题库 >

在tmux中绑定Ctrl + Tab和Ctrl + Shift + Tab

龚奕
2023-03-14
问题内容

我试图获得一个ctrl+ tabctrl+ shift+ tab绑定在tmux会话中工作(我也在使用PuTTY)。

我已经经历了必须重新编译PuTTY的痛苦,以便它能够正确发送ctrl和发送shift。使用ctrl+之后v,我能够看到^[[27;5;9~^[[27;6;9~分别发送给ctrl+ tabctrl+
shift+ tab。有什么办法可以将这些绑定到tmux内部的下一个窗口和上一个窗口?

编辑:经过一些研究,我想我可能必须配置xterm来包括那些键码。知道我该怎么做吗?

Edit2:所以我发现我可以检索infocmp并重新编译它。我加了

kctab=\E[27;5;9~, kcstab=\E[27;6;9~,

到最后,除了现在它给了我一个错误。“ 条目不以第一列中的终端名称开头


问题答案:

一旦您的终端发送了 tmux的
最新“未发布”版本,它们就会自动识别那些xterm样式的键序列(无需更改terminfo条目)。下一个发行版(1.8?)也应具有此支持。使用适当的
tmux 1构建,您要做的就是将密钥绑定到 tmux 配置中:

bind-key C-Tab next-window
bind-key C-S-Tab previous-window

您仍然需要在这些键之前输入前缀键。

(注意:~/.tmux.conf仅在服务器启动时才进行处理。如果对其进行更改,则需要退出所有会话并重新启动服务器,或者使用(例如)tmux source ~/.tmux.conf使现有服务器重新处理文件。)

另外,如果您希望 tmux 将这些(以及其他)xterm样式的键序列传递给 tmux 内部运行的程序,那么您将需要启用xterm- keyswindow选项。

set-option -gw xterm-keys on

(如果愿意,可以使用-w而不是逐个窗口地执行此操作-gw。)

如果您希望不使用前缀就可以使用这些键,则可以使用“无前缀”绑定:

bind-key -n C-Tab next-window
bind-key -n C-S-Tab previous-window

但是,这或多或少将“专用”于 tmux 的密钥。很难在 tmux 内运行的任何程序中键入这些键(例如,您必须使用 tmux 命令send- keys C-Tab-通常xterm-keys必须启用以发送这些xterm样式的键序列)。

terminfo条目编辑的问题可能是因为在命名终端类型的那一行之后的每一行都必须以Tab键开头。不以制表符开头的行是新终端条目的开头。从技术上讲,NL
TAB序列基本上是此文件格式的换行符。每个条目都是一条逻辑行。

另外,如果要重新定义terminfo条目,请确保-xinfocmptic 一起使用以保留用户定义的功能(其中一些功能是非常标准的)。

1即从sf.net(位于可克隆URL
)的 tmux Git存储库中的最新代码构建git://git.code.sf.net/p/tmux/tmux-code



 类似资料:
  • 问题内容: 起作用但是 没有。 我无法在python中绑定+ 。是否有所有可能按键的文档? 问题答案: 用途: 我没有指向这些事件名称的完整列表的链接。这是我收集的部分清单:

  • 我试图从一个列表中自动设置多个表单,我打开到他们自己的选项卡。我可以在运行脚本之前准备页面的最简单的方法是将它们全部打开。我打算让selenium运行对表单的更改,然后我希望它在Ctrl+Tab下一个更改中运行。我将使用循环while来设置计数。我目前有它在HTML记录,如果我需要调整到java或我会很乐意这样做。 我试着录下来,但没有。

  • 问题内容: 我试图从打开到自己标签的列表中以多种形式自动执行某些设置。在运行脚本之前准备页面的最简单方法是将它们全部打开。我打算通过改变形式有selenium跑,那么我希望它 +到下一个。我将在设置计数时使用循环。我目前将其记录为HTML格式,如果我需要将其调整为Java,否则我会很乐意这样做。 我试图记录下来,但是没有。 问题答案: 到目前为止,Selenium中不支持选项卡。一个Seleniu

  • 本文向大家介绍浅谈ctrl+c,ctrl+d,ctrl+z在linux中的意义,包括了浅谈ctrl+c,ctrl+d,ctrl+z在linux中的意义的使用技巧和注意事项,需要的朋友参考一下 ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样. ctrl+c是强制中断程序的执行。 ctrl+z的是将任务中断,但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态,用户可以使用fg/b

  • 问题内容: 我怎么能确定 哪个 / / 下面的代码键被按下? 问题答案: 好吧,这仅适用于IE 8,因此无法在所有浏览器中使用。Microsoft实现了确定按下哪个(右/左)键的功能。 我也发现这篇关于浏览器中的按键,按键,按键事件的奇妙文章。

  • 我试图编码一个简单的键盘,并想实现上述4个键。在我的文件中,我定义了如下的布局- 我一直在中使用ASCII代码。但是我不知道如何处理Ctrl、Alt、Delete和Shift键。我使用作为backspace。但不确定如何实现delete键。 编辑:如果有人能在箭头键上加入一些指针,那也会很有帮助。