scroll-reverserlisted
Install: claude install-skill xhqing/CapabilityManagerAgent
# Scroll Reverser 使用与失灵修复
## 它是什么
Scroll Reverser 是免费开源(Apache-2.0)的 macOS 工具,用来反转滚动方向,可对触控板与鼠标分别设置,垂直与水平方向也分别可设。当前最新版 1.9(2024-06-21),要求 macOS 13.5 及以上。
工作原理:通过 CGEventTap 拦截整条滚动事件流,并依靠事件流里的 gesture 事件区分「这是触控板还是鼠标」。由此推出两个关键事实:
1. **它必须持有「辅助功能」权限**(事件拦截的前提),权限出问题就整体失灵。
2. **gesture 事件流被系统断掉时会失灵**——典型触发场景:睡眠唤醒、连接 / 断开外接显示器、macOS 版本升级后。这正是「偶尔失灵、方向变回去」的根因大类。
已知设计限制(不是失灵,别去修):手势型滚动界面(macOS 日历、iPhone Mirroring 等)无法被反转,手势方向跟随系统「自然滚动」设置。
## 失灵时的分级修复流程
用户报「滚动方向反了 / 变回去了 / 失灵」时,按以下顺序诊断与修复。每步都有命令,修完一步先验证再进下一步。
### 第 1 步:进程在不在
```bash
pgrep -fl "Scroll Reverser"
```
没有输出 → app 没在运行(重启后自启失败是常见失灵形态)。启动它:
```bash
open -a "Scroll Reverser"
```
若 `open -a` 找不到 app,说明安装位置特殊,去 `local/config.md`(本机应然配置)里拿本机安装路径。
### 第 2 步:主开关开着吗
```bash
osascript -e 'tell application id "com.pilotmoon.scroll-reverser" to get enabled'
```
返回 `false` → 主开关被关了(可能被误点)。打开它:
```bash
osascript -e 'tell application id "com.pilotmoon.scroll-reverser" to set enabled to true'
```
### 第 3 步:配置漂移了吗
```bash
defaults read com.pilotmoon.scroll-reverser
```
对照 `local/config.md` 里的本机应然配置快照(用户惯用的开关组合)。发现某键被改掉 → 用 `defaults write` 恢复(键名含义见下方速查表),运行中的 app 在每个滚动事件里实时读取这些键,一般即时生效;未见生效就重启 app(第 5 步的命令)。
### 第 4 步:都对但仍失灵 → toggle 重置(最高频解法)
进程在、开关开、配置对,但方向就是不对——这是 gesture 事件流断掉的经典形态(睡眠唤醒、外接屏、macOS 26 偶发)。官方 ReleaseNotes v1.7.2 明说:停止工作时把 Scroll Reverser 关一下再开即可重置。一条命令完成:
```bash
osascript -e 'tell application id "com.pilotmoon.scroll-reverser" to set enabled to false' -e 'tell application id "com.pilotmoon.scroll-re