简体中文
如何在 Mac 上把手柄按钮映射到键盘按键
要在 Mac 上把手柄按钮映射成键盘按键,需要一个映射 App,因为 macOS 自己做不到:系统设置里的游戏控制器只能把手柄上的一个按钮换成另一个按钮,而且只对本来就支持手柄的游戏有效。
我开发 InputConfig 就是为了这件事。它免费而且开源,能读取 PlayStation、Xbox、Switch 和 8BitDo 手柄,也能读取普通的 USB 摇杆,设置大约两分钟。
InputConfig 在 Mac App Store 免费提供。支持 macOS 14 或更高版本,无需账户,不追踪,开源。
步骤
- 用蓝牙或 USB 连接手柄。
- 打开 InputConfig,允许“无障碍”访问权限。
- 新建一个预设,在一行上点按 Scan,然后按下手柄上的按钮。
- 把输出选为 Keyboard Key,再选择按键。
- 存储并点按 Activate。映射在所有 App 里都有效。
映射第一个按钮
- 允许“无障碍”权限。 打开 InputConfig,在它提出请求时允许访问。App 要发送按键,macOS 必须先得到这项许可。可以在系统设置的隐私与安全里的无障碍(旧版 macOS 中叫“辅助功能”)查看。
- 扫描一个按钮。 点按 New Preset,再在一行上点按 Scan,然后按下你想映射的按钮。这一行会显示该按钮的名称。
- 选择按键。 在这一行的右侧选择 Keyboard Key,再选定按键。一行也可以发送鼠标移动、点按、滚动或者宏。
- 启用。 存储并点按 Activate。打开“文本编辑”,按下那个按钮,就会输入对应的字符。
把摇杆变成 WASD 或方向键
摇杆有两个轴,每个方向各占一行,所以一个摇杆可以变成四个按键。
- 四行。 上是 W,下是 S,左是 A,右是 D,或者四个方向键。
- 斜向。 往右上推时两行会同时触发,游戏看到的是同时按住两个键。
- 只有开和关。 发送按键的摇杆不再是模拟量:按键只有按下和松开两种状态。
给不支持手柄的游戏做映射
按照游戏使用的按键来映射:左摇杆是 WASD,右摇杆是鼠标,空格键跳跃,扳机键是鼠标按钮。游戏看到的是键盘和鼠标。App 里的 Smart Preset Maker 为 450 多款游戏和 App 准备了现成的布局。完整列表(英文)。
如果按键没有传到 App
请从最简单的一步开始,依次尝试:
- 确认预设已启用。 你按下哪个控件,Live Visualizer 里对应的位置就会亮起。亮了,说明 InputConfig 正在读取手柄。
- 检查“无障碍”权限。 打开系统设置的隐私与安全里的无障碍,把 InputConfig 打开。如果已经打开,就用减号按钮移除,然后重新添加。
- 对上游戏的按键。 如果按键在文本编辑器里有效、在游戏里无效,就把这一行改成游戏实际使用的按键。
- 避免重复输入。 如果游戏里每个动作都执行两次,说明游戏自己也在读取手柄。请关闭游戏的手柄支持,或者停止预设。
- 松开卡住的按键。 Control、Option、Command 加句点键会停止预设,并松开所有按住的按键。
它做不到的事
InputConfig 是把手柄变成键盘和鼠标,反过来不行。它不会创建虚拟手柄,所以不能让键盘充当手柄。
简单总结
- 一项权限。 允许一次“无障碍”权限。
- 一个功能一行。 扫描按钮,选择 Keyboard Key,选定按键。
- 一个退出办法。 Control、Option、Command 加句点键可以停止一切。
- 也能当鼠标。 把手柄当鼠标用。
扫描,选按键,启用:不管哪种手柄、哪个 App,方法就是这三步。
常见问题
在 Mac 上可以免费把手柄映射到键盘吗?
可以。InputConfig 在 Mac App Store 免费提供,而且开源,不需要账户,也没有订阅。
在游戏以外的 App 里也能用吗?
可以。它发送的是真实的键盘和鼠标事件,所以浏览器、编辑器和访达的反应和使用键盘时一样。
支持哪些手柄?
PS5 DualSense 和 DualSense Edge、PS4 DualShock 4、Xbox Wireless、Series 和 Elite、Switch Pro、Joy-Con、8BitDo,以及其他 HID 手柄。
更多中文页面
详细指南(英文)
作者说明。Ryleigh Newman 开发了 InputConfig,因为双手活动不便,每天都用手柄操作自己的 Mac。本页译自英文。App 的界面和网站的其他页面都是英文。
本页的其他语言版本: English, Deutsch, Français, Español, Italiano, Nederlands, Português, 日本語, 繁體中文, 한국어, Русский
免费。macOS 14 或更高版本。无需账户,数据不会离开你的 Mac。 源代码在 GitHub 上.