许多应用程序(例如 Google Docs)使用Ctrl+快捷键,Alt例如,++Ctrl表示标题 2,++表示注释等。但是,在国际键盘布局中,+被映射到,因此许多这些快捷键会生成特殊字符,例如+ + = @。因此这些快捷键无法使用。Alt2CtrlAltmCtrlAltAltGrCtrlAlt2
有没有办法禁用这个Ctrl+ Alt= AltGr,以便AltGr+ 2= @ 但++Ctrl可以用作快捷方式?Alt2
之前已经有一些帖子回答过这个问题:
但是,这两种解决方案都与完全取消分配特殊字符有关。这些解决方案不会禁用Ctrl+ Alt=AltGr绑定。这意味着,为了使用Ctrl+ Alt+2作为快捷方式,我根本无法编写 @,这自然不是一个选择。
答案1
我进行了进一步研究并查看了其他答案。简短的答案似乎是:不!Windows 可以 Ctrl+Alt 和 AltGr 完全相同。
但有一个技巧。本质上我们不让 Windows 处理AltGr键绑定,而是使用知道区别的第三方工具。我们为每个单个键手动执行此操作。
此 hack 不适用于“死键“ 例如~或” ^。
。
第 1 部分:让 AutoHotKey 转换 AltGr+Some Key 到符号
自动热键可以区分AltGr和Ctrl+ Alt。它还可以转换按键,例如AltGr+2单一符号@
,前Windows 应用其键盘布局。
- 下载并安装 AutoHotKey
- 创建一个新的脚本,即一个扩展名为
.ahk
- 对于要用AltGr+ BUTTON=CHAR 写入的每个字符,创建一行如下:
<^>!BUTTON::SendInput {raw}CHAR
示例:AltGr+ 2=@ 变为<^>!2::SendInput {raw}@
- 保存脚本
如果你想测试你的脚本,你可以创建一些任意映射,如<^>!t::SendInput {raw}tttt
。双击脚本以应用它并测试AltGr+是否t在你输入时产生四个 t。
。
第 2 部分:让窗户不再碍事:
我们希望删除键盘上所有AltGr+的分配,这样 Windows 就不会将它们转换为字符。Any Key
首先我们需要创建一个新的键盘布局。
- 下载Microsoft 键盘布局创建器。它是一个简单的工具,可以让您修改键盘布局。(下载链接)
- 打开工具并
File -> Load Existing Keyboard
选择您的键盘布局。 - 选择
File -> Save source as
并赋予其新名称。 - 勾选
Alt+Ctrl (AltGr)
。
您可能想要选择File -> Save as Image
记录原始作业。 - 删除所有已分配的键,方法是单击它们,删除符号,然后单击
OK
不清除任何死键!(灰色的)。检查所有修饰键,即AltGr、Ctrl、Alt或无! - 去
Projet -> Propertie
给它一个合适的名字和描述。 - 保存:
File -> Save Source File
以便稍后编辑 - 导出设置:
Project -> Build DLL and Setup Package
然后我们需要应用这个新的键盘布局。
- 在 Documents 文件夹中找到导出的安装文件,然后双击
setup.exe
。这将安装新的键盘布局。 - 打开输入设置
Control Pannel -> Change keyboards and other input methods -> Change keybords
- 单击
Add
选择您自己的键盘并将其设为默认键盘。
一旦您确信一切正常,请返回此处并删除标准键盘。
。
第 3 部分:让 AutoHotKey 接管:
现在让我们把一切付诸行动:
- 确保在语言任务栏中选择了新键盘,并且 AutoHotKey 没有在通知托盘中最小化运行。
- 尝试输入特殊字符。这应该不起作用。
- 双击 AutoHotKey 脚本。这样它就会启动
- 尝试再次输入特殊字符。现在应该AltGr只适用于。
- 为了确保 Windows 启动时加载该脚本,请在
Start Menu\Programs\Startup
文件夹中创建该脚本的快捷方式
就是这样!(ツ) 您可以.ahk
与其他计算机共享键盘布局设置文件和脚本,以跳过大部分步骤。
其他资源:
http://answers.microsoft.com/en-us/windows/forum/windows_7-desktop/replace-default-windows-keyboard-shortcut-behavior/0c5ff2a4-6bea-49a9-88bc-669049a1e107
http://office.microsoft.com/en-us/word-help/alt-gr-keys-HP005259063.aspx
https://devblogs.microsoft.com/oldnewthing/20040329-00/?p=40003
http://www.autohotkey.com/board/topic/61625-how-to-avoid-that-ctrl-alt-altgr/
答案2
我发现可以使用数字键盘代替常规数字键来激活 Google Docs 快捷方式。使用 AHK 也可以在没有数字键的笔记本电脑上使用。例如,
<^<!2::SendInput ^!{Numpad2}
将激活标题 2 而不打印 @。无需使用 MSKLC。
答案3
答案4
我推荐 SharpKeys:
SharpKeys 是一种注册表黑客程序,用于使键盘上的某些键像其他键一样起作用。例如,如果您不小心经常按 Caps Lock,则可以使用此实用程序将 Caps Lock 映射到 Shift 键,甚至完全关闭它。此官方版本支持多达 104 个映射、大量可用键列表以及“Type Key”选项,以帮助管理映射。
我个人没有使用过它,但认识一个人曾经使用过它并且对它非常满意。
我不确定,但也许将键盘布局切换为(英国英语)可能会有帮助。以下是链接如何。