Quiero reasignar el bloqueo de mayúsculas para escapar en X11 (es decir, presionar el botón de bloqueo de mayúsculas físico será interpretado como esc por las aplicaciones y el comportamiento de esc no cambiará). La solución debe sobrevivir a un reinicio X . xmodmap y setxkbmap son soluciones aceptables (como lo son los programas similares). No quiero tratar con una GUI, ya que quiero que la solución sea portátil y una parte de mis archivos de puntos. Si me falta una solución mejor / más fácil / más obvia, dígame, aunque tenga en cuenta que no estoy usando un DE (probando i3wm).
Hasta ahora he intentado usar xmodmap y setxkbmap con poco éxito.
Aquí está mi intento de usar xmodmap:
# ~/.xinitrc
xmodmap ~/.xmodmap
y
# ~/.xmodmap
remove Lock = Caps_Lock
keysym Caps_Lock = Escape
Ejecutar $ xmodmap ~/.xmodmap
desde la línea de comandos funciona y hace lo que quiero. El problema es que esto se restablece cada vez que x se reinicia. Ahí es donde espero que llegue el xinitrc, ¿no debería cargarse cada vez que x se inicia y ejecuta el comando xmodmap? Si el comando funciona, ¿por qué no hace nada cuando se lee desde un archivo?
He intentado un par de cosas con setxkbmap, ninguno de los cuales funcionó. Los dos intentos a continuación estaban en el archivo en momentos separados.
# ~/.xinitrc
setxkbmap -option caps:esc # attempt 1
setxkbmap -option esc:nocaps # attempt 2
Ninguno de los comandos hizo nada perceptible desde la línea de comandos, por lo que supongo que he entendido mal el comando. Me gusta la idea de esta solución porque es de una sola línea y no requiere nada en otro archivo. Si tan solo funcionara.
¿Es .xinitrc el archivo incorrecto para usar? Sé que startx se está cargando desde ~ / .xinitrc.
Solicito que las posibles soluciones contengan el (los) archivo (s) completo (s), no solo una línea (si se requiere más de una en el archivo) para no estropear algunos pasos intermedios. Por ejemplo, si necesito algo en .xinitrc y algo en .xcapsrebind, muestre ambos archivos y todo el contenido requerido (también puedo manejar que me digan que agregue algo al final, pero si se requiere un & o similar, por favor dime).
xmodmap
en .xinitrc
debería funcionar. Es lo que hago. ¿Tal vez mapear algo inusual, para asegurarse de que realmente se está ejecutando cuando comienza x? Además, ¿qué entorno de escritorio / administrador de ventanas utiliza? KDE periódicamente "corrige" la asignación de mi teclado sin que yo se lo diga. Tal vez verifique la configuración de su escritorio para asegurarse de que nada se esté ejecutando xmodmap
a sus espaldas.
~/.xinitrc
no se está ejecutando. Estoy usando i3wm y no DE en este momento, aunque lo mismo estaba sucediendo en Pantheon cuando lo intenté. Por lo que puedo decir, i3 no se mete con el xinitrc ni carga el suyo (pero soy un novato, entonces, ¿qué sé?).
Option "XkbOptions" "caps:escape"
en un X
archivo de configuración del teclado, por ejemplo/etc/X11/xorg.conf.d/10-keyboard.conf
.xinitrc
:setxkbmap -option caps:escape