Actualmente estoy configurando mi diseño de teclado predeterminado de esta manera:
setxkbmap -layout us -variant dvorak -option ctrl:nocaps,[...]
Deshabilita la tecla de bloqueo de mayúsculas y la convierte en una tecla Ctrl adicional, junto con un enjambre de otras opciones.
Me gustaría hacer lo siguiente para cambiar la distribución del teclado:
setxkbmap -layout us -variant dvorak-l -option ctrl:swapcaps
Sin embargo, no vuelve a habilitar la tecla de bloqueo de mayúsculas; Tanto la tecla de control izquierda como el bloqueo de mayúsculas permanecen como teclas de control hasta donde puedo ver.
Sé que puedo borrar toda la lista de opciones, pero en aras de la mantenibilidad, prefiero no copiar las opciones. ¿Cómo vuelvo a habilitar el bloqueo de mayúsculas?
Actualización:
Al mirar las pulsaciones de teclas con xev (1), aparece ctrl: nocaps da una Control_L
para ambas teclas, y ctrl: swapcaps "restaura" la tecla de bloqueo de mayúsculas (presionando la tecla da Caps_Lock
). Sin embargo, el LED de bloqueo de mayúsculas no se enciende ni funciona realmente.
Mirar el xkeyboard-config/symbols/ctrl
archivo en las fuentes de X.org sugiere el problema:
xkb_symbols "nocaps" {
replace key <CAPS> { [ Control_L, Control_L ] };
modifier_map Control { <CAPS>, <LCTL> };
};
xkb_symbols "swapcaps" {
replace key <CAPS> { [ Control_L ] };
replace key <LCTL> { [ Caps_Lock ] };
};
La última opción carece de una línea modifier_map, lo que sea que haga
fuente
Respuestas:
Los siguientes comandos deberían funcionar:
o
Los comandos anteriores funcionan bien para restaurar el comportamiento predeterminado, que casi nunca necesito, por suerte.
Normalmente vuelvo a asignar el bloqueo de mayúsculas a Control (por suerte, VI / VIM admite CTRL-C en lugar de ESC) con el siguiente comando:
fuente
Tratar
setxkbmap -option -layout us -variant dvorak-l -option ctrl:swapcaps
Desde la página del manual:
La ironía es que aquí
-option ctrl:swapcaps
realmente anula-option ctrl:nocaps
, supongo que el comportamiento cambió.Editar: como dijo el OP, quiere evitar borrar las opciones (como se hizo en la forma anterior).
/usr/share/X11/xkb/rules/xorg.lst
muestra la opciónctrl:aa_ctrl
(control en la parte inferior izquierda), que parece restablecer el bloqueo de mayúsculas después denocaps
aquí.Supongo que vale la pena intentarlo, y también puede mirar la lista (
grep ctrl\:
) y ver si hay algo más que pueda funcionar, en caso de que no lo haga.Si no hay una opción para esto, supongo que la solución es hackear el mapa de teclas actual, asociando Caps Lock con la tecla Caps Lock nuevamente (pero no tengo experiencia con eso, aparte de creer que hay una herramienta que te permite hacer eso con una sola línea).
fuente
swapcaps
realidad vuelve a habilitar el bloqueo de mayúsculas aquí), pero desde/usr/share/X11/xkb/rules/xorg.lst
, veo que existe la opciónctrl:aa_ctrl
(control en la parte inferior izquierda), que parece restablecer el bloqueo de mayúsculas después denocaps
aquí.xmodmap
pero no estoy muy seguro de cómo usarlohay una opción "mayúsculas: mayúsculas" (que se asigna a agregar "+ mayúsculas (mayúsculas)" a xkb_symbols) que habilita la mayúsculas.
Sin embargo, esa opción (¿quizás todas mayúsculas: xxxxx?) Se agrega antes que las ctrl: xxxxx existentes; como ctrl: swapcaps redefine la tecla de mayúsculas, esa opción no tiene efecto.
Por lo tanto, es absolutamente necesario eliminar todas las opciones y realmente poner las que desee; de la forma en que existen las opciones, se supone que no deshacen la acción de una anterior, y al tener opciones en conflicto (por ejemplo, dos (o más) que redefinen una misma clave) no puede definir su orden.
fuente