我在键盘布局列表中找不到这样的功能。如果布局内置在系统中,那就容易多了,因为我无法在所有环境中安装第三方布局。我需要
- 带有斯堪的纳维亚字母的一级或二级死键(带点的 A、带点的 O)
- 涉及地区:德国、瑞典、芬兰、丹麦、挪威……
如果您可以更改系统中的某些小文件来启用这些死键功能,那就太好了。
操作系统:Windows 7
答案1
您可以使用自动热键创造一系列死键这将允许您添加所需的任何重音。例如,以下脚本将允许您使用~和n键来制作ñ或者Ñ。
~::
Input, key, L1, {delete}{esc}{backspace}
if(key=="n"){
Send {Asc 164}
}
else if(key=="N"){
Send {Asc 165}
}
else {
Send {Asc 126}%key%
}
return
该~::
行抓取~
按键,然后input
命令抓取下一个 1 个字符 (L1) 并将其分配给变量key
。 、Delete、Esc和Backspace键均列为退出键,它们将仅返回~
键入的原始内容。否则,如果您键入小写字母,n
脚本将发送 ASCII 代码ñ(Send {Asc 130}
),输入大写字母N
将发送 ASCII 码Ñ。键入任何其他内容都会返回~
和您键入的下一个字母(最后一个else
命令会发送 ASCII 码,~
后跟变量的内容key
)。
对于不在基本 ASCII 中的重音符号,您需要使用 Unicode,如下所示:
^::
Input, key, L1, {delete}{esc}{backspace}
if(key=="u"){
Send {Asc 150}
}
else if(key=="U"){
Send {U+00DB}
}
else {
Send {Asc 94}%key%
}
return
注意书写大写字母时的命令差异Û。
您可以将尽可能多的这些命令串联在一起,使用if ... else if
命令来处理使用相同死键的所有命令。只需确保在继续下一个死键和重音符之前在末尾包含最后一个else
语句和return
命令即可。这样做的缺点是您需要明确说明要使用的所有死键和重音符。幸运的是,它们都遵循相同的模式,这使得设置变得简单,即使可能很乏味。
有关 AutoHotKeySend
命令的更多信息:https://www.autohotkey.com/docs/commands/Send.htm
有关 AutoHotKeyInput
命令的更多信息:https://www.autohotkey.com/docs/commands/Input.htm
ASCII 表:http://www.asciitable.com/
Unicode 表:https://unicode-table.com/en/
答案2
下载并安装 AllChars。非常漂亮的小应用程序,非常灵活。记不清了,但在格式化键盘方面非常灵活。在 '98、XP 和 .. 中使用过它。是的,就是这两个。不知道 7 怎么样。在 7 中,您可以激活 US International,如果我没记错的话,您也可以对其他布局执行此操作。
然后,您必须熟练掌握即时更改布局的方法。您应该在桌面或任务栏中找到语言工具栏。使用最简单、最容易的更改布局键顺序 - 最少、最短的手指移动。一旦掌握了顺序(更改和输入),它就会成为习惯。我会在英语(南非)和美国国际英语之间盲打南非荷兰语变音符号。不像您的那么复杂,但您必须将其变成肌肉记忆。
祝你好运!
答案3
我已经在 MacOsx 上使用 Dvorak 布局 10 年了,最近我也在 Windows 上安装了一台 PC。我设法使用 Microsoft 键盘布局编辑器创建了一个带有死键的布局。我把源代码放在这里:https://github.com/adrienleroy/windows-dvorak-deadkeys-layout