You are not logged in.

#1 2015-01-15 04:55:04

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

fcitx driving me to madness

I need English, Japanese, and Chinese input. I had been using Mozc for Japanese for a long time with no trouble and Sogoupinyin for Chinese because the built-in Chinese support does not behave as expected. This worked for several months without issue.

Yesterday I spent a few hours reconfiguring fcitx and trying out different modules. The reason for that was that lately my typing kept being interrupted by random switches to Chinese input, random switches to full-width Romaji (part of Japanese input), and other various insane behaviors.

After a while I determined that mozc was most likely the problem; that it somehow thought the letter "I" and other random capital letters meant it was time to change to full-width characters, or that certain combinations of small letters meant it was time to change to Chinese input, or that we should just start in and have no means of getting out of either Japanese or Chinese input from login....

I removed fcitx-mozc and replaced it with fcitx-anthy.

I also added AutoEnglish, which doesn't actually auto-anything: you have to press tab to get suggestions... it never autocompletes... so I would certainly have at least one functional English input method.

Yesterday, before logging out, my configuration worked astoundingly well.

It was:

Keyboard - Japanese
AutoEnglish
Anthy
Sogoupinyin

with Shift+Ctrl to switch between input methods, no key to trigger input method.

I disabled "use keyboard as input method" and enabled "input method default state active". Since the first input method (suggested to be a keyboard layout) is inactive (and redundantly disabled as an input method)*, this gave me three functional input methods: AutoEnglish, Anthy, and Sogopinyin. And they worked wonderfullly.

Today, when I logged in, input was stuck in Anthy wiith no means to escape. Even the fcitx indicator menu is empty, so I ran fcitx-config-gtk3 from the command line (typing and confirming each character one at a time; "gtk3" randomly activated Chinese input) and found that "Keyboard - Japanese" had been removed from the list.

When I tried to add it back, I found that no new input methods or keyboards can be added because the list is empty! The only reason I am able to type this post is "killall fcitx".

What in the world is wrong with fcitx? Why is the list of available keyboards and input methods empty? Why did "Keyboard - Japanese" disappear?

*There are a number of confounding wordings in fcitx's configuration options. The first input method is never available, but there is a swtich to "use keyboard layout as input method" which is not "Keyboard - Japanese" (or whatever keyboard) in the list of input methods, but an unlisted, additional input method that is identitcal.

Last edited by quequotion (2015-01-15 04:56:27)

Offline

#2 2015-01-15 06:22:07

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: fcitx driving me to madness

well, I deleted the entire ~/.config/fcitx and then "Keyboard - Japanese" and "AutoEnglish" came back, but nothing else.  I was able to add Anthy and Sogoupinyin again....

Disabling "use keyboard layout as input method" is removes the keyboard from the list of input methods at next login.

The keyboard is supposed to be first in the list to provide a base keyboard layout for the other methods; disabling they keyboard input method should only cause it to be skipped over when selecting which input method to use (and that's what it does until logging out...)

"default input method state active" doesn't actually do what it says either. I can't tell what this option does.

Offline

#3 2015-01-15 06:35:19

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: fcitx driving me to madness

Maybe part of the problem here is poor english in fcitx...

the phrase "input method" is inconsistently used to mean anything listed on the first configuration page, anything listed on the first configuration page other than a keyboard layout, or anything listed on the first configuration page after the first item in the list.

If "default input method state: active/inactive" means "first item listed on the first configuration page state active/inactive; even if it's a keyboard layout and not really an input method" and not "input method state active/inactive" then leaving this "inactive", as default, is what I want.

::edit::
if it means "default set of input methods to start in: default/extras" then "extras" (active) is what I want

Still, however it's set it seems that each input method eventually, quietly, crashes back to keyboard layout input.... So one has to specify a key for "trigger input method" (in which the phrase "input method" means "input methods that are not keyboard layouts" or possibly "items listed after the first on the first configuration page")

Last edited by quequotion (2015-01-16 19:05:47)

Offline

#4 2015-01-16 10:38:39

Goresome
Member
From: Russia
Registered: 2011-12-06
Posts: 67

Re: fcitx driving me to madness

I tried to reproduce but couldn't so far. I also dont have "use keyboard as input method" anywhere in config tool. I also have problems in understanding your posts, so here my take:

Everything listed listed in 'Input methods' is input method no matter what it is, they are divided into two groups Active/Inactive, we switch between groups with Super+Space. Items in groups are switchable with Ctrl+Shift, its intended that Inactive group has only one method (first one). 'Default Input Method State' indicates which group will be active by default (so either first or second method).

I have two standard 'Keyboard' methods and 'Kana Kanji', tried shuffling them and Inactive method always works and is never disabled.

Offline

#5 2015-01-16 16:55:06

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: fcitx driving me to madness

Goresome wrote:

"use keyboard as input method"

This is in the "Addon" tab of fcitx-configtool; "Keyboard Layout - Use Keyboard Layout as Input Method"

we switch between groups with Super+Space. Items in groups are switchable with Ctrl+Shift

By "switch between groups" do you mean what fcitx-configtool calls "Trigger Input Method"?

::EDIT::

'Default Input Method State' indicates which group will be active by default (so either first or second method).

Aha... this is what I mean by poor English and inconsistency in fcitx-configtool.....

A few fixes:

The word "Inactive" should be abandoned, as there is no truly inactive state (fcitx is always managing input). When applied to the first input method, "Inactive" should be replaced with "Default" throughout.

The word "inactivate" is not valid, and should be replaced with "deactivate" as in "Use extra trigger key only to deactivate"

"Input Method" when applied to any input methods other than the first in the list (the default method), should be replaced with "Extra Input Methods" throughout.

"Default Input Method State" options should be "Default (Input Method)" / "Extra (Input Methods)"

I can't come up with a good explanation of the "Use Keyboard Layout as Input Method" option. The wording as it is led me to believe I could avoid using the plain keyboard layout as an input method, but it removes all keyboard layouts from the list of available input methods at the next login, which then bumps whatever was the second method into the first slot.... and breaks everything.... and makes it very hard to fix....

Last edited by quequotion (2015-01-16 19:11:23)

Offline

#6 2015-01-18 19:48:02

ConstruKction
Member
Registered: 2014-04-01
Posts: 12

Re: fcitx driving me to madness

Perhaps you could try switching to ibus? I had some problems with it in the past, but nowadays, it seems to work fine.

Offline

#7 2015-01-22 11:34:58

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 813
Website

Re: fcitx driving me to madness

I gave up on ibus because it was unusably unreliable... now fcitx is the same...

Today, without any changes to the configuration or software on the system, fcitx-anthy stopped doing any kind of input conversion.

I can type romaji, and hiragana appear, but no key on the keyboard will commit the hiragana or convert them to kanji. No key will swap them for katakana; no key will do anything whatsoever except the letters and punctuation that just make the input string longer before it finally has to be destroyed by exiting anthy.

What is it with input methods on linux? Why do they always break down over time into some unusable mess? I know Gnome tried pretty hard to shut down everything except Ibus, and broke it too, but seriously; how to CJK and other users achieve reliable input?

Offline

#8 2015-06-26 15:14:08

scottro
Member
From: NYC
Registered: 2002-10-11
Posts: 466
Website

Re: fcitx driving me to madness

I know this is pretty old by now.  For what it's worth, aggravation with ibus on a few systems led me to fcitx, and I'm finding it works fairly well with Japanese.  The various package managers (pacman, yum, FreeBSD's ports) don't do it properly, but once you know where to look, it's been fairly easy.  (For me, at least, using dwm or openbox)

Install it.  Start X and start fcitx then kill it.  Kill X.  Edit $HOME/.config/fcitx/profile and change mozc:False to mozc:True. 

I don't use Gnome so I'm not sure how well that would work with it.  My own experience is that in the early 2000's it took work, in the mid to late 2000's it was trivial, then they started breaking it again, at least for my uses.  (Mostly my own with openbox or dwm or friends of my wife, where I would put Lubuntu on an old machine for them.) 

Anyway, came across this link while googling fcitx and Arch, so as it does come up, I'll spam my own page which has an Arch section.  http://srobb.net/jpninpt.html, even though the thread is several months old.

Anyway, short answer, though the installation tools don't do a great job of configuration, it's easy to do.

Last edited by scottro (2017-02-21 13:24:22)

Offline

#9 2015-06-29 09:26:52

Goresome
Member
From: Russia
Registered: 2011-12-06
Posts: 67

Re: fcitx driving me to madness

pacman won't do your job for you, you still need to set up your envronment. Just follow Arch Wiki. Basically, setting up correct variables in ~/.xprofile is all you have to do for most desktops (KDE5, MATE, xfce, even GNOME 3.16 doesn't bork fcitx).

Offline

#10 2015-06-29 09:47:13

scottro
Member
From: NYC
Registered: 2002-10-11
Posts: 466
Website

Re: fcitx driving me to madness

I also just found out that there's a separate package, fcitx-configtool.  Install it with pacman -S fcitx-configtool, run it, click the plus sign to add languages, uncheck the box to only use current language, then type mozc (or whatever you're using) in the search box. This edits your $HOME/.config/fcitx/profile, avoiding the need to manually configure it.   I go into more detail on my own page at http://srobb.net/jpninpt.html#Arch

Offline

Board footer

Powered by FluxBB