18.04 – How to Change Language with Ctrl+Shift Shortcut

18.04input-languagekey-binding

Can I use Ctrl+Shift for changing languages? I can't set this hotkey for changing keyboard languages.

At this moment Alt+Shift switch languages, but I can't see this hotkey in keyboard hotkeys list or in

gsettings list-recursively  org.gnome.desktop.wm.keybindings | sort | more

output.

Best Answer

You can set such keyboard shortcut as follows:

  • On Ubuntu 18.04 LTS, 20.04 LTS, 20.10 and 21.04 with GNOME desktop from GNOME Tweaks.

    1. Install it

       sudo apt-get install gnome-tweaks
      
    2. Then open GNOME Tweaks (gnome-tweaks).

    3. Select Keyboard & Mouse tab

    4. Click Additional Layout Options button

    5. Expand Switching to another layout

    6. Select Ctrl + Shift here

    See screenshot below:

    GNOME Tweaks - set <Ctrl+Shift>

    Or simply:

    gsettings set org.gnome.desktop.input-sources xkb-options \
      "['grp:ctrl_shift_toggle']"
    

    If you do not like Super + Space and Shift+Super+Space you can disable them with

    gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['']"
    gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward  "['']"
    gsettings set org.freedesktop.ibus.general.hotkey triggers "['']"
    

    Note: you will face interference problem as Ctrl+Shift+T in GNOME Terminal will switch language at once with opening new tab. It is known bug 1683383.

  • On Ubuntu MATE 18.04 LTS and newer versions this is possible from mate-keyboard-properties:

    1. Open MATE Control Center
    2. Click Keyboard
    3. Go to Layouts tab
    4. Click Options
    5. Expand Switching to another layout
    6. Select Ctrl + Shift here

    See screenshot below:

    MATE Control Center keyboard

    Or simply:

    gsettings set org.mate.peripherals-keyboard-xkb.kbd options \
          "['grp\tgrp:ctrl_shift_toggle']"
    

    Note: here bug 1683383 is fixed by packages from my PPA :

    sudo add-apt-repository ppa:nrbrtx/xorg-hotkeys
    sudo apt-get update
    sudo apt-get dist-upgrade
    

    So Ctrl + Shift keyboard layout switcher will work normally on MATE DE after applying patch from ArchLinux AUR "for freedesktop bug 865 (need to kick hotkeys on release, not press)".

    Warranty disclaimer: packages were tested in

    • 16.04 LTS with HWE (Unity, MATE, Xfce)
    • 18.04 LTS (Cinnamon, KDE, MATE, Xfce)
    • 18.10 (Cinnamon, KDE, MATE, Xfce)
    • 19.04 (Cinnamon, KDE, MATE, Unity, Xfce).
    • 19.10 (Cinnamon, KDE, MATE, Unity, Xfce)
    • 20.04 LTS (Cinnamon, KDE, MATE, Unity, Xfce)
    • 20.10 (Cinnamon, KDE, MATE, Unity, Xfce)
    • 21.04 (Cinnamon, KDE, MATE, Xfce)

    However other desktops may have issues even after applying the patch.
    These packages do not fix problems for GNOME Shell (18.04 LTS, 18.10, 19.04, 19.10, 20.04 LTS, 20.10 and 21.04) and Unity (in 18.04 LTS and 18.10).


If you are interested you can participate in poll and discussion on community.ubuntu.com.

Related Question