Configurar hotkeys para usar las teclas extra del teclado
Llevo tres años usando Debian y nunca había sido capaz de usar las teclas adicionales qu incluía mi teclado. Había instaldo hotkeys pero no tenía soporte para mi Genius KB-0210... Y ayer investingando un poco (sólo hacía falta leerse el man de hotkeys XD) descubrí que era muy fácil crear un fichero de configuración específico para mi teclado.
Hotkeys guarda las definiciones de los teclados en el direcotio /usr/share/hotkeys/ con extensión .def. Viendo la estructura del archivo es simple reconocer que a cada tecla se la asigna una función en función de su keycode. Ahora sólo nos queda saber que keycode tienen las teclas extra.
Descubrirlo es tan fácil como ejecutar el programa 'xev'. Veremos que aparece una nueva ventana y un montón de letras en la consola.Pinchamos en la ventana y pulsamos un tecla de la cual queramos saber su código. Pulsamos por ejemplo la tecla MyComputer y en la consola aparece algo del estilo:
KeyPress event, serial 29, synthetic NO, window 0x2c00001,
root 0xa3, subw 0x2c00002, time 21589422, (37,42), root:(878,131),
state 0x0, keycode 232 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Lo que nos interesa es la tercera línea en la cual indentificamos la tecla MyComputer con el código 232.
Lo que haremos a continuación es crear un archivo llamado tuteclado.def e iremos editando los keycodes de cada tecla.Como ejemplo os pongo mi archivo de configuración (kb210.def):
<?xml version="1.0"?>
<definition>
<config model="Genius KB-0210">
<PrevTrack keycode="144"/>
<Stop keycode="164"/>
<Play keycode="162"/>
<NextTrack keycode="153"/>
<VolUp keycode="176" adj="2"/>
<VolDown keycode="174" adj="2"/>
<Mute keycode="160"/>
<Search keycode="229"/>
<WebBrowser keycode="178"/>
<MyComputer keycode="235"/>
<Calculator keycode="161"/>
<Favorites keycode="230"/>
<Email keycode="236"/>
<Sleep keycode="223"/>
</config>
</definition>
Bueno , ya tenemos todas las teclas reconocidas!!! Lo siguiente será editar el archivo /etc/hotkeys.conf.
En este fichero indicamos qué archivo de configuración emplear y las distintas acciones que se ejecutarán con cada tecla.
Con el paquete de Debian viene un fichero de configuración como ejemplo con todas las opciones con almohadillas.Lo que haremos es suprimir las almohadillas de las funciones que nos sean útiles y cambiar el comando que queramos ejecutar.Por ejempplo configuraremos la tecla 'Stop' para que pare la reproducción de amarok:
Stop= amarok -s
Y así con todas las funciones.Como veis el proceso ha sido asignarle un keycode a la función Stop a través del archivo tuteclado.def
Y luego asignarle una acción/comando a la función Stop
Stop= amarok -s
El archivo de configuración de teclado a emplear lo pasamos con la línea 'Kbd=tuteclado' . Se trata del nombre del archivo que hemos creado sin la extensión. Sólo queda ejecutar hotkeys como usuario normal (lo interesante sería que se ejecutase en cada inico de sesión y nunca como root, no entraré en detalles pues difiere de cada escritorio). Y ya tenemos las teclas extra funcionando (qué gozada poder bajar el volumen sin tener que abrir alsamixer...jaja!)
Saludos de Longo XD
- Inicie sesión o regístrese para enviar comentarios
- 7173 lecturas

Eres el mas grande. Si te tuviese aqui al lado te daba un beso xD
Desde que dejé gnome+acme no habia vuelto a usar las teclas chungas del teclado porque no sabia como configurarlas.
Lo dicho, muchas gracias y además tu fichero de configuración vale perfectamente para mi teclado aún siendo nisu (windows 2000 kb-2616, si se llama así).
Saludos.
---
Blah, blah, blah. Leete las FAQ
Respuesta a Eres el mas grande. Si
joe que dos, a ver leemos los man!! xD
---
La política de otra manera en enpleno.com --- Y más debian en yawag.org
Respuesta a joe que dos, a ver
No podia leer los man porque ni siquiera sabia de la existencia de hotkeys :)
Saludos.
---
Blah, blah, blah. Leete las FAQ
Respuesta a No podia leer los man
Yo si lo conocía gracias al portátil, porque hubo alguien por ahi que se hizo el .def para mi portátil y me rulan todas :D, auqnue no había pensao en hacerlo con el teclado del pc normal, ya que algunas las pilla las X, pero con el cambio a Xorg, me las descojona y no coinciden con lo que son en realidad.
talue!
---
Betor!
Vaya efusividad tritt XD...Gracias por las gracias jeje.
Con respecto a lo de los man... siempre se leen,pero a veces no con todo el detenimiento que se merecen porq son verdaderas obras de arte.
Un saludo a todos
Hola pues tratando de seguir los pasos. Me lleve con la sorpresa que no encontre hotkeys.conf. Le di buscar en /etc/ pero nada.
Alguien sabe como puedo crearlo.
O no necesariamente esta, pero no lo encontre.
Gracias
Genial, es una de esas cosas que uno no necesita hasta que ve que se puede y cual util es.
Gracias por el dato
Si no tienes el archivo /etc/hotkeys.conf prueba a desinstalar el paquete junto con sus archivos de configuración 'apt-get remove --purge hotkeys' y vuelvelo a instalar.
Sino lo puedes crear manualmente, que es muy sencillo.En primer lugar necesitas una línea como la siguiente:
kbd=tuteclado
Donde 'tuteclado' es el mobre del archivo con las defniciones de teclado que has creado sin la extensión .def.
Luego para cada función del archivo .def creas una línea con el nombre de la función y el comando que quieres asociarle.Por ejemplo para Browser creas una línea como la siguiente:
Browser=firefox
En el man viene todas las funciones que se pueden usar en hotkeys.