☰
Mac Mouse Fix 完全指南:把 $10 鼠标变成类触控板,从安装、配置到排障
2026/10/14 2:15:30 网站建设 项目流程

Mac Mouse Fix 完全指南:把 $10 鼠标变成类触控板,从安装、配置到排障

【免费下载链接】mac-mouse-fixMac Mouse Fix - Make Your $10 Mouse Better Than an Apple Trackpad!项目地址: https://gitcode.com/GitHub_Trending/ma/mac-mouse-fix

Mac Mouse Fix 是一款 macOS 鼠标增强工具,核心能力是平滑滚动、触控板手势模拟与任意按键重映射。本文依据项目官方 Readme、Support/Guides官方排障文档与仓库源码(Shared/Constants.h、Helper/Core/Coordinate/SwitchMaster.swift)整理,目标是让你完成四件事:装上跑通 → 配出常用效果 → 看懂核心机制 → 报错时能自行排障。

它是什么:一个双进程架构的鼠标驱动

一句话定位:Mac Mouse Fix 的目标是把普通鼠标变成"比 Apple 触控板更好用的 Mac 输入设备",Readme 里作者的原话是把它做成the best mouse driver of all time。

这个目标靠两个进程协作实现,这也是后续所有排障知识的前提:

进程位置职责
主应用(App)App/配置界面(Buttons / Scrolling / General 标签页)、授权引导
后台 HelperHelper/真正拦截并改写鼠标/滚轮事件,核心逻辑在 Helper/Core/ 的 Buttons、Scroll、Drag 等模块

一个关键细节:关闭主应用后功能依然生效,因为实际干活的是 Helper 进程(以 Login Item 形式常驻,见 Shared/Constants.h 中的kMFRelativeHelperAppPath)。这解释了为什么"启动电脑后 MMF 窗口自动弹出"往往只是因为你把它设成了登录项,而它其实根本不需要。

可操作建议:排查问题时先确认"是主应用没开,还是 Helper 没启用",两者互不依赖。

从零跑起来:安装、授权与兼容性一步到位

安装,二选一:

  • 官网下载最新版(macmousefix.com,需自备网络访问);
  • Homebrew 一行命令:
brew install mac-mouse-fix

如需历史版本,去项目 Releases 页面下载(老系统需要旧版)。

授权:首次启动后按引导打开"系统设置 > 隐私与安全性 > 辅助功能",勾选 Mac Mouse Fix。源码依据:App/UI/Accessibility/ 下的AuthorizeAccessibilityView就是这个引导视图。授权完成后打开General > Enable Mac Mouse Fix主开关,Helper 进程随之后台常驻——主窗口可以关掉,功能不受影响。

兼容性速查:

系统版本推荐方案
macOS 11 Big Sur 及以上Mac Mouse Fix 3.x(最新版),Apple Silicon100% 原生运行
macOS 10.13~10.15(High Sierra / Mojave / Catalina)Mac Mouse Fix 2 最新版;3.x 可能可用但有界面与功能问题
macOS 10.11~10.12(Sierra / El Capitan)Mac Mouse Fix 2.2.0 或更低

卸载:直接把 App 拖进废纸篓即可停止全部功能。但配置数据残留在系统偏好设置区域(运行配置由 Shared/Config/Config.m 管理),macOS 不允许应用自删这些文件,官方推荐用 AppCleaner 一类工具清理残留。

能干什么:能力总览

能力解决什么问题仓库依据 / 入口
按键重映射(Remaps)中键、侧键等"废物键"绑定任意动作Shared/Config/default_config.plist 的Remaps段
平滑滚动滚轮一格一格的生硬滚动变成丝滑动画Helper/Core/Config/ScrollConfig.swift
触控板手势模拟双指/三指滑动、四指捏合缩放Helper/Core/Drag/TwoFingerSwipe/
系统快捷键触发Mission Control、Launchpad、切换桌面(variant 32/160/118 等)Shared/Constants.h 的MFSymbolicHotkey枚举
Apple 键盘特殊键亮度、音量、媒体播放同文件MFSystemDefinedEventType(systemDefined子类型事件)
指针控制加速度 / 灵敏度独立于系统调节default_config.plist的Pointer段

理解这些能力,先掌握三要素模型(源码依据:Constants.h中kMFRemapsKeyTrigger / kMFRemapsKeyModificationPrecondition / kMFRemapsKeyEffect三个字典键):

  1. 触发器:click(单击)、hold(长按)、drag(点击拖动)、scroll(滚轮滚动),可带"点击层级 level"——同一按键第一次点击是 level 1,快速第二次是 level 2(双击);
  2. 前置条件:可叠加键盘修饰键(⌘⌥⌃⇧)或"按住鼠标其他按键";
  3. 动作:symbolicHotkey、keyboardShortcut、systemDefinedEvent、mouseButton(模拟真实鼠标点击)、smartZoom、navigationSwipe及 modifiedDrag 手势。

高手玩法:三个真实场景

场景一:侧键拖动管理窗口(配 Swish)🪟

  1. 安装 Swish(触控板窗口吸附工具);
  2. 在 MMF 的Buttons标签页,给任意侧键的Click and Drag动作选Scroll & Navigate;
  3. 之后按住该键拖动,窗口即可吸附半屏/四分之一屏/全屏。
  • 为什么有效:Scroll & Navigate对应kMFModifiedDragTypeTwoFingerSwipe,它读取鼠标移动 delta,经 Helper/Core/Touch/ 下的TouchAnimator平滑后,由GestureScrollSimulator向系统发送 gesture scroll 事件——应用以为自己在接收真实的双指触控板滑动。触控板双指滑动能做的一切,它都能做。
  • 边界:这是"模拟"而非真手势,低性能机器上可能略延迟(作者在源码注释中标注正在优化)。

场景二:鼠标直控亮度、音量与媒体播放

  1. 给任意按键绑定keyboardShortcut类动作;
  2. 按键选择器里**按住 Option(⌥)**切换到 Apple 键盘专属功能键;
  3. 绑定亮度/音量/播放键,从此不用伸手够键盘。

  • 为什么有效:对应systemDefinedEvent动作,源码在 Shared/Constants.h 第 260-273 行注明——这类事件走NSEvent的systemDefined子类型(subtype 8),信息编码在data1字段,效果等同于按下物理键。
  • 边界:仅覆盖ev_keymap.h已定义的系统键类型。

场景三:3D 软件中键环绕(Blender orbit)

  • 步骤:中键的Click and Drag绑定Scroll & Navigate(原理同场景一)。
  • 局限:该模拟事件 down/up 成对发出,适合"点击拖动"而非持续按压,重度使用下响应可能不如原生中键拖拽。

深潜核心机制:"捕捉(Capturing)"到底在做什么

这是 MMF 3 用户遇到问题时最该先懂的概念,官方为此单独写了指南 Support/Guides/CapturedButtonsMMF3.md。

原理:被捕捉的按键对 macOS 和其他应用完全不可见——MMF 必须把按键"藏起来",否则你按住按键 4 拖动切换桌面的同时,Chrome 会同时后退一页。拦截与否的总调度由 Helper/Core/Coordinate/SwitchMaster.swift 完成:它根据当前设备、remaps/scroll 配置、修饰键状态,动态开关键盘修饰键、滚轮、按键、移动四类事件 tap,目标是"未修改的输入 CPU 占用趋近于 0"。

机制速查表:

操作做法依据
判断哪些键被捕捉Buttons标签页左侧列出的按键即已捕捉官方指南
解除捕捉删掉该按键的全部条目官方指南
保留捕捉但恢复旧功能见下表官方指南
按键原有功能在 MMF 中应绑定
中键浏览器新标签开链接 / 终端粘贴Middle Click(绑定到单击)
按键 4 / 5应用内后退 / 前进Back/Forward(绑定到单击)
中键Blender 环绕物体Scroll & Navigate(绑定到点击拖动)

边界说明:Middle Click/Back/Forward这类模拟动作只支持"单击",因为 MMF 同时发送 down+up 事件,以避免与同按键上的其他手势互相干扰。

出问题怎么办:高频排障

以下每条按现象 → 原因 → 解法给出:

  1. 点击有明显延迟?原因:MMF 在等你完成可能的双击。解法:删掉该按键所有 Double Click 动作即可消除。源码佐证:Helper/Core/Buttons/RemapsAnalyzer.m 会先评估该按键"点击层级"上的动作分布,再决定事件立即透传还是等待。

  2. 侧键的前进/后退、中键粘贴失效了?原因:按键被捕捉(见上一节)。解法:按机制速查表绑定对应动作恢复功能,或删光该按键条目解除捕捉。

  3. 鼠标上部分按键识别不到?原因:该鼠标依赖厂商专有驱动协议(如 Logitech Options 系),不走标准 USB 协议。解法:目前无解,作者明确"工作量太大、短期内不会实现";换普通品牌鼠标最稳。

  4. Magic Mouse 没效果?原因:MMF 目前对 Magic Mouse 无任何增强(未来可能支持)。解法:换第三方鼠标。

  5. 倾斜滚轮无法触发其他动作(如切换桌面)?原因:这需要重新编程鼠标固件,在倾斜时发送按键信号而非滚动信号,且必须走厂商私有协议,很多鼠标根本做不到。解法:接受现状——MMF 至少能让倾斜横滚更顺滑可控。

  6. 想关闭指针加速?原因:MMF 本身不提供该开关。解法:macOS 14 Sonoma 及以上可在系统设置 > 鼠标 > 高级…中直接关闭系统指针加速。

  7. 想在某个 App 里单独关掉平滑滚动?原因:MMF 3 尚无 App 专属设置(MMF 2 有More… > App-specific settings)。解法:General标签页开启Show in Menu Bar,从菜单栏的 Scrolling 开关临时禁用——对应default_config.plist里的scrollKillSwitch键。

  8. 点击拖动打开 App Exposé 没反应?原因:系统层面关闭了 App Exposé 触控板手势。解法:选Spaces & Mission Control动作并向下拖动;仍无效则执行:

defaults write com.apple.Dock showAppExposeGestureEnabled -bool TRUE; killall Dock

花钱、授权与隐私

  • 定价:MMF 3 免费试用 30 天,之后付费买断;MMF 2 及更早版本永久免费。
  • 许可证:一份许可证可用于你所有 Mac,同一 Apple Account 下还会经 iCloud 自动同步;覆盖所有 3.x 版本,未来 4.0 大版本可能需重新购买。不可公开分享(与家人共享可以)。
  • 退款:无正式退款政策,但有 30 天免费试用兜底;购买后遇到问题联系作者即可。
  • 开源与数据:商业化后依然开源,采用 License(MMF License,基于 MIT 改写,禁止恶意魔改与白嫖发布)。应用无广告、不收集个人信息;唯一例外是购买时刻销售平台 Gumroad 会收集邮箱等信息(发许可证与退款所需)。

参与项目

四条贡献途径,贡献者会记入 Acknowledgements.md:

  1. 反馈:通过 Feedback Assistant 提交 bug 与想法;
  2. 赞助:应用内购买,或 GitHub 月度赞助;
  3. 翻译:项目已支持中文在内的 20+ 语言(见 Markdown/LocalizedDocuments/),缺漏可去翻译指南下留言;
  4. 代码:欢迎 PR;不确定想法是否会被采纳时,可先提交一个"只描述方案、几乎不含代码"的初始 PR 征求反馈,避免白干。

需要本地读源码或 fork 贡献时:

git clone https://gitcode.com/GitHub_Trending/ma/mac-mouse-fix

附录:关键路径速览

Shared/Config/default_config.plist 是出厂配置的权威样例,configVersion当前为 24:

配置段关键键说明
Scrollsmooth(high)、speed(medium)、reverseDirection、trackpadSimulation、modifiers平滑度/速度/反向/触控板模拟/修饰键位掩码
GeneralshowMenuBarItem、buttonKillSwitch、scrollKillSwitch菜单栏与两个"总开关"
Pointeracceleration(0.6875)、sensitivity、useSystemAcceleration指针控制
Remaps出厂为空数组首次启动时由Constants.defaultRemaps程序化填充
Constants.defaultRemapsthreeButtons/fiveButtons三键与五键两套默认映射(如中键双击=Launchpad、按键 5 拖动=双指滑动)

读透这份 plist 与ScrollConfig.swift中一一对应的懒加载属性,基本就掌握了应用的全部可调参数。

【免费下载链接】mac-mouse-fixMac Mouse Fix - Make Your $10 Mouse Better Than an Apple Trackpad!项目地址: https://gitcode.com/GitHub_Trending/ma/mac-mouse-fix

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询