Включить «Объявить время» с помощью Applescript - PullRequest
0 голосов
/ 15 сентября 2011

Как включить опцию «Объявить время» в Системной настройке даты и времени с помощью Applescript?

1 Ответ

3 голосов
/ 15 сентября 2011

Вы можете сделать это с помощью команды терминала: defaults write

Мне удалось выкопать файл настроек, в который выполняется запись, когда вы переключаете этот параметр: ~/Library/Preferences/com.apple.speech.synthesis.general.prefs.plist. Обратите внимание, что этот файл может не существовать на вашем компьютере; он создается только в том случае, если вы установили флажок «Объявить время» в системных настройках.

Ключ, значение которого вы изменяете, равен TimeAnnouncementsEnabled, для которого требуется логическое значение YES для включения объявлений и NO для отключения. Эта клавиша находится внутри словаря TimeAnnouncementPrefs, в котором находятся другие настройки, связанные с голосовыми объявлениями. Терминальная команда для включения объявлений о времени:

defaults write com.apple.speech.synthesis.general.prefs TimeAnnouncementPrefs -dict TimeAnnouncementsEnabled -bool YES

Чтобы использовать это в AppleScript, просто сделайте следующее (чтобы запустить команду терминала из AppleScript):

do shell script "defaults write com.apple.speech.synthesis.general.prefs TimeAnnouncementPrefs -dict TimeAnnouncementsEnabled -bool YES"

Это должно сделать это. Другие клавиши предпочтения (голос, пользовательская скорость и пользовательская громкость) будут сброшены к значениям по умолчанию, если вы используете команду, как указано выше. Если вы хотите установить для них значения не по умолчанию, вам придется явно установить их вместе с указанным выше значением ключа. Однако, поскольку есть несколько вложенных словарей, на которые вам, вероятно, стоит обратить внимание, используя plistbuddy (который по умолчанию не установлен AFAIK). Однако, если вы хотите только включить / отключить опцию объявления, не беспокойтесь об этом. Это настроит вас!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...