martes, 10 de julio de 2007

Teclado multimedia en Debian

El método es independiente del entorno de ventanas que utilicemos. Yo uso KDE y funciona muy bien.


Bueno, es más fácil de lo que parece. Primero veamos si las X reciben los eventos de las teclas en cuestión. En principio no debe haber problemas, sólo es para asegurarnos. Para ello, abrimos una consola (konsole por ejemplo) desde el entorno de ventanas y ejecutamos el comando xev, Saldrá un texto bastante grande al que no es necesario prestarle atención.

Ahora, pulsaremos una de las teclas "extra" o cualquier otra y la salida del xev debería ser algo así

(esta es la salida al pulsar la tecla de www en un teclado Logitech):

KeyPress event, serial 27, synthetic NO, window 0x1e00001, root 0x5a, subw 0x0, time 3631078724, (349,488), root:(353,511), state 0x10, keycode 178 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 characters: ##------##**KeyRelease event**, serial 27, synthetic NO, window 0x1e00001, ##---##root 0x5a, subw 0x0, time 3631079008, (349,488), root:(353,511), ##---##state 0x10, **keycode 178** (keysym 0x0, NoSymbol), same_screen YES, ##---##XLookupString gives 0 characters:

Resaltado está lo que nos interesa. Estos mensajes nos indican que la tecla con el código 178 (keycode 178) ha sido pulsada (keyPress event) y soltada (KeyRelease event). Esto lo podemos probar con el resto de botones.

Ahora que sabemos que las X saben cuando utilizamos las teclas extra, vamos ha hacer que se ejecute un script diferente según la tecla que pulsemos. Para ello instalaremos el paquete xbindkeys. En Debian basta con utilizar synaptic para instalar xbindkeys y xbindkeys-config

=====================================================

Ahora ejecutaremos xbindkeys-config, que es una utilidad gráfica para configurar el xbindkeys.
=====================================================


Para añadir una nueva tecla rápida, debemos seguir el siguiente procedimiento básico:


Ahora vamos a abrir directamente esa interfaz: vamos al menu kde y executar comando y escribimos dentro xbindkeys-config.


Os saldrá esta ventana:



Todas las asociaciones comando - combinación de teclas que definamos con xbindkeys-config se guardarán en el archivo de configuración de xbindkeys, (/home/tu_usuario/.xbindkeysrc). Como este archivo no está creado por defecto, lo primero que tenemos que hacer al abrir el programa es pulsar sobre el botón "Save & Apply & Exit" para crearlo.


Volvemos a abrirlo como indiqué antes. Si os saltáis este paso es posible que al hacer lo siguiente se cierre la ventana sola y no os deje seguir configurando nada.


Ahora vamos a comenzar a añadir las teclas.


1- Dadle al botón “New” y fijaros en la columna derecha.

2- En nombre pondremos “xmms play/pause

3- Pinchamos el botón “Get Keyy pulsamos la tecla de play/pause

4- En la caja de texto de “Action” escribimos “xmms -t”. Es decir el comando que queramos que ejecute

5- Aplicad y probad la tecla


Tras esto os quedará así:



Repetimos los pasos anteriores con las teclas stop (xmms -s), canción anterior (xmms -r) y canción siguiente (xmms -f). Una vez que las tengáis todas dadle al botón “Save & Apply & Exit”.


Probadlo, debería iros bien. Si no fuera vuestro caso puede que la tecla esté siendo capturada por KDE, GNOME o el entorno que useis.


Aqui tenemos un ejemplo visual de varias teclas que he redefinido:



Lo único que nos queda es que se ejecute siempre al inicio xbindkeys para que no tengáis que escribirlo siempre que abráis una sesión.

En KDE creamos un enlace del fichero xbindkeys en nuestra carpeta /home/tu_usuario/.kde/Autostart.

En GNOME is a Sistemas > Preferencias > Sesiones. En la pestaña “Programas de inicio” dadle a nuevo y escribid “xbindkeys” en el nombre y comando.

Con otros reproductores como Amarok, etc...

Esto os debe servir, tan sólo tenéis que ver con el comando “man” los argumentos que tiene y si es posible hacer esto mismo con ese otro reproductor. Si el reproductor permite su control mediante argumentos, podréis hacerlo igual sin problemas.

En Amarok los comandos serian:

amarok -p (play)
amarok -s (stop)
amarok --pause (pausa)
amarok -f (siguiente canción)
amarok -r (anterior canción)





Existen otro método que consiste en usar la consola, pero este otro método lo dejo para otro día
























































































.