macbook BetterTouchTool失效的問題(需要不斷重啓BetterTouchTool才能發揮作用)

macbook BetterTouchTool失效的問題(需要不斷重啓軟件才能發揮作用)

問題

帶 touchbar 的 MacBook 安裝BetterTouchTool後可以自定義 touchbar、觸控板手勢等等,但是可能是因爲 DB 軟件的緣故,設置好後過一段時間就失效了。具體表現爲:touchbar 顯示爲空白、設置的觸控板手勢失效,需要重啓BetterTouchTool或者在touchbar 重新點擊一下BetterTouchTool的標誌。

解決方案

1,使用launchctl 定時重啓BetterTouchTool:
1)在/Users/username/Library/LaunchAgents/下新建com.test.launchctl.plist,然後用文本編輯器添加如下代碼

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.test.launchctl.plist</string>
    <key>ProgramArguments</key>
    <array>
    	<string>sh</string>
        <string>/Users/username/launchctl_restartBTT.sh</string>
    </array>
    <key>ThrottleInterval</key>
    <integer>300</integer>
    <key>KeepAlive</key>
    <true/>
    <key>RunAtLoad</key>
    <true/>
    <key>StandardOutPath</key>
    <string>/tmp/AutoMakeLog.log</string>
    <key>StandardErrorPath</key>
    <string>/tmp/AutoMakeLog.err</string>
</dict>
</plist>

Tip: 別人用的參數<key>StartInterval</key>有個 bug,不管設置爲多少,launchctl還是 10 秒運行一次。

2)在/Users/username/下新建launchctl_restartBTT.sh,添加如下內容:

#!/usr/bin/env bash 
osascript -e 'tell application "BetterTouchTool" to quit'
open -a BetterTouchTool

3) 打開 terminal,輸入命令launchctl load com.test.launchctl.plist可以啓動剛剛的自動重啓腳本,5 分鐘執行一次launchctl_restartBTT.sh,重啓一次BetterTouchTool。輸入命令launchctl unload com.test.launchctl.plist可以停止自動重啓。

2,另外,有時候 BetterTouchTool 反應有點慢,是由於進程優先級爲普通,CPU 沒有及時處理你的操作,但是點擊安裝官方的 priority 插件又沒反應。可以手動去 Activity Monitor 查看BetterTouchTool的進程編號 PID(例如 12345),然後在命令行輸入sudo renice -n -19 12345調高進程優先級。這樣,反應速度會快些。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章