由于最近换工作的原因,博主的工作机由ThinkPad Carbon变成了MateBook 16 Pro,也算是吃上细糠了(。不过之前办公系统一直用的是Windows(生产环境则是Linux),上手Mac还是遇到了些许不习惯。这里对在Mac上使用的实用软件/工具进行分享。
在Mac中,最让我不适应的其中一点就是,Mac的鼠标和触控板板的滚动方向只能同时设置。在用Windows的笔记本的时候,我们的屏幕滚动往往与随鼠标滚轮的方向保持一致,而触控板则是以自然拖动的方向来控制屏幕滚动的。而在使用Mac时,由于Mac的鼠标和触控板板的滚动方向只能同时设置,会导致你使用鼠标时,屏幕滚动方向与滚轮方向方向相反。
这时Mos就可以解决这个问题。
Mos是一款开源软件,通过监听 MacOS 系统的滚轮, 通过插值计算的方式将滚动效果平滑处理, 它可以区分出滚动事件是来自触控板或鼠标, 并且区分处理两者的滚轮事件, Mos 主要解决以下问题:
- 使用鼠标时, 滚轮方向与触控板方向无法单独设置
- 使用鼠标浏览网页时, 滚动时跳屏 (滚动不平滑)
一些已知问题可以查看已知问题 · Caldis/Mos Wiki。
安装
你可以通过官网下载或者brew来安装这款应用:
brew install --cask mos
解决应用无法运行问题
在安装完毕之后,由于目前应用开发者们没有额外的需求加入苹果开发者计划, 因此目前发布于 Github Release 的包均未经过签名
因此在新版本的 macOS 系统中, 执行应用会被系统内置的 Gatekeeper 功能阻止 (也曾被称为 File Quarantine 功能), 这是正常现象。我个人在运行应用弹出报错时,在Mac的“系统设置 - 安全性与隐私”中找到该应用的相关提示(可能需要往下翻一翻),选择“仍然打开”后就没问题了。
如果仍然没有解决,在官方文档-如果应用无法正常运行中则提供了以下解决方法:
手动覆盖安全性设置并放行应用
请参照官方指引 support.apple.com/zh-cn/guide…
删除文件的扩展属性以绕过 Gatekeeper 的检查
在 macOS 中, 任何通过网络下载的可执行文件都会被添加一段名为 com.apple.quarantine
的扩展属性, 其标识了文件下载的来源以及时间等信息, 如果该条目存在, Gatekeeper 将会检查其安全性, 并可能阻止其执行
在终端中, 进入 Mos.app 所在目录, 并输入以下代码
xattr -d com.apple.quarantine Mos.app
即可移除 Mos.app
文件的 com.apple.quarantine
扩展属性, 然后双击即可直接运行应用
更改 Gatekeeper 的检查级别
正常情况下 macOS 仅允许直接执行以下类型的应用
- 来自 AppStore 或的应用
- 已经过 Apple Developer Progam 的帐号签名的应用
在早期的 macOS 版本中, 你可以在 系统偏好设置\安全性与隐私
中直接将 Gatekeeper 设置为允许 所有来源
的应用安装
但在近期的版本中, 该选项是隐藏的, 你可以在终端中输入以下代码来设置 Gatekeeper
sudo spctl --master-disable
这下好了, Gatekeeper 将不会阻止任何应用运行
如果有必要, 你也可以在终端中输入如下代码恢复 Gatekeeper 的设置
sudo spctl --master-enable
如果您担心预编译文件的安全性, 您也可以自行审阅或编译代码, 我们也非常欢迎您贡献代码 !
关联阅读
support.apple.com/en-us/HT202…
eshop.macsales.com/blog/57866-…
无法正确获取辅助功能权限
假设您已经在辅助功能中勾选了 Mos, 但应用仍然无法工作, 可以先尝试取消勾选, 再重新勾选一次
如果仍然无效, 也可以参考社区中给出的解决方案, 虽然我们不确定是否对你有用, 但不妨一试
- 关闭 Mos
- 系统设置 - 安全性与隐私 - 隐私 - 辅助功能,解锁设置,然后找到 Mos.app
- 先取消勾选 Mos.app,然后点下方的 - 号将其完全删除,然后上锁并关闭设置页面
- 重新启动 Mos,按提示重新勾选 Mos.app
Credit by @HunDunDM: github.com/Caldis/Mos/…