2 votos

¿Utilizar caps-lock para bloquear la tecla fn u otra forma de bloquear la tecla fn?

Lo que quiero conseguir es sencillo:

  • caps lock en = fn bloqueado ( utilizar las teclas de función ).
  • caps lock off = fn desbloquear ( utilizar las teclas de los medios de comunicación ).

Encontré un par de temas sobre este problema, pero sus soluciones no me ayudaron:

  • Marcar/desmarcar la opción "Usar las teclas fn como estándar" en el panel de preferencias del teclado es lo que quiero conseguir al pulsar/desconectar el caps lock clave.
  • Otras soluciones, como la Función de giro o herramientas de reasignación de teclado como Mosquetón no parecen ser propuestas para resolver mi problema.

¿Conoce programas o soluciones que puedan lograrlo?

Si no es así:

  • ¿Puedo asignar un programa al caps lock ¿clave? ¿Cómo?
  • ¿Puedo activar la opción en el panel de preferencias del teclado con un script?

2voto

user3439894 Puntos 5883

Para abordar el último punto de su post, " ¿Puedo activar la opción en el panel de preferencias del teclado con un script? ", aquí está el AppleScript código que cambiará el estado de la casilla "Usar todas las teclas F1, F2, etc. como teclas de función estándar" en la pestaña Teclado de las Preferencias del Sistema del Teclado.

tell application "System Preferences"
    activate
    set the current pane to pane id "com.apple.preference.keyboard"
    reveal anchor "keyboardTab" of pane id "com.apple.preference.keyboard"
end tell

tell application "System Events" to tell process "System Preferences"
    click checkbox 1 of tab group 1 of window 1
end tell

quit application "System Preferences"

Nota: Este código se ha probado con OS X 10.8.5. Es posible que haya que ajustarlo para versiones posteriores de OS X.

Puedes usar esto código en una aplicación AppleScript que podría colocarse en el Dock o en un flujo de trabajo de servicio de Automator al que se podría asignar un acceso directo de teclado, etc. Si necesitas ayuda con eso, sólo tienes que preguntar.

0voto

zonble Puntos 2925

En realidad, si se utiliza Elementos del mosquetón De todos modos, hay una forma más fácil de conseguirlo:

Aunque es una mezcla de "mundos" (Karabiner/shell/GUI) su encanto es que no necesitas ninguna otra aplicación para conseguirlo "en corto" ;-)

{ "parameters": {
          "basic.to_delayed_action_delay_milliseconds": 1000},
"from": {
          "key_code": "return_or_enter",
          "modifiers": {
                "mandatory": ["control", "shift" ] }
        },
 "to": [{"shell_command": "open -g /System/Library/¬ 
                           PreferencePanes/Keyboard.prefPane/"
                              }],
 "to_delayed_action": {
       "to_if_invoked": [                     ___
            {"key_code": "tab"},                 |   These key-codes
            {"key_code": "tab"},                 |   can be replaced
            {"key_code": "tab"},                 |   by a single osa-
            {"key_code": "tab"},                 |   script, more ele-
            {"key_code": "tab"},                 |   gantly, listed
            {"key_code": "spacebar"},            |   below !         *)
            {"key_code": "q",                    |   
             "modifiers": ["command"]},       ___| < (Easier to handle)
            {"key_code": "escape"}] },
 "type": "basic"
}
 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

(* 'tell application \"System Events\" to tell process ¬
    \"System Preferences\"\n click checkbox 1 of tab group 1 ¬
    of window 1\n end tell\n quit application \"System Preferences\"'

Como puede ver, el Teclado de Preferencias del Sistema se abre mediante un comando shell, que exige un "tiempo de espera" para los siguientes códigos de teclas (milisegundos: 1000).

No encontré un atajo de teclas para llegar a la casilla, así que navega por 5 "tabs", una "barra espaciadora" (= clic), cierra el prefpane y pone un "escape" final (sin él mi sistema reacciona con retraso).
(He añadido un extra, que en realidad forma parte del AppleScript de la primera respuesta, pero adaptado: \n para los saltos de línea, \" para las llaves especiales).

He instalado un atajo "Ctrl-Shift-Enter", puedes usar s.th. si no
("caps_lock" en EventViewer envía o bien key_down o key_up - ¡pulsa dos veces para cambiar de estado!)

Este código puede ser insertado en su karabiner.json manualmente, o importado como una "modificación compleja" necesita un "título": > reglas: > descripción: > manipuladores:" -framework (reciclar el existente).

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X