Is it possible to use terminal commands to switch between keyboard layouts in ibus? I can't see any GUI way to do it in XFCE.

  • Hasn't Xubuntu, if that's what you're using, abandoned ibus in favor of fcitx? – DK Bose May 30 '16 at 16:45
  • @DKBose The default keyboard layout app in XFCE didn't have any option for the keyboard layout I need (phonetic Tamil.) That's why I installed ibus. I have Lubuntu, but I've installed xubuntu-desktop and mostly use that. The only way I've found now is to log out of XFCE, into Lubuntu to switch layout, then back into XFCE. – Revetahw May 30 '16 at 16:57
  • 1
    I admit I do not know if it works in your case --- I have ibus installed but I am not sure I'm using it --- can you try setxkbmap -query when you have the correct layout, and setxkbmap -layout XX -variant YYYYYY -option A:B,C:D to switch? obviously substitute XX, YYY etc. with the output that -query gives to you. – Rmano May 30 '16 at 17:14
  • @Rmano setxkbmap -query tells me that the layout is gb, no matter if I have Tamil or US English active. – Revetahw May 30 '16 at 18:01
  • @Rmano please post your comment as an answer, it actually answers the question posed, which is shown in google not the underlying personal problem of the asker. I needed this to define a custom shortcut for Ctrl+2 to set an often needed language instead of always having to choose in the switching menu shown in the switch-shortcut (super+space for me) – mxmlnkn Feb 12 '17 at 15:36

Actually, ibus provides an system tray applet.

  1. Run ibus-setup
  2. On General tab, Check Show icon on system tray
  3. On General tab, confirm you have shortcut
  4. On Advanced tab,Uncheck Use system keyboard layout

ibus applet

  • 1
    Yes, works quite well, thank you. Just tried it on Lubuntu Xenial while logged into XFCE. – Revetahw Jun 30 '16 at 19:33

It's more related to xkb than to ibus (but I am not sure I completely understand the intricacy of the keyboard handling, as you can see in this post of mine) but you can detect the current configuration with

[romano:~] % setxkbmap -query
rules:      evdev
model:      pc105
layout:     es,gb
variant:    standard_tlde,
options:    caps:none,compose:caps,terminate:ctrl_alt_bksp

note it down, and then use

setxkbmap -layout es -variant standard_tlde -option caps:none,compose:caps,terminate:ctrl_alt_bksp

that you can associate to a key. It should work in all Ubuntu flavors, at least X11-based (no idea about wayland).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.