I'm under KDE5 desktop enviorment. I've installed fcitx5 one year ago, everything looks fine until these days after I do 'pkg upgrade', the fcitx5 chinese input can not be activated. So I reinstalled the fcitx5 and the pkg give me information to set the env-vals as follows: export GTK_IM_MODULE=fcitx/xim export QT_IM_MODULE=fcitx export XMODIFIERS='@im=fcitx' I put that's information before the 'exec ck-launch-session /usr/local/bin/startplasma-x11' in ~/.xinitrc file. Now, I can input Chinese characters in firefox, chrome and vscode, but the input box location always stay on the left bottom of these softwares. If I change the first line as: export GTK_IM_MODULE=fcitx then, firefox works fine, the input dialog will follow the cursor inside the controls in firefox UI, but both chrome and vscode can not activate Chinese input method. I ran fcitx5-diagnose, and everything look ok, except some red lines as: (1) **Cannot find fcitx5 input method module for Qt4.** (2) **Cannot find immodules cache for gtk 4** I check this Makefile in the port textproc/fcitx5-gtk, it looks like there is no gtk4-immodule is banned on the last line with CMAKE_OFF=ENABLE_GTK$_IM_MODULE. and I checked the x11-toolkit/gtk40's pkg_plist files, unlike the gtk30, there is no gtk_query_immodules file would build. So, Does this is related with the situation I encountered? If I have to setup the GTK_IM_MODULE=fcitx/xim, how could I get input dialog cursor following in firefox, chrome, vscode? Or, If I set the GTK_IM_MODULE=fcitx, how could I get the Chinese input method works under chrome and vscode? Somebody could help me? Sincerely, Thanks!
This problem have me solved: it looks like we have to do following config to make it working: 1)the ~/.xinitrc file export GTK_IM_MODULE=fctix/xim #you have to set it as fctix/xim instead of fcitx export QT_IM_MODULE=fcitx export XMODIFIERS=@im=fcitx 2)~/.config/fcitx5/conf/xim.conf UseOnTheSplot=False #the default value looks like =True, which makes the preedit dialog always stays on the leftbottom OK, after these 2 changes, now the input method works fine on chrome and vscode.