答案1
答案2
您可以使用登山扣应用程序在 OS X 上按您想要的方式重新映射所有按键。就我而言,我需要类似于“PC 键盘”的按键来进行编程。Karabiner 本身支持几乎所有您想用它做的事情,它可以覆盖默认行为,将原始行为留在后台而不会降低性能。作为支持 Karabiner 配置的实用工具,您应该安装 Key Codes 应用程序,您可以通过 App Store 找到它。如果您想映射 Karabiner 中未提及的按键组合,它会为您提供与 Karabiner 一起使用的确切键码KeyCode 列表
安装后,从顶部栏打开 Karabiner(抱歉,os x 术语对我来说仍然很糟糕)并选择首选项。当应用程序打开时,转到“杂项和卸载”选项卡,然后单击“打开 private.xml”。这应该是空白的。
向其中添加下一个根元素:
<?xml version="1.0"?>
<root>
...<item>items here</item>...
</root>
接下来,您可以添加项目元素;每个项目包含名称、标识符和自动生成元素(还有更多属性/元素,但简化就足够了)。本教程中的每个项目元素都按照以下形式构建:
<item>
<name>Name shown in Karabiner</name>
<identified>unique.id</identifier>
<autogen>*actual code*</autogen>
</item>
那么如何获取 AltGr 以及我急需的那些键的几个示例 AltGr:R_CMD 作为 Alt Gr。private.altgr 键到键 键码::COMMAND_R、键码::SHIFT_L、修改器标志::OPTION_L
快速步话; 键到键替换按键事件,第一行:KeyCode::COMMAND_R 是按下哪个键的触发事件。第二行:我想要的正确命令键的组合键组合。
将来需要 shift_l 和 option_l 的组合,因为右命令键现在充当 shift + option/alt。
这是我想要正确放置的管道符号。
<item>
<name>Add PIPE to right place</name>
<identifier>private.pipe</identifier>
<autogen>
__KeyToKey__
KeyCode::RawValue::0x32, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L,
KeyCode::7, ModifierFlag::OPTION_L
</autogen>
</item>
后键到键再次使用 shift 和 option 标志触发(因为现在的正确命令是这样的)。RawValue 实际上是我使用 Key Codes App 获得的“<”符号。使用 KeyCodes 时,您始终需要在 KeyCode 后面加上 ::RawValue。下一行是我需要通过该操作模仿的内容。芬兰布局的真正组合键是 7 + option/alt,因此触发该组合键以将管道转到“AltGr”+“<”。
在所有重新映射结束时,我希望恢复我的命令 + 返回事件。例如,这用于 Facebook 聊天:
<item>
<name>R CMD ENTER to Normal</name>
<identifier>private.enter</identifier>
<autogen>
__KeyToKey__
KeyCode::RETURN, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L,
KeyCode::RETURN, ModifierFlag::COMMAND_R
</autogen>
</item>
我一直重复 SHIFT_L | OPTION_L 组合,因为这仍然是右命令触发的。这是我的文件的一部分。这是指向要点的不可点击链接(我的声誉不够)gist(dot)github(dot)com/the-dunnock/c4f83b0cba7c0bb97f89。
<?xml version="1.0"?>
<root>
<item>
<name>R_CMD as Alt Gr.</name>
<identifier>private.altgr</identifier>
<autogen>
__KeyToKey__
KeyCode::COMMAND_R,
KeyCode::SHIFT_L, ModifierFlag::OPTION_L
</autogen>
</item>
<item>
<name>Add PIPE to right place</name>
<identifier>private.pipe</identifier>
<autogen>
__KeyToKey__
KeyCode::RawValue::0x32, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L,
KeyCode::7, ModifierFlag::OPTION_L
</autogen>
</item>
<item>
<name>Add Dollar symbol to right place</name>
<identifier>private.dollar</identifier>
<autogen>
__KeyToKey__
KeyCode::RawValue::0x15, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L,
KeyCode::4, ModifierFlag::OPTION_L
</autogen>
</item>
<name>R CMD ENTER to Normal</name>
<identifier>private.enter</identifier>
<autogen>
__KeyToKey__
KeyCode::RETURN, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L,
KeyCode::RETURN, ModifierFlag::COMMAND_R
</autogen>
</item>
</root>