当我在 ConEmu 中打开新的 PuTTY 选项卡时,一旦 PuTTY 选项卡获得焦点,Ctrl+Tab / Ctrl+Shift+Tab 键盘快捷键将无法使用。
有没有什么办法解决这一问题?
我可能忽略了一些显而易见的东西,因为我只使用 ConEmu 两天,并且我仍在尝试了解所有的配置选项。
答案1
当您在 ConEmu 选项卡中运行或附加任何 GUI 应用程序时 - 所有键盘输入(读取焦点)都会传递到这个子 GUI 应用程序。
这就是为什么Ctrl+Tab在您的情况下不起作用的原因——它是由 PuTTY 处理的,而不是 ConEmu 处理的。
但有一种方法。
解决方案 1
如果您在“控件”设置页面上启用了“安装键盘挂钩”选项,则带有修饰符的热键Win仍然有效!即使焦点位于子 GUI 应用程序内。默认情况下,您可以使用Win+Q和Win+ Shift+Q切换选项卡。这些热键在“键和宏”设置页面上定义。
解决方案 2
转到“按键和宏”页面,找到带有“将焦点设置为 ConEmu”说明的行并选择热键,例如Win+ BackSpace。请注意,某些组合键可能不起作用 - Windows 会捕获许多组合键。
因此,当键盘焦点在 PuTTY 中时,您可以按Win+ BackSpace,之后Ctrl+Tab必须起作用。您可以在记事本中尝试此操作 - 键盘焦点会更明显。
答案2
我找到了一种使用Ctl+ 的方法Tab。
事实证明我已经Settings > Integration > Children GUI > 'Focus on child windows'
检查过了。当我取消选中此选项时,我现在可以Ctl+Tab和Ctl+ Shift+ Tabinsdie PuTTY
答案3
对于任何使用 Cmder(主要基于 ConEmu)的人来说,它都有使用 Win 键进行选项卡切换的内置功能:
General > Support special hotkeys
+Keyboard > Win+Tab - Switch consoles
这会自动覆盖窗口和应用程序的键绑定,但基于 Putty 的控制台的上述问题将继续存在,并且不会切换控制台窗口,只会切换控制台选项卡。Cmder 中没有“控件”设置页面来尝试此答案的解决方案 1,但我找到的解决方案是禁用此设置:
Tab bar > Lazy tab switch