Cuando estoy desarrollando, casi siempre tengo un teclado Bluetooth externo conectado a mi Mac Book Pro y prefiero que el bloqueo de funciones esté activo para que las teclas F1-F12 funcionen sin tener que presionar la tecla fn. Pero cuando uso el teclado interno, tiendo a hacer cosas más informales y el brillo/volumen, etc., se usan con más frecuencia.
¿Puedo habilitar/deshabilitar el bloqueo de funciones según el teclado que esté usando?
Para que esto funcione, debe usar una herramienta de terceros: Karabiner.
Para habilitar esto, debe crear un filtro para el teclado externo e invertir todas las teclas de función/consumidor.
requisitos previos:
Ingrese el código clave personalizado y reemplace la identificación del proveedor y del producto por las identificaciones que se encuentran arriba
<?xml version="1.0"?>
<root>
<devicevendordef>
<vendorname>Apple</vendorname>
<vendorid>0x05ac</vendorid>
</devicevendordef>
<deviceproductdef>
<productname>ExternalKeyboard</productname>
<productid>0x0256</productid>
</deviceproductdef>
<item>
<name>Function to Consumer for External Keyboard</name>
<identifier>private.function2consumerExtK</identifier>
<device_only>DeviceVendor::Apple, DeviceProduct::ExternalKeyboard</device_only>
<autogen>__KeyToKey__ KeyCode::F1, ConsumerKeyCode::BRIGHTNESS_DOWN</autogen>
<autogen>__KeyToKey__ KeyCode::F2, ConsumerKeyCode::BRIGHTNESS_UP</autogen>
...
</item>
<item>
<name>Consumer to Function for External Keyboard</name>
<identifier>private.consumer2functionExtK</identifier>
<device_only>DeviceVendor::Apple, DeviceProduct::ExternalKeyboard</device_only>
<autogen>__KeyToKey__ KeyCode::BRIGHTNESS_DOWN, ModifierFlag::FN, KeyCode::F1</autogen>
<autogen>__KeyToKey__ KeyCode::BRIGHTNESS_UP, ModifierFlag::FN, KeyCode::F2</autogen>
...
</item>
</root>
Reemplace los puntos suspensivos por todas las demás teclas de consumo y función necesarias
Guarda el archivo
El comportamiento final debería ser el siguiente con el bloqueo de funciones activado:
Teclado interno:
F1: F1
Fn+ F1: brillo arriba
Teclado externo:
F1: brillo arriba
Fn+ F1: F1
etc.
Si deshabilita u omite la parte Consumidor a función para teclado externo, debería actuar así:
F1: aumento de brillo
Fn+ F1: aumento de brillo
lo que significa que la "capa de tecla de función" está deshabilitada y solo funciona la capa de tecla de consumidor.
etc.
Otros posibles códigos clave:
KeyCode::EXPOSE_ALL, KeyCode::F3</autogen>
KeyCode::DASHBOARD, KeyCode::F4</autogen>
KeyCode::LAUNCHPAD, KeyCode::F4</autogen>
ConsumerKeyCode::KEYBOARDLIGHT_LOW, KeyCode::F5</autogen>
ConsumerKeyCode::KEYBOARDLIGHT_HIGH, KeyCode::F6</autogen>
ConsumerKeyCode::MUSIC_PREV, KeyCode::F7</autogen>
ConsumerKeyCode::MUSIC_PLAY, KeyCode::F8</autogen>
ConsumerKeyCode::MUSIC_NEXT, KeyCode::F9</autogen>
ConsumerKeyCode::VOLUME_MUTE, KeyCode::F10</autogen>
ConsumerKeyCode::VOLUME_DOWN, KeyCode::F11</autogen>
ConsumerKeyCode::VOLUME_UP, KeyCode::F12</autogen>
klanomath
Bueno, entonces