我寻找一种解决方案来为所有当前键盘布局(在语言栏中处于“活动”状态,并因此在“文本服务和输入语言”中的“已安装的服务”中处于活动状态)创建预设,并根据当前任务切换到(选择)所需的预设。
事实上,我使用多种语言(因此使用多语言软件),并且从一个任务到另一个任务都需要一组固定的活动布局;例如,对于一项工作,语言栏中必须只有 En、Ru(俄语)和 Ka(格鲁吉亚语)布局,而对于另一项工作,语言栏中只能有 En、Fr、Hy(亚美尼亚语)。在三个以上(甚至两个以上)布局之间切换(使用 Alt+Shift)很尴尬,但更尴尬的是临时添加/删除这些布局的常用方法。因此,在这种情况下唯一合适的方法就是使用预设之类的东西。
是否有任何实用程序可以轻松创建当前布局的此类“预设”,即使功能最少(即,将一个布局设置为默认布局,将一个布局设置为活动布局等)?我努力搜索,但没有找到甚至接近我的需求的解决方案/软件。PS 最好不要是类似 autohotkey 的解决方案,而是一些软件/实用程序。
答案1
经过彻底的搜索和测试后,我发现只有两种解决方案可以合理地满足上述需求。
我。第一个方法相当残酷 - 为每个“当前布局设置”创建带有 [HKEY_CURRENT_USER\Keyboard Layout] 部分的 .reg 文件,然后将它们保存到桌面(并且可以同样好地制作一个自动热键宏来访问它们)。
二.第二种是利用臭名昭著的凯拉实用程序,但您必须在 Keyla 和“文本服务和输入语言”模块中做出一些安排。否则,您可能会冒着严重损坏大脑的风险,试图理解其绝望的逻辑。
安装 Keyla 后(不要为 Win7 x64 下载 x64 版本 — 它不起作用!获取 DL 页面中的第二个链接),我试图了解在哪个选项下可以获得正常工作的布局切换器。由于 Keyla 中有两个选项卡,每个选项卡中都有多个选项,因此存在一定(不少)数量的组合。为了进行测试,我加入了 En、Ru 和 Ka 活动语言(En 为默认值),并为一些可能的选项组合块制作了表格。而且,就是无法获得由不符合任何合理因果关系的外星逻辑提供的良好认知失调。 (例如,如果你在第一个选项卡中选中“Отключить сочетание клавиш из настроек Windows”,将上面的字段留空,并在第二个选项卡中将“Alt left + Shift Left”分配给仅“Ka”布局,--你实际上只会得到“En”而没有切换。通过将其分配给仅“Ru”布局--你将在“Ru”和“Ka”之间切换(依此类推)。而这与第三列中的内容无关!相反,如果你在第一个选项卡中用“Alt left + Shift Left”填写字段“Сочетание клавиш...”,那么无论第二列中的内容是什么,你都会有另一个大脑冲击来填充第三列。因为如果你检查“Да”“En”和“Ka”布局,实际上你只会有“En”-“Ru”切换,但所有(Ru、En 和 Ka)中的“Да”你会惊讶地得到切换“En”-“En”-“Ka”。)
所以,正确使用 Keyla 的唯一正确方法是:
- 安装keyla-0.1.9-setup.exe(不是x64!);
- 转到“文本服务和输入语言”(从控制面板、语言栏或根据需要);
- 添加所需的布局(如“已安装的服务”部分);
- 进入“高级键设置”选项卡,单击“更改键序列”并禁用所有组合(选中“未分配”);
启动 Keyla 并:
5.1. 在第一个选项卡中按下(单击灰色区域中的焦点时 — — 尽管它是“灰色的”,但实际上它是活动的)所需的组合键 — — 对我来说是 Alt 左 + Shift 左;
5.2. 下一个复选框保持未选中状态(我怀疑现在这没什么机会,但无论如何);
5.3. 在第二个选项卡中,所有布局的第二列(“Сочетание клавиш”)留空,但第三列勾选与您当前任务相对应的“Да”或“Нет”。
这个算法运行正常。我希望这个“调查”可以帮助那些需要使用不同语言和布局集并经常更改它们的人。