我正试图找到一种方法,只使用左选项键作为osx终端中的Meta键,但保留正确的选项,包括正常的功能(特殊字符#,@等)。
有没有办法配置它以这种方式工作? (基本上我想实现与iterm只使用一个选项作为meta而另一个选项作为普通选项的相同功能)
编辑:此外,使用Karabiner的解决方案也将受到欢迎
答案 0 :(得分:2)
从ant的解决方案开始并在Karabiner.app包中挖掘以了解它是如何工作的,我找到了一种方法,只使用Karabiner使其工作:
只需编辑您的Karabiner private.xml (可在~/Library/Application Support/Karabiner/private.xml
中找到)
以下内容:
<?xml version="1.0"?>
<root>
<appdef>
<appname>TERMINAL</appname>
<equal>com.apple.Terminal</equal>
</appdef>
<item>
<name>Option-Left to Meta in Terminal</name>
<only>TERMINAL</only>
<identifier>private.optionltometa</identifier>
<autogen>__KeyToKey__ KeyCode::OPTION_L, KeyCode::VK_MODIFIER_EXTRA1</autogen>
<include path="/Applications/Karabiner.app/Contents/Resources/include/checkbox/apps/terminal/meta_modifier_key.xml">
<replacementdef>
<replacementname>BEFORE</replacementname>
<replacementvalue>KeyCode::ESCAPE</replacementvalue>
</replacementdef>
<replacementdef>
<replacementname>AFTER</replacementname>
<replacementvalue></replacementvalue>
</replacementdef>
</include>
</item>
</root>
然后启动Karabiner并按 Change Key 选项卡中的 Reload XML 按钮(我使用的是版本10.22.0,可能在新版本中更改了选项卡名称)
此方法的优点是,当您不使用终端时,不会禁用您的左选项密钥,因为使用Seil的解决方案会这样做。
答案 1 :(得分:1)
它现在支持延迟&#34;选项:: KEYTOKEY_DELAYED_ACTION&#34;
https://pqrs.org/osx/karabiner/xml.html.en#syntax-KeyToKey-options
答案 2 :(得分:0)