在tmux中切换窗格:每个命令切换一次
一段时间以来,我一直是一个快乐的tmux用户,但是有一种行为困扰着我。 当我使用^ b-arrow切换窗格,然后立即按下箭头键(例如,从历史logging中获取命令)时,窗口窗格会再次切换。 我明白,如果你想快速浏览多个窗格,这对我来说是很有用的,但是对我来说,这是一个背后的痛苦,因为我一直在我不曾想要的窗格中结束。
那么,有没有办法设置tmux,这样^ b-arrow命令只能切换一次窗格而忽略任何后续的箭头键?
发生这种情况是因为箭头键的默认绑定是使用bind-key -r
进行设置的,指定它们可能会重复。 有两种方法可以禁用此function。
首先,您可以使用set-option repeat-time 0
来禁止完全重复。 这将影响所有绑定。 我觉得在调整窗格大小的时候非常烦人。
其次,您可以更改箭头键的绑定,以使用不带-r
选项的bind-key
:
bind-key Up select-pane -U bind-key Down select-pane -D bind-key Left select-pane -L bind-key Right select-pane -R
如果你花费很多时间浏览窗格,为什么不设置全局映射,所以你根本就不用使用前缀,比如bind -n Ch select-pane -L
把ctrl-h映射到左边,和Vim一样。
请参阅http://robots.thoughtbot.com/seamlessly-navigate-vim-and-tmux-splits,以获得更好的解决scheme,也可以跨Vim窗口进行导航。;
另一个select是如果在相同的两个窗格之间来回跳动,则进行绑定以跳转到前一个窗格。
bind-key Ca last-pane