是否可以在不安装第三方程序(例如 Karabiner)的情况下禁用 MacOs 中的按键?
我的一个键卡住了并且不断被按。
在 Unix 中,使用 xmodmap 很容易做到,那么 mac 中是否有等效程序呢?
答案1
是的,但不容易
我还是会推荐你使用 Karabiner:它简单、好用,而且能满足你的需要。但是,如果你坚持不这么做……
除非您的键盘恰好是 Caps Lock、Control、Option、Command 或 Function 键,否则无法轻松地重新映射或禁用它。Karabiner 是您的最佳选择。
如果它是其中一个键,则可以在系统偏好设置->键盘->修饰键->[您想要的键]->无操作中禁用它。
但是,如果不是,你必须创建自定义键盘布局。你可以这样做手工按照苹果的建议,或者使用一个名为尤克里里。有简化的说明apple.stackexchange.com,但我鼓励您阅读完整的文档,这不是最简单的过程。但是,主要思想是您只想取消链接键盘的输出,然后保存并安装布局。
答案2
尤克里里本质上只是 OSX 文件的 UI .keylayout
,如果您愿意,您可以手动编辑它们。它们是 XML 文件,架构位于/System/Library/DTDs/KeyboardLayout.dtd
例如,此差异应更改s
为f
:
-<key code="1" output="s"/>
+<key code="1" output="f"/>
不过,你必须在中创建一个适当的“捆绑”文件夹~/Library/Keyboard Layouts
,并且访问默认布局可能比较困难获取示例。您可以在 GitHub 和其他在线位置找到许多自定义示例(例子),因此您可以下载一个并根据您的目的进行修改。
或者,如果你想妥协,你可以使用 Ukelele 根据你当前的布局创建一个示例包,然后卸载它。此时,你可以手动查看文件夹的内容,手动修改它以满足你的需求,然后安装它。