Windows 下更好的输入法切换按键?

Windows 下更好的输入法切换按键?

我安装了 3 种输入语言,使用标准 Windows 键更改它们非常烦人,因为我经常会遇到语言溢出的情况。

我希望改进这一点。一个改进是像在 Ubuntu 中一样进行切换,其中Ctrl-Right Shift切换到“右”并在语言列表末尾停止,而Ctrl-Left Shift切换到“左”并在列表开头停止。

但我认为这是不可能的。

此外,可能更好的行为是这样的Alt-Tab行为。

还有可能改善吗?

更新

我知道如何在 Windows 中设置更改快捷方式,但问题是选项很少:

在此处输入图片描述

大多数这些组合都用于 Google Chrome 等许多流行程序中,因此它们无法使用。

在切换选择中:

在此处输入图片描述

没有办法禁用循环,而且调色板很差。实际上我可以在Ctrl-ShiftAlt-之间进行选择Shift

我强调一下:整个语言切换设置在 Windows 中几乎无法使用。大多数选项与其他程序冲突,整体功能极其糟糕。

所以问题仍然存在:如何设置我自己的组合,而不局限于 MS 的这种奇怪的选择?或者如何做我在问题中描述的事情?

答案1

您可以使用 Windows 中这些较差的选项设置快捷方式,然后将它们映射到您自己的附加快捷方式。

用于此目的的工具是自动热键,它可以映射按键,但也可以调用通用脚本,而这些脚本的功能远不止映射。AutoHotkey 可以满足您的所有要求。

在网上可以找到大量有关编写 AutoHotkey 脚本的帮助,但如果您需要,我也可以提供提示。

例如,如果第一种语言的快捷键是Ctrl+ 0,而第三种也是最后一种语言的快捷键是 Ctrl+ 2,则以下 AutoHotkey 脚本将在输入 Ctrl+时切换到第一种语言,在输入+Left-Shift 时切换到第三种语言 。CtrlRight-Shift

#InstallKeybdHook
^Shift::                   ; map ctrl-shift
If GetKeyState("LShift")   ; if left-shift
  Send ^0                  ; send ctrl-0
else                       ; else right-shift
  Send ^2                  ; send ctrl-2
return

AutoHotkey 脚本存储在带有 .ahk 后缀的文件中。如果您希望在 Windows 启动时运行脚本,请将其放在启动文件夹中,例如名为 的文件 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\AutoHotkey startup.ahk

备注:我一般建议不要映射Ctrl+ Shift,因为这会禁用一些有用的快捷键。例如,在许多应用程序中,选择单词到左侧的快捷键是 Ctrl+ Shift+ Left-arrow

进一步阅读:

相关内容