macos shell defaults

macos - Habilitar/deshabilitar las teclas Fn desde la línea de comandos en la Mac



shell defaults (3)

Casi nunca uso las teclas de función en mi Macbook Pro. Principalmente los uso para volumen, brillo, etc. Ahora que he empezado a jugar un montón de Starcraft 2, quiero usarlos sin tener que presionar la tecla fn hacia abajo.

Quiero escribir un pequeño script de shell que active la casilla de verificación "Usar todas las teclas F1, F2, etc. como teclas de función estándar". Estaba pensando que podría usar el comando predeterminado para cambiarlo, pero no estaba seguro de qué valores utilizar. De esta manera no tengo que cambiar las preferencias cada vez que quiero jugar. Solo puedo ejecutar el script que cambiará las teclas e incluso iniciaré el juego.

¿Algunas ideas?


El comando es defaults write -g com.apple.keyboard.fnState , aunque he tenido problemas en el pasado al cambiarlo. Terminé usando un AppleScript. Darle una oportunidad.

defaults write -g com.apple.keyboard.fnState -boolean true

Editar
Para explicarlo, los problemas que he tenido es que el valor real ha cambiado, pero no cambia la configuración de forma activa en Preferencias del sistema ni tampoco el interruptor fnState, ya que el archivo solo se lee en el inicio / inicio de sesión, etc. los cambios en un archivo de configuración abierto por otra tarea suenan como una buena manera de corromper el archivo.


Puede instalar el impresionante Keyremap4Macbook .

En Preferencias del sistema -> Preferencias del teclado, asegúrese de que "Usar todas las teclas F1, F2, etc. como teclas de función estándar" esté marcado como requisito.

  • Abre las preferencias de KeyRemap4MacBook.
  • Navegue a la opción "Modo de paso".
  • Marque la casilla ''Cambiar Fn + Escape para alternar "Modo de paso" "
  • Abra "Change F1..F19 Key" y marque la opción "Macbook Pro" o "Macbook Air" para elegir el tipo de mac correcto.

Un AppleScript que debería hacer el truco, tomado de http://scriptbuilders.net/files/fn1.1.html , con ligeras modificaciones.

--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

Probado en MacOS 10.6.4