Mi sistema es Manjaro Linux. Pero creo que esto no importa.
En el panel de configuración no puedo CapsLock
cambiar la distribución del teclado.
Por favor ayuda.
Respuesta1
Instálelo ibus
en su sistema.
Ejecútelo en algún script de inicio:
ibus-daemon -drx
Ahora un pequeño truco. Cuando vincula Caps_Lock para cambiar el diseño, las mayúsculas y minúsculas también cambiarán. Para evitar este comportamiento, necesita la opción Map Caps. Una única solución:
setxkbmap -option 'lv3:caps_switch_latch'
Vaya a las preferencias de ibus para cambiar los diseños y accesos directos requeridos. Cuando presionaste Mayúsculas, se definió como ISO_Level3_Shift
. ¡Todo está hecho!
NOTA:
Editar /etc/X11/xorg.conf.d/00-keyboard.conf
para la opción xkb persistente
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbOptions" "lv3:caps_switch_latch"
EndSection
ACTUALIZACIÓN:
Después de un tiempo, encontré otras dos formas, basadas en un oyente de teclas de acceso rápido independiente. El primer enfoque utiliza xbindkeys y xdotool, tiene un retraso.
; layout
(xbindkey '(release "c:66") "xdotool key Super_L+space")
En segundo lugar a través de D-Bus en lugar de xdotool, lo describióaquí
#!/bin/sh
LANG=$(dbus-send \
--type=method_call \
--print-reply=literal \
--dest=com.deepin.daemon.InputDevices \
/com/deepin/daemon/InputDevice/Keyboard \
org.freedesktop.DBus.Properties.Get \
string:"com.deepin.daemon.InputDevice.Keyboard" \
string:"CurrentLayout" | awk '{print $2}')
if [[ $LANG = 'us;' ]]; then
dbus-send \
--type=method_call \
--dest=com.deepin.daemon.InputDevices \
/com/deepin/daemon/InputDevice/Keyboard \
org.freedesktop.DBus.Properties.Set \
string:"com.deepin.daemon.InputDevice.Keyboard" \
string:"CurrentLayout" \
variant:string:"ru;"
else
dbus-send \
--type=method_call \
--dest=com.deepin.daemon.InputDevices \
/com/deepin/daemon/InputDevice/Keyboard \
org.freedesktop.DBus.Properties.Set \
string:"com.deepin.daemon.InputDevice.Keyboard" \
string:"CurrentLayout" \
variant:string:"us;"
fi
Respuesta2
Abra dconf-editor
, navegue hasta la tecla de diseño de interruptor para profundizar (debería ser /com/deepin/dde/keybinding/system/switch-layout
) y configúrela en['Caps_Lock']