带选项死键的特殊键盘布局
我解决这个问题的方法是,我编写了一个名为U.S. custom的特殊键盘布局。它提供了一个选项死键,可以产生选项组合,而无需使用物理⌥ Option修饰键。例如,在正常的美国键盘布局上,字符⟨ç⟩的产生方式如下:
美国自定义键盘布局添加了第二种生成⟨ç⟩的方式:
- 按下⇧ Shift+§(选项死键),然后释放它,然后按下c。
即使在已经勾选了“将选项键用作元键”的Terminal.app中也可以使用此功能。
请注意,美国自定义键盘布局还有两个额外的功能:
- 它将普通的§转换为⎄ Compose键(所以你也可以通过按下§,然后,,然后c来生成⟨ç⟩)。
- 它用一个(显著扩展的)美国扩展键盘布局替换了CapsLock映射。
将选项死键重新映射到右侧选项修饰键
如果你有一个物理ANSI键盘,则缺少§键。在这种情况下,我建议将§键分配给其他键,例如右侧⌥ Option修饰键。安装KeyRemap4MacBook,打开~/Library/Application\ Support/KeyRemap4MacBook/private.xml
并粘贴以下代码:
<?xml version="1.0"?>
<root>
<item>
<name>Send ISO Section for right Option</name>
<identifier>private.send_iso_section_for_right_option</identifier>
<autogen>--KeyToKey-- KeyCode::OPTION_R, KeyCode::UK_SECTION</autogen>
</item>
<item>
<name>Send Shift+ISO Section for Shift+right Option (keep normal right Option without Shift)</name>
<identifier>private.send_shift_iso_section_for_shift_right_option</identifier>
<autogen>--KeyToKey-- KeyCode::OPTION_R, ModifierFlag::SHIFT_R, KeyCode::UK_SECTION, ModifierFlag::SHIFT_L</autogen>
<autogen>--KeyToKey-- KeyCode::OPTION_R, ModifierFlag::SHIFT_L, KeyCode::UK_SECTION, ModifierFlag::SHIFT_L</autogen>
</item>
</root>
然后,打开KeyRemap4MacBook首选项面板,点击
ReloadXML,然后选择“Send ISO Section for right option”。现在,你的
⌥ Right Option键被重新映射为
§,所以当
U.S. custom键盘布局处于活动状态时,按下
⇧ Shift+
⌥ Right Option将会给你选项死键状态(只按下
⌥ Right Option不加其他修饰符将会给你一个等价于选项修饰符的死键状态)。
如果想要在没有按下
⇧ Shift时保留
⌥ Right Option(而不是
⎄ Compose键),则在KeyRemap4MacBook首选项面板中选择“Send Shift+ISO Section for Shift+right Option (keep normal right Option without Shift)”(而不是“Send ISO Section for right Option”)。这样,只有
⇧ Shift+
⌥ Right Option才会产生选项死键,而普通的
⌥ Right Option将继续作为选项修饰符工作。你甚至可以继续使用
⌥ Right Option+
⇧ Shift修饰符组合(例如
⌥ Right Option+
⇧ Shift+
c→⟨Ç⟩),只要你不先按下
⇧ Shift即可。