Sé que esta pregunta es vieja, pero si alguien vuelve a tropezar con ella, existe una solución alternativa:
setxkbmap -option "lv3:caps_switch"
Para obtener una lista completa de opciones, lea la sección "OPCIONES" de
man xkeyboard-config
Basado en la respuesta de Dennis y jugando con xev
Descubrí que la frase mágica parece ser ISO_Level3_Shift
.
Al menos esto funciona para mí:
xmodmap -e "keycode 66 = ISO_Level3_Shift"
Ahora no corro el peligro de romperme los dedos mientras escribo [, ], {, } y demás en mi diseño de teclado alemán.
Editar: ahora usando la opción -e de xmodmap
La respuesta de Long es la mejor para escritorios modernos como Gnome, porque Gnome en sí usa xkb y sobrescribe las configuraciones de xmodmap de forma predeterminada (además, xmodmap está a punto de desaparecer y no es compatible con Wayland). Desafortunadamente, solo funcionará hasta que se reinicie.
Puede aplicar esta opción de forma permanente para su escritorio Gnome con este comando:
gsettings set org.gnome.desktop.input-sources xkb-options "['lv3:caps_switch']"
Por supuesto, también puede realizar este cambio de forma permanente e incluso en todo el sistema, sin utilizar Gnome. Si usa Gnome, aún debe usar el comando anterior para evitar que Gnome sobrescriba esta configuración. Para Arco , puede agregar un archivo /etc/X11/xorg.conf.d/90-custom-kbd.conf
con el siguiente contenido:
Section "InputClass"
Identifier "keyboard defaults"
MatchIsKeyboard "on"
Option "XKbOptions" "lv3:caps_switch"
EndSection
Supongo que esto difiere entre las distribuciones, por lo que su millaje puede variar.