¿Cómo configurar Deepin Desktop Environment (DDE) para cambiar la distribución del teclado con bloqueo de mayúsculas?

¿Cómo configurar Deepin Desktop Environment (DDE) para cambiar la distribución del teclado con bloqueo de mayúsculas?

Mi sistema es Manjaro Linux. Pero creo que esto no importa.
En el panel de configuración no puedo CapsLockcambiar la distribución del teclado.
Por favor ayuda.

Respuesta1

Instálelo ibusen 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.confpara 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']

información relacionada