2

Version: Xubuntu installation.

% cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04 LTS"

% env | grep -E 'XMOD|_IM'
GTK_IM_MODULE=ibus
QT_IM_MODULE=ibus
XMODIFIERS=@im=ibus

im-config prints

Current configuration for the input method:
 * Active configuration: ibus (normally missing)
 * Normal automatic choice: ibus (normally ibus or fcitx or uim)
 * Override rule: zh_CN,fcitx:zh_TW,fcitx:zh_HK,fcitx:zh_SG,fcitx:ja_JP,fcitx:ko_KR,fcitx:vi_VN,fcitx
 * Current override choice:  (en_US)
 * Current automatic choice: ibus
 * Number of valid choices: 3 (normally 1)
The override rule is defined in /etc/default/im-config.
The configuration set by im-config is activated by re-starting X.
Explicit selection is not required to enable the automatic configuration if the active one is default/auto/cjkv/missing.
  Available input methods: ibus fcitx xim
Unless you really need them all, please make sure to install only one input method tool.

Rationale: I have quite some experience with keyboard setups on Xubuntu, but I am getting more and more annoyed by the problems I come across. I do not grasp the concept of "active input method" in fcitx and fcitx randomly began to switch between layout while typing. The lack of documentation made me stop using it. UIM swallows characters in Sublime Text. It will insert those characters few seconds later, when I moved the cursor already. I try to switch to IBus (with mocz for Japanese).

My usecase: I am using en-us (English), "Neo 2" (German) and mocz (Japanese) keyboard layouts in my sessions. I need a simple switch to rotate between these keyboard. I am happy with any setup enabling this.

How to reproduce:

  1. I boot.
  2. I login (keyboard is US, ok)
  3. I confirm that "IBus" was the "Keyboard input method system" during login (visible in "Language support"). Thus, IBus was started properly during the X11 session login.
  4. I open mousepad and type (keyboard is US, ok)
  5. I trigger <Super>+Space to switch to Neo2. See image below. I type (keyboard is US, not ok)
  6. I trigger <Super>+Space to switch to mocz. I type (keyboard is US, not ok)
  7. % setxkbmap -query gives:

    rules:      evdev
    model:      pc105
    layout:     us
    

    and confirms the problem (keyboard is still US, not ok)

  8. gsettings get org.gnome.desktop.input-sources sources gives @a(ss) [] (not sure what this is supposed to tell me, but other threads mentioned it).

  9. I click on the IBus menu in the systray and choose keyboard "German - German (Neo 2)".
  10. I type (keyboard is Neo 2, ok)
  11. % setxkbmap -query gives:

    rules:      evdev
    model:      pc105
    layout:     de
    variant:    neo
    

    and confirms the proper keyboard setup.

  12. I click on the IBus menu in the systray and choose keyboard "Japanese - Mocz". Additionally, I select "Input Mode" "Hiragana" in the IBus menu.

  13. I type (keyboard is still Neo 2, not ok)

IBus keyboard switch menu

My question: I identify several problems, but to reduce it to a single question: I think xfce4-xkb-plugin (US-only after login) interferes with IBus (US + Neo2 working) after X11 session login. How can I disable this interference? (xfce4-xkb-plugin has only an US-keyboard registered and "Layout" is actually set to "Use system defaults")

  • Can you edit your question and show us the output of env | grep -E 'XMOD|_IM' – Gunnar Hjalmarsson Jun 2 '18 at 20:23
  • Assuming that im-config is installed, I'd have expected two more variables, but the most important ones seem to be correctly set. Are the packages ibus-gtk and ibus-gtk3 installed? (Trying to figure out why you failed to enable Hiragana input.) – Gunnar Hjalmarsson Jun 2 '18 at 21:27
  • @GunnarHjalmarsson Yes, I added the im-config output in an edit. No, neither. Should I? – meisterluk Jun 2 '18 at 22:25
  • Yes, I think those might be important. – Gunnar Hjalmarsson Jun 2 '18 at 22:41
  • @GunnarHjalmarsson Would you mind making an answer out of this comment? This is the solution. Everything works fine now. – meisterluk Jun 2 '18 at 23:41
2

The discussion in comments clarified that the packages ibus-gtk and ibus-gtk3 were not installed. They are important for making IBus work properly with Gtk applications.

In Ubuntu, where IBus is installed by default, these packages are always present (since they are recommended by the ubuntu-desktop package):

  • ibus
  • ibus-gtk
  • ibus-gtk3
  • ibus-table

So in short: Install at least ibus-gtk and ibus-gtk3.

  • I can use all three keyboards right after login and Hiragana characters also show up. Thank you! :) – meisterluk Jun 3 '18 at 6:22

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.