Difference between revisions of "Fcitx"

From ArchWiki
Jump to: navigation, search
(Using FCITX to Input)
Line 8: Line 8:
 
==Using FCITX to Input==
 
==Using FCITX to Input==
 
Before you can make use of FCITX for input, you have to setup some environment variables.  It is quite simple.
 
Before you can make use of FCITX for input, you have to setup some environment variables.  It is quite simple.
*Open the {{ic|.xprofile}} or (.profile?) file in your home directory and add following lines:
+
*Opening the {{ic|.xprofile}} (or {{ic|.profile}} depending on the desktop environment and display manager you are using) file in your home directory and add following lines:
 
   #setup XIM environment
 
   #setup XIM environment
 
   export GTK_IM_MODULE=xim
 
   export GTK_IM_MODULE=xim
Line 14: Line 14:
 
   export XMODIFIERS="@im=fcitx"
 
   export XMODIFIERS="@im=fcitx"
  
Since 4.1.0, Fcitx provides it's own input method module, {{Pkg|fcitx-gtk2}}, {{Pkg|fcitx-gtk3}}, and {{Pkg|fcitx-qt}}. It's recommend to use input method module instead of xim directly, in order to resolve strange bugs brings XIM.
+
Since 4.1.0, Fcitx provides it's own input method module, {{Pkg|fcitx-gtk2}}, {{Pkg|fcitx-gtk3}}, and {{Pkg|fcitx-qt}}. It's recommend to use input method module instead of xim directly, in order to resolve strange bugs brought by XIM.
  
 
You can set corresponding environment variables
 
You can set corresponding environment variables
Line 20: Line 20:
 
   export QT_IM_MODULE=fcitx
 
   export QT_IM_MODULE=fcitx
  
In order to use Fcitx input methdo module, you also need [[DBus]] startup correctly.
+
*Re-login to make such environment effective.
  
*Re-login to make such environment effective.
+
If you are using any XDG compatible desktop environment such as [[KDE]], [[GNOME]], [[XFCE]], [[LXDE]], after you relogin, the autostart should work out of box. If not, open your favorite terminal, type:
 
+
After you re-login, open your favorite terminal, type:
+
  
   fcitx &
+
   fcitx
  
To see if fcitx is working correctly, open an application such as leafpad and press CTRL+Space to invoke FCITX and input some words.
+
To see if fcitx is working correctly, open an application such as leafpad and press CTRL+Space(the default shortcut for switching input method) to invoke FCITX and input some words.
  
If everything goes well, you may want to start FCITX automatically whenever you start X.
+
If everything goes well, you may want to add fcitx to your {{ic|.xinitrc}} file (see [[xinitrc]]) if the xdg autostart doesn't work for you:
  
Open the {{ic|.xinitrc}} file (see [[xinitrc]]) in your home directory, add line before starting your WM:
+
   fcitx -r
 
+
   killall fcitx
+
  fcitx &
+
 
+
That is it.
+
 
+
If you use any type of XDM (gdm for example), you should set up such environment in {{ic|~/.profile}} instead of above two files.
+
  
 
Enjoy!
 
Enjoy!

Revision as of 00:12, 17 October 2012

FCITX (Flexible Input Method Framework) is a input method framework aiming at providing environment independent language support for Linux.

Installation

fcitx can be installed with Pacman from the [extra] repository.

Using FCITX to Input

Before you can make use of FCITX for input, you have to setup some environment variables. It is quite simple.

  • Opening the .xprofile (or .profile depending on the desktop environment and display manager you are using) file in your home directory and add following lines:
 #setup XIM environment
 export GTK_IM_MODULE=xim
 export QT_IM_MODULE=xim
 export XMODIFIERS="@im=fcitx"

Since 4.1.0, Fcitx provides it's own input method module, fcitx-gtk2, fcitx-gtk3, and fcitx-qt. It's recommend to use input method module instead of xim directly, in order to resolve strange bugs brought by XIM.

You can set corresponding environment variables

 export GTK_IM_MODULE=fcitx
 export QT_IM_MODULE=fcitx
  • Re-login to make such environment effective.

If you are using any XDG compatible desktop environment such as KDE, GNOME, XFCE, LXDE, after you relogin, the autostart should work out of box. If not, open your favorite terminal, type:

  fcitx

To see if fcitx is working correctly, open an application such as leafpad and press CTRL+Space(the default shortcut for switching input method) to invoke FCITX and input some words.

If everything goes well, you may want to add fcitx to your .xinitrc file (see xinitrc) if the xdg autostart doesn't work for you:

 fcitx -r

Enjoy!

Configuration

Fcitx provides GUI configure tool since version 4.0. You can install either kcm-fcitxAUR(based on kcm), fcitx-configtoolAUR(based on gtk3), or fcitx-configtool-gtk2AUR(based on gtk2, unsupported) from AUR. Editing the configure file manually is possible but is not supported anymore and may cause trouble.

Autostart with desktop

Gnome-Shell Integration

You can install gnome-shell-extension-kimpanel-gitAUR package in AUR, which provides a similar user experience as ibus-gjs.

KDE Integration

You can install kcm-fcitxAUR package in AUR and kdeplasma-addons-applets-kimpanel.

kcm-fcitx is a kcontrol module for fcitx.

kdeplasma-addons-applets-kimpanel is a plasmoids, that provides native feeling under kde desktop. Simply add kimpanel to plasma and fcitx will automatically switch to it without extra configuration.

XDG compatible environment

You can copy /usr/share/applications/fcitx.desktop to ~/.config/autostart/, under KDE, GNOME, XFCE, , LXDE, or any other XDG compatible environment.

startx

You can put fcitx inside your .xinitrc, and set corresponding environment variable mentioned above in ~/.xinitrc.

If you want use input method module, make sure dbus is started before you start everything, if you are not sure, add

 eval `dbus-launch --sh-syntax --exit-with-session`

to the head of .xinitrc.

Install other components of fcitx

All components of fcitx will requires fcitx to restart after install.

Keyboard layout integration

fcitx-keyboard is now built-in supported. Open a configuration tool (kcm-fcitxAUR or fcitx-configtoolAUR mentioned above), you might want to uncheck the "Show only current language" and find your keyboard layout.

If you want to runtime spell checking when typing, you can install aspell-* or hunspell-* package. In order to enable spell checking, press ctrl + alt + h when fcitx is on a input method provides by fcitx-keyboard. Then that's it, you can type long word, to see whether it works.

Chinese Input

fcitx built-in provides fcitx-pinyin and fcitx-table inside fcitx package, which supports Pinyin and table-based input method, for example, Wubi.

If you want better support for pinyin, you can install, fcitx-cloudpinyinAUR, fcitx-sunpinyinAUR, fcitx-libpinyinAUR or fcitx-googlepinyinAUR, all in AUR.

If you need Bopomofo support, you can install fcitx-chewing-gitAUR or fcitx-libpinyinAUR in AUR.

If you need Cangjie, Zhengma, Boshiamy support, you can install fcitx-table-extraAUR in AUR.

Japanese Input Method

Install mozc-fcitxAUR in AUR.

Korean Input Method

Install fcitx-hangulAUR in AUR.

Other language

m17n provides quite a long other language support, you can install m17n support for fcitx with fcitx-m17nAUR in AUR.

Troubleshooting

CTRL+Space does not work

If you cannot invoke FCITX by pressing the CTRL+Space keyboard combination, but FCITX runs in background without problem, please check your locale, and make sure your locale is un-commented in /etc/locale.gen.

See also