Включение/отключение ключей Fn из командной строки на Mac
Я почти никогда не использую функциональные клавиши на моем macbook pro. В основном я использую их только для громкости, яркости и т.д. Теперь, когда я начал играть в Starcraft 2, я хочу использовать их, не нажимая клавишу fn.
Я хочу написать небольшую оболочку script, которая будет переворачивать флажок "Использовать все клавиши F1, F2 и т.д. в качестве стандартных функциональных клавиш". Я думал, что могу использовать команду по умолчанию, чтобы изменить ее, но я не был уверен, какие значения использовать. Таким образом, мне не нужно менять настройки каждый раз, когда я хочу играть. Я могу запустить script, который переключит ключи и даже запустит игру.
Любые идеи?
Ответы
Ответ 1
AppleScript, который должен сделать трюк, взятый из http://scriptbuilders.net/files/fn1.1.html с небольшими изменениями
--Check if GUI Scripting is Enabled
tell application "System Events"
if not UI elements enabled then
set UI elements enabled to true
end if
end tell
--Enable/Disable "Use all F1, F2, etc. keys as standard function keys" option in Keyboard & Mouse Preference pane and close System Preferences
tell application "System Events"
tell application "System Preferences"
reveal anchor "keyboardTab" of pane "com.apple.preference.keyboard"
end tell
click checkbox 1 of tab group 1 of window 1 of application process "System Preferences"
end tell
if application "System Preferences" is running then
tell application "System Preferences" to quit
end if
Протестировано на MacOS 10.6.4
Ответ 2
Команда defaults write -g com.apple.keyboard.fnState
, хотя в прошлом у меня были проблемы с ее изменением. В итоге я просто использовал AppleScript. Попробуйте.
defaults write -g com.apple.keyboard.fnState -boolean true
Изменить
Чтобы разработать, проблемы, которые у меня были, это то, что фактическое значение изменено, но оно не активно меняет настройку в Системных настройках, а также не переключает fnState, потому что файл читается только при загрузке/входе и т.д. Кроме того, внесение изменений в файл конфигурации, открытый другой задачей, звучит как хороший способ повредить файл.
Ответ 3
Вы можете установить awsome Keyremap4Macbook.
В разделе "Настройки системы" → "Настройки клавиатуры" убедитесь, что "Использовать все клавиши F1, F2 и т.д. в качестве стандартных функциональных клавиш" отмечен как перкуссия.
- Откройте настройки KeyRemap4MacBook.
- Перейдите к опции "Pass Through Mode".
- Установите флажок "Изменить Fn + Escape для переключения" в режим прохождения через "
- Откройте "Change F1..F19 Key" и установите флажок "Macbook Pro" или "Macbook Air", выбрав правильный тип макроса.