Можно ли настроить поведение клавиши «Полный доступ с клавиатуры» для окна входа в систему?

2

Сочетание клавиш fn-F7переключает tabповедение клавиш в любом месте Mac OS X, в том числе в окне входа в систему (называемое «Полный доступ с клавиатуры» в Системных настройках, оно определяет, будет ли tabциклически проходить только текстовое поле или все элементы управления). Однако переключение его в окне входа в систему является временным, и при следующем использовании окна входа в систему оно будет сброшено до значения по умолчанию (вкладка между всеми элементами управления). Переключение при входе в систему будет постоянным для пользователя, но не повлияет на окно входа в систему.

Я полагаю, что этот параметр не является постоянным, потому что в соответствии с моделью безопасности OS X, не вошедший в систему пользователь не имеет прав администратора для изменения общесистемного параметра. Но возможно ли сделать это изменение постоянным с помощью другого метода?

Доступ к настройке на уровне пользователя можно получить с помощью defaults:

# 0='Text boxes and lists only'; 2='All controls'
$ defaults read -g AppleKeyboardUIMode
0
$ defaults write -g AppleKeyboardUIMode -int 2 

... и предпочтение сохраняется в файл ~/Library/Preferences/.GlobalPreferences.plist. Я предполагаю, что это может быть установлено для всей системы с помощью sudo:

$ sudo defaults write -g AppleKeyboardUIMode

Как ни странно, это предпочтение может быть установлено и вызвано, и файл /Library/Preferences/.GlobalPreferences.plistдействительно существует; но предпочтение, кажется, никогда не записывается в этот файл. Излишне говорить, что это не влияет на поведение окна входа в систему.

Этот параметр, как правило, недокументирован, так что, возможно, кто-то знает другой интерфейс к нему?

Для любопытных причина, по которой я хочу это изменить, заключается в том, что мы используем com.apple.loginwindow AdminHostInfo DSStatusпредпочтение в нашей среде, которое добавляет цветной индикатор рядом с полем имени пользователя, отображающим состояние соединения с сервером домена. Начиная с 10.11, эта индикаторная точка принимает фокус клавиатуры в режиме по умолчанию (даже при том, что она действительно не принимает никакого взаимодействия), предотвращая простое tabпереключение в поле пароля, что расстраивает пользователя.

ghostly_s
источник
Ваша техника defaults write -g AppleKeyboardUIMode -int 2работает для меня в OS X 10.12.
JS.