Diferencia entre revisiones de «Reasignar teclas thinkpad»
(Página creada con «Algunos modelos de Thinkpad tienen un par de teclas encima de las del cursor que tienen un efecto odioso: hacen en los navegadores de "adelante" y "atras". Lo habitual es q...») |
mSin resumen de edición |
||
(No se muestran 3 ediciones intermedias del mismo usuario) | |||
Línea 1: | Línea 1: | ||
Algunos modelos de Thinkpad tienen un par de teclas encima de las del cursor que tienen un efecto odioso: hacen en los navegadores de "adelante" y "atras". Lo habitual es que sean PagArriba y PagAbajo, con lo que cuando estás navegando y quiere mover arriba o abajo la pagina en la que estás lo que obtienes es adelante y atras en el historial de navegación, que es un dolor. | [[Archivo:Teclas thinkpad.jpg|thumb]] | ||
Algunos modelos de Thinkpad (T510 por ejemplo) tienen un par de teclas encima de las del cursor que tienen un efecto odioso: hacen en los navegadores de "adelante" y "atras". Lo habitual es que sean PagArriba y PagAbajo, con lo que cuando estás navegando y quiere mover arriba o abajo la pagina en la que estás lo que obtienes es adelante y atras en el historial de navegación, que es un dolor. | |||
Solucion: | Solucion: | ||
Línea 5: | Línea 7: | ||
xmodmap -e 'keycode 166=Prior' | xmodmap -e 'keycode 166=Prior' | ||
xmodmap -e 'keycode 167=Next' | xmodmap -e 'keycode 167=Next' | ||
No tengo aun claro como hacer el cambio permanente. | |||
Actualización 22-mayo-2018. Resulta que por diversos motivos los gestores de escritorio no acaban de hacer lo que deberian y no cargan el fichero <code>~/.Xmodmap</code> que en teoría sería la manera correcta y elegante de hacer este cambio permanente. Basta buscar en Internet para darse cuenta de que no hay solución buena y completa, unas pierden la configuración al rebotar, al suspender, hasta al saltar el protector de pantalla, otras dependen de scripts, etc. | |||
Así que cambié de aproximación a una basada en <code>xkb</code>. | |||
Actualización 21-mayo-2020. Al actualizar Debian 9 a Debian 10, se perdió el cambio. Lo volví a hacer y funcionó correctamente. He comprobado si estoy usando XOrg o Wayland como se explica [https://unix.stackexchange.com/questions/202891/how-to-know-whether-wayland-or-x11-is-being-used aquí] y estoy usando XOrg. Puede que esta solución no funcione en Wayland. | |||
== Solucion con XKB == | |||
Partimos de la información de que las teclas a las que queremos cambiar tienen los keycodes 166 y 167 (esta información se obtiene con <code>xev</code>). Buscamos que nombre da XKB a estos keycodes en <code>/usr/share/X11/xkb/keycodes/evdev</code> y obtenemos que son <code>I166</code> y <code>I167</code>. | |||
Necesitaremos también saber el nombre de las que funcionan como PaginaArriba y Pagina Abajo (en mi caso keycodes 112 y 117). Sus nombres resultan ser <code>PGUP</code> y <code>PGDN</code>. | |||
Con esta información nos vamos a <code>/usr/share/X11/xkb/symbols/</code>. Alli buscamos <code>PGUP</code> y <code>PGDN</code> y vemos que los eventos que generan son <code>Prior</code> y <code>Next</code>. | |||
Esos son los eventos que queremos generar con <code>I166</code> y <code>I167</code>. Buscamos <code>I166</code> y vemos que está definida en el fichero <code>inet</code>. | |||
Hacemos el siguiente cambio: | |||
Antes: | |||
<nowiki> | |||
key <I166> { [ XF86Back ] }; | |||
key <I167> { [ XF86Forward ] }; | |||
</nowiki> | |||
Despues: | |||
<nowiki> | |||
// key <I166> { [ XF86Back ] }; | |||
// key <I167> { [ XF86Forward ] }; | |||
key <I166> { [ Prior ] }; | |||
key <I167> { [ Next ] };</nowiki> | |||
Y listo. A funcionar. | |||
[[Category:Tips]] | [[Category:Tips]] |
Revisión actual - 10:34 21 may 2020
Algunos modelos de Thinkpad (T510 por ejemplo) tienen un par de teclas encima de las del cursor que tienen un efecto odioso: hacen en los navegadores de "adelante" y "atras". Lo habitual es que sean PagArriba y PagAbajo, con lo que cuando estás navegando y quiere mover arriba o abajo la pagina en la que estás lo que obtienes es adelante y atras en el historial de navegación, que es un dolor.
Solucion:
xmodmap -e 'keycode 166=Prior' xmodmap -e 'keycode 167=Next'
No tengo aun claro como hacer el cambio permanente.
Actualización 22-mayo-2018. Resulta que por diversos motivos los gestores de escritorio no acaban de hacer lo que deberian y no cargan el fichero ~/.Xmodmap
que en teoría sería la manera correcta y elegante de hacer este cambio permanente. Basta buscar en Internet para darse cuenta de que no hay solución buena y completa, unas pierden la configuración al rebotar, al suspender, hasta al saltar el protector de pantalla, otras dependen de scripts, etc.
Así que cambié de aproximación a una basada en xkb
.
Actualización 21-mayo-2020. Al actualizar Debian 9 a Debian 10, se perdió el cambio. Lo volví a hacer y funcionó correctamente. He comprobado si estoy usando XOrg o Wayland como se explica aquí y estoy usando XOrg. Puede que esta solución no funcione en Wayland.
Solucion con XKB
Partimos de la información de que las teclas a las que queremos cambiar tienen los keycodes 166 y 167 (esta información se obtiene con xev
). Buscamos que nombre da XKB a estos keycodes en /usr/share/X11/xkb/keycodes/evdev
y obtenemos que son I166
y I167
.
Necesitaremos también saber el nombre de las que funcionan como PaginaArriba y Pagina Abajo (en mi caso keycodes 112 y 117). Sus nombres resultan ser PGUP
y PGDN
.
Con esta información nos vamos a /usr/share/X11/xkb/symbols/
. Alli buscamos PGUP
y PGDN
y vemos que los eventos que generan son Prior
y Next
.
Esos son los eventos que queremos generar con I166
y I167
. Buscamos I166
y vemos que está definida en el fichero inet
.
Hacemos el siguiente cambio:
Antes:
key <I166> { [ XF86Back ] }; key <I167> { [ XF86Forward ] };
Despues:
// key <I166> { [ XF86Back ] }; // key <I167> { [ XF86Forward ] }; key <I166> { [ Prior ] }; key <I167> { [ Next ] };
Y listo. A funcionar.