Poesía Binaria

Activando teclas para obtener nuevas funcionalidades.

En ocasiones, adquirimos un teclado nuevo, con muchas teclas especiales, o si compramos un nuevo portátil, seguramente éste tenga varias teclas especiales que el sistema por defecto no identifica.
El problema la mayoría de las veces, es que tenemos una tecla, cuyo código no es reconocido. Para ello tenemos la utilidad xmodmap, podemos hacer que una tecla determinada se comporte como otra. Tenemos un listado completo de los códigos de las teclas aquí [Link original] y aquí [Original].

Aunque el gran problema es, ¿cómo averiguo el código de una determinada tecla? Para ello tenemos una utilidad (xev), la ejecutamos desde un terminal:

$ xev


Luego pulsamos la tecla que queremos verificar una vez, en el ejemplo he pulsado Escape y una tecla especial de mi teclado (reconocida como XF86Launch6), pero a la izquierda, tenemos los keycodes (códigos de tecla), que es lo que debemos utiliza para modificar el comportamiento de la tecla.
Muchas veces, no debemos fiarnos de las teclas que vienen marcadas en nuestro teclado como especiales o multimedia, porque si probamos, veremos que generalmente hay más (incluso combinaciones de teclas con Fn+Algo)

Cuando tengamos el keycode que debemos cambiar el comportamiento debemos crear (o modificar) el fichero .Xmodmap (que generalmente lo tenemos en nuestro $HOME y añadir el siguiente patrón:

keycode [código de tecla] = [Keysym]

tantas veces como teclas querramos «reprogramar»

Teclas desconocidas por el sistema

Mi teclado tiene teclas para subir y bajar volumen que no funcionan directamente, lo más seguro que sea porque los códigos de esas teclas no son estándar, por ejemplo códigos 360 y 361 (subir y bajar volumen respectivamente), debemos escribir en ~/.Xmodmap las siguientes líneas:

keycode 360 = XF86AudioRaiseVolume
keycode 361 = XF86AudioLowerVolume

Teclado numérico

Puede que en ocasiones nos resulte más fácil utilizar las teclas de Inicio/Fin/Av pag/Re pag/Supr/Insert desde el teclado numérico, sobre todo los usuarios de portátil con teclado extendido, ya que las teclas nativas (por decirlo de alguna forma, las que sólo cumplen esa función), son de difícil acceso cuando estás tecleando rápido.
El problema es que las teclas del teclado numérico tienen valores diferentes, por ejemplo Av Pag es la tecla 117 (Next) y cuando la pulsamos en el teclado numérico es la 89 (KP_Next), ¡ tienen códigos distintos ! y puede que algunos programas no las reconozcan correctamente.
Por tanto, lo que hacemos ahora es hacer que KP_Next se comporte como Next.

Las modificaciones en ~/.Xmodmap son:

keysym KP_Next = Next
keysym KP_Home = Home
keysym KP_End = End
keysym KP_Insert = Insert
keysym KP_Delete = Delete

Utilizo keysym en lugar de keycode para no tener que buscar los códigos de las teclas con xev, porque sé qué teclas quiero cambiar específicamente.

Probar los cambios sin reiniciar

Nada más reiniciar el entorno gráfico, los cambios estarán hechos, pero si no queremos esperar a reiniciar podemos ejecutar:

$ xmodmap ~/.Xmodmap

y los cambios se harán de inmediato.

Foto: cheetah100 (Flickr) CC-by a 30/08/2012

También podría interesarte....