GNU Screen:反向焦点选项卡
GNU Screen: Reverse focus tabbing
是否可以绑定Ctrl+a Shift+ Tab 将焦点切换到列表中的前一个 window(很像 Ctrl+a p 但改变焦点)?
具体来说,我想从第一个跳到最后一个。例如,这是一个屏幕配置文件:
# Vertical split with two on right
#
# +---+---+
# | | |
# | |---|
# | | |
# +---+---+
#
split -v
screen bash
title "main"
focus
split
screen bash
title "script"
focus
screen bash
title "interpreter"
focus left
# ctrl+a navigating regions
bind j focus down
bind k focus up
bind h focus left
bind l focus right
焦点从左上角的屏幕开始。我想直接跳到右下角。我可以通过按两次 Ctrl+a Tab 来做到这一点。是否有单个命令,如果有,我如何将其绑定到 Ctrl+a Shift +Tab?
编辑
刚找到Ctrl+aCtrl+i 也切换到下一个 window(奇怪的是不是 info
)。我在 Screen version 4.01.00devel (GNU) 2-May-06
很好的解决方法
将以下内容添加到您的屏幕配置文件(或~/.screenrc
)
## ctrl+a navigating regions
bindkey "^j" focus down
bindkey "^k" focus up
bindkey "^h" focus left
bindkey "^l" focus right
现在您可以按住 Ctrl + h/j/[ 快速移动=32=]k/l vim
风格。
您要查找的命令是focus prev
。
不幸的是,无法绑定 Shift+Tab,因为 bind
不允许修改键, Tab 相当于 Ctrl+i (这也解释了为什么它绑定到 focus
而不是 info
),所以你必须将它绑定到不同的密钥。
这是我的 ~/.screenrc
bindkey "^k" focus prev
bindkey "^l" focus next
如果 ~/.screenrc 不存在需要激活: Ctrl+a, Shift+:,source ~/.screenrc
那么我们可以:
Ctrl+l循环到下一个分屏
Ctrl+k循环到上一个分屏!
更新:
使用这个屏幕配置一天后,我发现我以某种方式弄乱了其他键盘快捷键。例如,当我在 Vim 中按 "Esc" 退出编辑模式时,屏幕反而聚焦在上一个屏幕上!
所以我取消了所有分屏创建的快捷方式,删除 ~/.screenrc 文件并重新开始。
老实说,考虑到弄乱其他快捷键的后果,我可以忍受仅使用 Crtl-a、Shift 循环切换分屏!
是否可以绑定Ctrl+a Shift+ Tab 将焦点切换到列表中的前一个 window(很像 Ctrl+a p 但改变焦点)?
具体来说,我想从第一个跳到最后一个。例如,这是一个屏幕配置文件:
# Vertical split with two on right
#
# +---+---+
# | | |
# | |---|
# | | |
# +---+---+
#
split -v
screen bash
title "main"
focus
split
screen bash
title "script"
focus
screen bash
title "interpreter"
focus left
# ctrl+a navigating regions
bind j focus down
bind k focus up
bind h focus left
bind l focus right
焦点从左上角的屏幕开始。我想直接跳到右下角。我可以通过按两次 Ctrl+a Tab 来做到这一点。是否有单个命令,如果有,我如何将其绑定到 Ctrl+a Shift +Tab?
编辑
刚找到Ctrl+aCtrl+i 也切换到下一个 window(奇怪的是不是 info
)。我在 Screen version 4.01.00devel (GNU) 2-May-06
很好的解决方法
将以下内容添加到您的屏幕配置文件(或~/.screenrc
)
## ctrl+a navigating regions
bindkey "^j" focus down
bindkey "^k" focus up
bindkey "^h" focus left
bindkey "^l" focus right
现在您可以按住 Ctrl + h/j/[ 快速移动=32=]k/l vim
风格。
您要查找的命令是focus prev
。
不幸的是,无法绑定 Shift+Tab,因为 bind
不允许修改键, Tab 相当于 Ctrl+i (这也解释了为什么它绑定到 focus
而不是 info
),所以你必须将它绑定到不同的密钥。
这是我的 ~/.screenrc
bindkey "^k" focus prev
bindkey "^l" focus next
如果 ~/.screenrc 不存在需要激活: Ctrl+a, Shift+:,source ~/.screenrc
那么我们可以:
Ctrl+l循环到下一个分屏
Ctrl+k循环到上一个分屏!
更新:
使用这个屏幕配置一天后,我发现我以某种方式弄乱了其他键盘快捷键。例如,当我在 Vim 中按 "Esc" 退出编辑模式时,屏幕反而聚焦在上一个屏幕上!
所以我取消了所有分屏创建的快捷方式,删除 ~/.screenrc 文件并重新开始。
老实说,考虑到弄乱其他快捷键的后果,我可以忍受仅使用 Crtl-a、Shift 循环切换分屏!