在tmux中实现高效的窗格切换

5
当使用^B和箭头键在tmux中切换窗格时,如何最快地退出面板切换模式并将输入处理返回给窗格中的程序?
例如,您刚刚使用^B和左箭头键切换到左侧窗格中的shell,现在您想按上箭头键和Enter键来重复该shell的上一个命令,但是tmux会夺取上箭头键,认为你仍在切换窗格。
肯定有一个组合键或者其他方法可以完成面板切换,是吗?

可能是tmux中的分屏切换:每个命令只切换一次的重复问题。 - Clumsy cat
1个回答

4
因为我的键盘按箭头键是一个“昂贵”的击键,所以我很少使用箭头键。我的vim有ctrl-h,j,kl来切换窗口,所以在tmux中我定义了prefix h,j,k,l来切换面板(我的前缀是ctrl-a)。对于命令行编辑,我也不使用任何箭头键,相反,我经常使用ctrl/alt,我的ctrl键位置很好按。因此,重新运行上一个命令,我按下ctrl-p,然后输入。使用ctrl/alt来编辑命令行快速方便,因为你不需要离开主键区。
ctrl-p last cmd
ctrl-h backspace
ctrl-a first col
ctrl-d del current char
ctrl-e eol
ctrl-w remove word backwards
ctrl-b/f back/forward
alt-b/f back/forward a word
alt-d remove word forward
there are a lot more... like ctrl-k, ctrl-u, ctrl-y, alt-. etc.

如果我需要编辑一个非常长且复杂的命令,我会使用ctrl-x ctrl-e,并在我的vim中进行编辑。


我打算尝试使用 ctrl-i,j,k,l 来切换 tmux 窗格,因为我很少在 vim 会话中有多个窗口。可以想象使用光标键在 vim 窗口之间切换会感觉自然。感谢所有好的想法! - tripflag
@tripflag 好的,试一下。我的键盘没有光标键。虽然它有,但我必须按下 Fn + 一些键才能移动光标(箭头+home/end/pgup/pgdn等)。 - Kent
我在tmux中失去了“ctrl-a第一列”用于命令行编辑。 - Shawn Shaw

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接