我有一个罗技键盘(确切地说是超平面键盘暗光),它在窗口中间有上下文菜单键和 alt 键,这很烦人。
这是关键所在位置的屏幕截图:
http://freshlog.com/grabs/ff532-How_do_I_remap_the_context_menu_key_in_Mac_OS_X
我可以在默认的键盘系统首选项面板下重新映射窗口和 alt 键,但似乎没有办法重新映射上下文菜单键。
有任何想法吗?
我有一个罗技键盘(确切地说是超平面键盘暗光),它在窗口中间有上下文菜单键和 alt 键,这很烦人。
这是关键所在位置的屏幕截图:
http://freshlog.com/grabs/ff532-How_do_I_remap_the_context_menu_key_in_Mac_OS_X
我可以在默认的键盘系统首选项面板下重新映射窗口和 alt 键,但似乎没有办法重新映射上下文菜单键。
有任何想法吗?
使用KeyRemap4MacBook(适用于 osx 10.9、10.10 的Karabiner)。正如 Mecki 指出的那样,XML .keylayouts / Ukelele 无法解决您的问题。
尽管有这个名字,KeyRemap4MacBook 适用于任何 Mac(OS X 10.4 或更高版本)。
您想要的设置位于“对于 PC 用户”»“更改 PC 应用程序密钥”下。
使用KeyRemap4Macbook
. 像这样编辑private.xml
文件:
<item>
<name>Change Windows context menu key to Right option key</name>
<identifier>private.win_context_menu_option_key</identifier>
<autogen>--KeyToKey-- KeyCode::PC_APPLICATION, KeyCode::OPTION_R</autogen>
</item>
此代码会将右选项键重新映射到上下文菜单键。
您可以使用 Karabiner 映射App到Command+ Option:
然后,您可以使用 Keyboard Maestro 映射Command++ ,其中是表示应用程序的键,以聚焦应用程序Option:LetterLetter
例如,您可以然后App+C聚焦 Chrome,App+T聚焦终端,App+S聚焦 Slack 等(如果应用程序尚未打开,Keyboard Maestro 将首先打开它)。
如果您使用的是通用键盘,那么您有一个专用的 App 键:
如果您使用的是 Apple 键盘,则必须按住Command和Option,但它们彼此相邻,并出现在空格键的两侧:
请记住,OS X 已经使用Command+ Option+Esc打开强制退出应用程序对话框,因此您现在可以使用App+Esc来实现。同样,OS X 使用++Command关闭焦点应用程序中的所有窗口(Chrome 中的选项卡)。OptionW
笔记:
最新的 MacOS 版本由 Karabiner Elements 12.1 提供。
键对键重新映射在Simple Modifications
选项卡中完成,并在 2 行下拉菜单中方便地选择(参见:屏幕截图)。
Complex Modifications
在此首选项面板的选项卡中,必须通过从 Internet(Karabiner-E. 的站点)或从用户的~/.config/karabiner/assets/ complex_modifications
文件夹中导入它们来添加它们。
来自网络的“复杂”实际上也被复制到那里并在选项卡中“打开”(= [+ Enable]
)。
所有修改最终都存储(并因此“激活”)在~/.config/karabiner/karabiner.json
.
一个实用的过程(也有助于避免在自己编写复杂模块时出错)是复制、重命名和更改一个“导入”模块。
一旦您有经验(例如:不同的括号类型),直接编辑 json 文件可能会更容易......</p>
不再有将重新映射限制为特定窗口的选项(可以通过 osascript AppleScript 模拟)作为其他一些功能。
正在开发一个非 Element 版本的 Karabiner。
获取信息和问题(已回答)的两个站点——但请搜索以前的“双打”!:
github.com >> Karabiner-Elements
groups.google.com/forums/osx-karabiner
Entry: For PC Users -> Change PC Application Key -> Application Key to Option_L
不幸的是,最新的 macOS Sierra 还不支持Karabiner。capslock
一个简单的解决方案是用密钥转换command
密钥。