Zsh macOS Системные настройки Изменения не вступают в силу до взаимодействия с пользователем - PullRequest
0 голосов
/ 24 января 2020

В настоящее время я играю с использованием defaults для изменения определенных настроек моего Ma c (13-дюймовый MacBook Pro, 2019). Я пытался изменить настройку System Preferences > Dock > Prefer tabs when opening documents. Немного покопавшись, я обнаружил, что могу сделать это с помощью следующей команды:

defaults write NSGlobalDomain AppleWindowTabbingMode -string '<always|manual|fullscreen>'

Я делал это, чтобы вызывать его в функции, которую я писал перед открытием файла в определенном приложения, поэтому функция всегда предпочитает открывать в новой вкладке, а не в новом окне.

Примечание: что при установке значения Всегда в Системных настройках, открытие файл с указанным приложением, используя open <file> -a <application>, действительно открывает файл в новой вкладке, а не в новом окне.

При тестировании я вошел в Системные настройки и установил настройку на Вручную . После этого я вышел из системных настроек и выполнил следующие команды:

$ defaults read NSGlobalDomain AppleWindowTabbingMode
manual
$ defaults write NSGlobalDomain AppleWindowTabbingMode -string 'always'
$ defaults read NSGlobalDomain AppleWindowTabbingMode
always
$ open <file> -a <application>

Когда я запускаю это, файл открывается в новом окне, а не на новой вкладке. Фактически, он открывается в новой вкладке только после того, как я снова открываю Системные настройки и открываю панель Dock (запуск open <file> -a <application> открывает в новом файле сейчас`).

Мне кажется, что Apple переопределяет меня в смысл, но я не могу понять, как заставить это работать. Кажется странным, что мне нужно вручную взаимодействовать с Системными настройками (не обязательно непосредственно с самим параметром, а с его панелью), чтобы получить эффект изменения настроек. Кроме того, я обнаружил, что если системные настройки открыты во время выполнения, мне нужно выйти из системных настроек, а затем перейти к панели Dock, чтобы она вступила в силу.

Есть ли способ обойти это? Что на самом деле происходит здесь, что мешает эффектам изменения настроек вступить в силу?

...