Подтвердить что ты не робот

Включение/отключение ключей Fn из командной строки на Mac

Я почти никогда не использую функциональные клавиши на моем macbook pro. В основном я использую их только для громкости, яркости и т.д. Теперь, когда я начал играть в Starcraft 2, я хочу использовать их, не нажимая клавишу fn.

Я хочу написать небольшую оболочку script, которая будет переворачивать флажок "Использовать все клавиши F1, F2 и т.д. в качестве стандартных функциональных клавиш". Я думал, что могу использовать команду по умолчанию, чтобы изменить ее, но я не был уверен, какие значения использовать. Таким образом, мне не нужно менять настройки каждый раз, когда я хочу играть. Я могу запустить script, который переключит ключи и даже запустит игру.

Любые идеи?

4b9b3361

Ответ 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", выбрав правильный тип макроса.