我正在更改。GlobalPreferences NSUserSubstitutions優先通過NSUserDefaults
類(通過PyObjC,但除此之外)。如何發出其他可可應用程序的偏好已更改?
這個首選項控制了文本替換功能(例如,它可以替代「©」爲「(三)」)OS X.
的改變偏好後,我要立即適用於所有正在運行的應用。當它通過系統首選項進行更改時,它立即生效。我應該如何指示其他應用程序立即應用它?
更新:這裏的項目:https://github.com/ikonst/mac-tex-substitutions
可能沒有辦法。 'NSUserDefaults' [使用每個應用程序緩存](http://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/UserDefaults/AccessingPreferenceValues/AccessingPreferenceValues.html#//apple_ref/doc/uid/10000059i- CH3-97569),定期更新。你的應用程序可以爲自己請求立即同步,但是除非其他應用程序已經註冊了對'NSUserDefaultsDidChangeNotification'的操作,否則它們可能只是等待自動同步。然而,我可能錯過了一些東西。 – 2011-12-25 01:35:16
我會這樣想的,如果系統偏好設置不能立即應用,但它確實管理......所以一定有辦法! – Ilya 2011-12-25 02:35:29
嗯,好點。 – 2011-12-25 02:38:16