在OS X中重新映射按键

6

具体来说,我正在尝试将我的MacBook的fn键映射为左键单击。

在过去使用Windows的时候,我遇到了一个非常好用的小工具,可以让我将任何东西映射到任何东西:http://www.autohotkey.com/

你可以创建一个小文本文件,例如:

^!s::                             ; CTRL + ALT + s
Send Sincerely,{enter}John Smith  ; sends keystrokes to active window
return

创建一个简单的文本文件比任何基于GUI的重映射器都要好得多。
我可以浏览它,一眼看到正在发生的一切。
我可以自定义每一个细节。
我可以保存/检索/发布/共享我的脚本。
实际上,这是我在Windows中真正想念的东西。
那么我的问题是:我该如何在OS X中做到这一点?每次谷歌搜索都会导向https://pqrs.org/macosx/keyremap4macbook/,但我不喜欢这个软件包:它有一个非常混乱的GUI界面。
如果我能用shell脚本甚至编译代码来完成这个任务,我会非常高兴的。
4个回答

3

OS X 上的热键

尽管 AHK 在 Mac 上似乎不存在,但 AHK 在 Windows 上提供的功能很可能可以在 OS X 上实现。这可能涉及编写自己的解决方案、修改开源软件或使用一组可以协同工作的应用程序。我没有尝试以下所有方法,但还是提一下,因为它们可能值得一试:

开源

IronAHK - AHK 的 .NET 重写版本,移植到了 OS X。

*原始项目可能已经停止更新。

CliClick - 命令行应用程序,可模拟鼠标点击。

商业

TextExpander - 可编写脚本的文本自动完成 / 热键 / 宏应用程序(支持 AppleScript、Shell 脚本)。

Typinator - 类似于 TextExpander,但某些功能略有不同。

KeyMo - 主要用于将按键映射到鼠标。

FastScripts - 将热键/可自定义键盘快捷键映射到 AppleScripts。

*我使用 Text Expander 和 FastScripts 并且无法离开它们。

自己动手

在 OS X 中,使用 AppleScript 或 Shell 脚本创建任何想象得到的东西都相当容易。例如,我看到过 CliClick 与自定义的 AppleScript一起使用,以实现它本身可能无法提供的某种功能。要在 Mac 上找到 AHK 替代品,可能需要通过试错、耐心,并最终找到适合您的最佳解决方案。


1

使用一个叫做ControllerMate的程序可以实现,这里有说明。然而,它是一款商业软件。我也有兴趣寻找免费替代方案。


1

Sikuli 项目看起来很有前途。虽然不确定它是否能解决你的具体问题(例如 Fn 键重新映射),但它绝对是 AHK 的跨平台替代品。


0

除了l'L'l's answer中提到的解决方案外,另一个开源解决方案是Karabiner;我一直在寻找一种将1左侧的键映射为Esc的方法,这个工具完美地解决了我的问题。它甚至解决了我使用内置的OSX键盘映射交换Cmd和Alt时破坏终端Alt快捷键的问题!强烈推荐。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接