Mandarin characters input via IBus

i’ve installed ibus and a pinyin, configured all the languages i need(chinese, english, russian).
But i do experience an issues with setting up the keyboard shortcuts.
Before having ibus installed i’ve used english and russian layouts and been switching them via left shift+left alt key.
i’ve configured same shortcut in ibus settings and removed this shortcut from system keyboard layout settings, but it just doesn’t work.

Another thing that i’ve noticed that my application shortcuts stopped working(like super+t for terminal or super+e for file manager) once i switch to any other than english language.

Is there a way to get the shortcuts back without having to duplicate them for each language and how to find what blocks shift+alt from switching the locale input method?

Which desktop environment do you use?
If you use GNOME, it would be gnome-control-center keyboard.
If you use other DEs, it would be ibus-setup

And I think your shortcut key cannot be configured with the GUI except for gsettings command directly.

i’ve configured same shortcut in ibus settings

So I wonder if you really configured it correctly and ask your screenshot of your configuration.

Another thing that i’ve noticed that my application shortcuts stopped working(like super+t for terminal or super+e for file manager) once i switch to any other than english language.

Super-4 works to open file manager in GNOME.

I’m using XFCE.
Here are screenshots of both keyboard system keyboard settings and ibus

with such configuration my shortcuts for terminal and file manager are working, shift+alt for switching language not, and i can’t type in russian even if i select it with mouse click

The UI cannot configure modifier + modifier shortcut key and you need to run gsettings command directly.

% gsettings get org.freedesktop.ibus.general.hotkey triggers
% gsettings set org.freedesktop.ibus.general.hotkey triggers "['<Shift>Alt_L']"

Thanks! it partially resolved the issue.

But still there is some kind of a bug of switching between 3 languages.
Basically shift+alt only shifts between 2 of them(english and chinese), once i enable russian with a mouse click it starts shifting between russian and the one that was enabled previously.
I expect it to keep the same order as in settings and loop through all languages, not just back and forth between 2 recent ones.

here are settings of both ibus and system keyboard


And my global shortcuts(like super+E, super+T) are still not working while russian is an active language, i believe it’s because the system catches the “typed” character, rather then key pressed.

I cannot reproduce your problem.
I assume you use XFCE Xorg.

Why don’t you show the screenshot of the shortcut key in ibus-setup after you run the gsettings command.

When you set the Russian engine with IBus, setxkbmap -query command shows the correct layouts.

the shortcut in ibus-setup is correct.

and when the russian engine is on the command shows correct layout

$ setxkbmap -query
rules:      evdev
model:      pc105
layout:     ru,us
variant:    ,

The "<Shift>Alt_R" behavior is not the shortcut key of XKB.
It means Shift-Alt key selects the 2nd engine and Shift-Alt-Alt key selects the 3rd engine and the selected engine will be activated after you release both Shift and Alt keys.

layout:     ru,us

I wanted to check this line. So you can switch engines with Shift-Alt key even if you enable the “ru” layout.

Regarding to Super-e key, it won’t work with “ru” layout. It sends Super-Cyrillic_u key.

You can check it with ibus-setup → Select “General” Tab → Click “…” button in “Next input method” → Show “Select keyboard shortcut” dialog → Click “…” button in “Keycode” → Show “Please press a key” dialog → Click “Disabled” label and type Super-e.
You will see it’s not “e” with “ru” layout.

Thank you! yes, pressing shift+alt+alt indeed allows me to go through all engines.

Tho i’ve noticed that shortcut is only working if some input/textarea field is in focus(which generally isn’t a big problem, just have to get used to it).

regarding the super+e, so the only option is creating additional shortcuts for the “ru” locale, right?

Right, IBus needs the input focus since some input engines require it.

You could compare setxkbmap -layout us and “ru” and “ru,us” layouts with “xev” command.
The normal “ru” layout does not accept Ctrl-c and Ctrl-t but the “ru,us” layout can accept Ctrl-c and Ctrl-t but not Super-c and Super-t. (You may need to disable Super-e for XFCE file manager for “xev” test)
Personally I think “ru,us” layout could support Super-c and you might like to file the RFE.
I’m not sure which module implements it. Maybe you could file for xkbcomp.

Appreciate your help!