After 29 days on Linux Mint Xfce I have finally solved my Russian and Esperanto typing needs; also, a quick guide on how to make Mozc NOT start in direct input when using IBus.
After 29 days on Linux Mint Xfce I have finally solved my Russian and Esperanto typing needs; also, a quick guide on how to make Mozc NOT start in direct input when using IBus.
The fact that it took 29 days for me to solve this issue is not a testament to the difficulty of this task so much as it is a testament to my ability to procrastinate.
The ideal for my Russian typing needs would've of course been to just set up my custom Russian keyboard layout that I used on Windows, such that I wouldn't have to retrain my muscle memory, but given that I still don't know of a Linux equivalent to MSKLC, I've managed to find the next best thing, which is this:
Setting up IBus, m17n, and the "ru-translit" Russian IME and "eo-x-sistemo" Esperanto IME, incl. troubleshooting
First of all, I went to "input method" from the start menu^[Is it OK to call it a start menu? You know what I'm talking about, anyways.] and set the framework to IBus. Then I went into the software manager — which you can also find from the start menu — and searched for, clicked on and installed IBus-m17n (note: that's a capital I/i, not a lowercase L/l). Then I restarted my computer.
After this, I found IBus preferences from the start menu and first of all set the keyboard shortcut for "next input method" to
<Control>
space rather than<Super>
space mostly just for familiarity. Then I went into the Input Method tab and clicked add → Russian → ru-translit (m17n). While I was in the Input Method tab, I also clicked add → [three dots for "more"] → Esperanto → eo-x-sistemo (m17n).ru-translit mostly worked "out of the box" for me, except that I couldn't type the hard sign despite following the instructions. The instructions say to write a ~ to make a hard sign, but rather than the tilde converting to a hard sign, for me typing a tilde would just type a, well, tilde. I ended up solving this tilde issue by going into IBus preferences again, going to the Input Method tab again, clicking on "Russian - ru-translit (m17n)" from the list of input methods, then clicking "preferences", and then checking off "Use US keyboard layout".
My physical keyboard is of course a Norwegian keyboard with its ÆØÅ and completely different placements of non-basic punctuation compared to a US keyboard, but nevertheless setting ru-translit to use a US keyboard layout meant that I could finally type a hard sign and a soft sign by hitting the keys which for me would normally be | and § — but are evidently where you'd find ' and ~ on a US keyboard.
The "Use US keyboard layout" setting does end up meaning that some rarer punctuation is in unusual places when I'm using ru-translit, but I'm fine with either memorizing the locations of these punctuation marks, or just switching back to my usual Norwegian keyboard layout to type punctuation before switching back to ru-translit.
Setting up and fixing the "Mozc" Japanese IME for IBus
I already had Mozc installed since my first day on Linux, albeit using the Fcitx framework rather than IBus. Assuming you don't have Mozc already installed: open up Input Method from the start menu, click "Japanese", and install the language support packages by following the instructions there. Make sure your input method framework is set to IBus rather than Fcitx since otherwise you don't need this guide. Restart your computer.
After this, open up IBus Preferences and go to the Input Method tab as in the previous section and click Add → Japanese → Mozc.
Anyways, after I got Mozc for IBus set up, I discovered this peculiar fact about the IME: when using IBus, when you switch to Mozc, the IME will by default start disabled (i.e. in "direct input" mode for writing Romaji). Now this is of course poopy and nonsensical because normally when you switch to a Japanese IME you're doing it because you want to type in freaking Japanese, and while I could of course fiddle around in Mozc's settings and find some keyboard shortcut for enabling the IME... Using two keyboard shortcuts in a row just to type Japanese is tedious and poopy. And so I found a way to make Mozc start enabled as God intended.
The process is somewhat more involved than it should be, but still fairly easy. It also apparently only works in newer versions of Mozc ("new" as in "versions since a few years ago"). The process is as follows:
I opened up my file manager (Thunar, the default one). Then I clicked on "View" and checked off "show hidden files". From my home directory (the one with your username) I navigated to .config → mozc, and found the file ibus_config.textproto. I double clicked on this file to open it in my default text editor.
At the very bottom of this text file were the words active_on_launch: False. I erased the word False and replaced it with the word True, then saved the text file and closed it. Then I restarted my computer again.
Conclusion
Lo and behold, I can now type Norwegian, Russian, Japanese, and Esperanto on my computer without much issue. The Russian IME has some muscle memory I need to unlearn, but all in all it's a pretty intuitive IME (you type the letters y-a to get я, etc), and it's pretty close to what I'm used to as someone who has always sworn by Cyrillic keyboard layouts based on the letters' Latin equivalents in QWERTY. ru-translit is the sort of thing I would've made if I didn't have to work within the limits of MSKLC on Windows, although I still think my own custom keyboard layout is the superior Cyrillic keyboard layout. Alas, ru-translit will have to do, for now.
In any case, if any of you have had any trouble setting up keyboard layouts or input methods on Linux Mint, I hope this lengthy rambling post can be of some use to you.