偶尔,当许多进程正在运行时,将我的 Mac 插入显示器会导致一些显示代理崩溃,例如 exposé、缩放和其他触控板功能。我找到了一些 bash 命令来终止相关进程(Dock、com.apple.Dock.agent),以恢复每个任务控制功能,但不包括缩放。哪个进程控制双指缩放,以便我可以重置它而无需重新启动我的 Mac?
答案1
更新:com.apple.AppleMultitouchTrackpad 和 com.apple.driver.AppleBluetoothMultitouch.trackpad 不是进程,它们是首选项文件,可以使用该defaults
工具进行修改。
我已设法将设置从 true 更改为 false,defaults read com.apple.AppleMultitouchTrackpad
但这实际上并没有禁用捏合缩放功能或显示在偏好设置中。更改可能需要重新启动,或者在进行更改之前知道要终止哪个进程。
github Pinch 应用程序可能是您最好的选择。
以下是派上用场的命令。
$ man defaults
$ defaults find pinch
$ defaults read com.apple.AppleMultitouchTrackpad
$ defaults read com.apple.AppleMultitouchTrackpad
$ defaults write com.apple.AppleMultitouchTrackpad TrackpadPinch -bool false
$ defaults write com.apple.AppleMultitouchTrackpad TrackpadPinch -bool true
有用资源:
根据修复捏合手势的便捷应用程序“Pinch”的自述文档,对作者有用的命令killall Dock
在你的情况下不起作用。
https://github.com/danqing/Pinch
请注意有关使用系统偏好设置重置它的评论:
自从我分享了该应用程序后,我注意到该命令并不适用于所有人。因此,我更新了该应用程序以另外打开/关闭首选项。我希望这是一个足够可靠的修复。如果不是,请通过打开问题或在 Twitter 上联系我!您可以在此处查看讨论以获取更多信息。
我假设你想在脚本中使用它。以下是 Swift 代码中的切换首选项函数
func toggleTrackpad(mode: Bool) {
let app = "com.apple.driver.AppleBluetoothMultitouch.trackpad" as CFString
CFPreferencesSetAppValue("TrackpadPinch" as CFString, mode ? kCFBooleanTrue : kCFBooleanFalse, app)
CFPreferencesAppSynchronize(app)
GestureHandler.sharedInstance().setTwoFingerPinch(mode)
}
老的:
这似乎表明您的触控板服务负责捏合设置。您可以尝试在一行中将其关闭并重新启动,
killall com.apple.driver.AppleBluetoothMultitouch.trackpad ! && com.apple.driver.AppleBluetoothMultitouch.trackpad &
这不会切换设置,但请尝试一下并告诉我。