No es exactamente lo que estás pidiendo, pero casi ...
Puede reasignar la configuración del teclado X con el xmodmap
comando. Puede ver la configuración actual ejecutandoxmodmap -pke
Cada código de tecla (que es un valor asociado con cada tecla de su teclado) puede tener hasta 8 símbolos de tecla (que es esencialmente la salida) adjunto. Son los siguientes:
- Cuando se presiona solo
- Cuando se presiona con shift
- Cuando se presiona con el interruptor de Modo habilitado (parece estar obsoleto)
- Cuando se presiona con el interruptor de modo y el cambio (parece ser obsoleto)
- Cuando se presiona con Alt-Gr (también conocido como ISO_Level3_Shift en términos de xmodmap)
- Cuando se presiona con Alt-Gr y shift
Así que actualmente mi tecla "h" se ve así:
h H h H hstroke Hstroke
donde el keyym Hstroke produce Ħ.
A menos que esté utilizando Alt-Gr para ingresar caracteres no ascii, puede reasignar h, j, k y l con Alt-Gr para hacer lo que desee. Esto sería:
xmodmap -e 'keycode 43 = h H h H Left Hstroke'
xmodmap -e 'keycode 44 = j J j J Up J'
xmodmap -e 'keycode 45 = k K k K Down ampersand'
xmodmap -e 'keycode 46 = l L l L Right Lstroke'
El Alt-Gr con entradas de turno no es estrictamente necesario, por supuesto, solo estoy preservando los valores que ya existen. Puede encontrar los valores del código clave ejecutando el xev
comando desde un terminal. xev
muestra eventos X, por lo que puede presionar una tecla y obtener información al respecto.
Para hacer esta configuración permanente, puede agregar lo siguiente a .Xmodmap en su directorio de inicio
keycode 43 = h H h H Left Hstroke
keycode 44 = j J j J Up J
keycode 45 = k K k K Down ampersand
keycode 46 = l L l L Right Lstroke
Presionar Alt-Gr ciertamente no es tan bueno como presionar Alt cuando se usa hjkl, pero creo que puede tener dificultades para hacer que Alt solo funcione porque se usa para acceder al menú. Es posible que pueda utilizar la información en esta respuesta junto con las herramientas mencionadas por Fraekkert para vincular, por ejemplo, Alt-Shift-h, lo que puede ser mejor para usted.
Posiblemente también valga la pena señalar que puede configurar el modo vi en bash (o el shell que use) mediante el uso set -o vi
. Esto le da un comportamiento similar a vi cuando edita líneas de comando e historial. Sin embargo, no creo que esto se vea en su .vimrc, así que no espere que sus reasignaciones clave funcionen.