SCIM is the name of the program that will allow you to input a CJK language in Ubuntu. 1.#1 Open System>Administration>Language Support<>: 2.#2 and install the support package corresponding to the language you want to input<>: 3.#3 under Hardy, Gutsy or Feisty, you will have to check the box at the bottom (Input Method) to activate complex characters input. You might have to uncheck it, click Apply, then check it again and click Apply. 4.#4 then log out (System>Quit>Log Out), and login again. On Ubuntu 8.04 Hardy Heron, you should be able to use SCIM input in any application (go to [[UbuntuHelp:[Using|Using SCIM]]] to learn how to do it). Under previous versions of Ubuntu, if your session is using a CJK language (for example, all your menus are in Chinese, Japanese or Korean) you should be able to do the same (go to [[UbuntuHelp:[Using|Using SCIM]]] to learn how to do it). However, some applications like Skype and aMSN might need [[UbuntuHelp:[SpecialQTApps|a few more steps]]] in order to enable SCIM input.
Under Xubuntu 8.04, you will need to install `scim-bridge-client-gtk` via synaptic in order to successfully check the "Enable support to enter complex characters" option, in the Language Support menu
You should already be able to use SCIM input in a few applications, like gedit (Application>Accessories>Text Editor), by right clicking on the document, then selecting Input Methods>SCIM Input Method. However, it won't work in the others, like Open Office. On Hardy or Gutsy, you might also notice that installing SCIM have broken deadkeys support - for example, you won't be able to type `ï`, because typing the `¨` key before the `i` key will result in `¨i`. Do not worry, the following steps will ensure both deadkeys and SCIM will work together.
If your user interface is English, there is nothing more to do since the `ubuntu-desktop` package already brings `scim-bridge-client-gtk` and `language-selector` setup the use of `scim-bridge` by default. If you are using another interface language (non-English and non-Asian) and SCIM does not appear once you logout and re-login take the following steps: 1.#1 Open a terminal (Applications>Accessories>Terminal)
2.#2 Type :
locale|grep 'LANG='
and hit enter.
3.#3 This will display your locale. For example, Spanish (Spain) is "es_ES.UTF-8"
4.#4 Type
im-switch -z (your_locale) -s scim-bridge
. For example,
im-switch -z es_ES.UTF-8 -s scim-bridge
5.#5 Logout and login, SCIM should now be active.
1.#1 Open System>Administration>Synaptic Package Manager<> and install the package named `scim-bridge` : Alternatively, if you prefer the command line, you can type in a terminal :
sudo apt-get install scim-bridge
If you want to use SCIM input in KDE applications, like Amarok or K3b, you will also have to install the package scim-bridge-client-qt using one of the two aforementioned methods (the package scim-bridge-client-gtk, for Gnome applications, should have been installed automatically along with scim-bridge). 2.#2 Edit the file /etc/X11/xinit/xinput.d/scim by typing in a terminal (Applications>Accessories>Terminal):
sudo gedit /etc/X11/xinit/xinput.d/scim
Change the line :
GTK_IM_MODULE=xim
into :
GTK_IM_MODULE="scim-bridge"
If you want to use SCIM input in KDE applications, you will also have to change the following line :
QT_IM_MODULE=xim
into :
QT_IM_MODULE="scim-bridge"
The resulting file will look like this: Save the file, then to be sure you won't be affected by previous configurations you can delete the folders .scim and .xinput in your home directory. Since they are hidden folder, you can make them appear in Nautilus with the shortcut Ctrl+H. Now restart your computer and you should be done :)
The recommended method to set up SCIM input for all applications is using a command-line tool called `im-switch` (where im stands for Input Method, obviously :) ). Before that, you will have to know the name of the locale you're using. In a terminal (Applications>Accessories>Terminal) type :
locale | grep LANG=
The answer would be something like
LANG=en_GB.UTF-8
where the relevant part is en_GB
(en
standing for English and GB
for the country, here Great Britain). Another example could be fr_FR
(fr
for French and FR
for France). Now you just have to install an additional package called `scim-qtimm` and tell the system you want to use SCIM as the input method for your locale, using
im-switch -z “your locale” -s scim
In the above example, with an en_GB locale, you would type in the terminal :
sudo apt-get install scim-qtimm
im-switch -z en_GB -s scim
Log out, then log in again. SCIM should be now the default input for all applications (go to [[UbuntuHelp:[Using|Using SCIM]]] to learn how to use it) Note for Xubuntu users : On Xubuntu, the system will ask you first to install the package `libapt-pkg-perl`. Install it from Synaptic (see above) or by the command line :
sudo apt-get install libapt-pkg-perl
Then you'll be ready to use im-switch (see just above). In Xubuntu, you will also have to apply the following instructions :
You might have to add your locale as a supported locale, by editing (you might have to create it) the file ~/.scim/global (the ~ means it's in your home directory, the . that .scim directory is a hidden file. Just type in a terminal :
gedit ~/.scim/global
If you can find a line like
/SupportedUnicodeLocales = en_US.UTF-8
add your locale to it after a comma, not forgetting you need to add the full name reported by locale | grep LANG=
after LANG=
. In case of English for Great Britain, your line would look like this one :
/SupportedUnicodeLocales = en_US.UTF-8,en_GB.UTF-8
If the line wasn't there, create it, then save the file. Log out, then log in and you should be able to use SCIM input in every application.
On Edgy (and possibly under Dapper, not tested), after making these changes, some applications (such as Open Office) may fail to start, or may appear to start and then simply die. If you encounter this issue, try using the "scim_xim" option for im-switch instead of "scim", for example:
im-switch -z en_GB -s scim_xim
<>
On Hardy Heron (and possibly earlier versions as well) SCIM will not work on applications compiled with their own version of QT such as Skype or aMSN. To resolve this do the following in addition to the guide above:
sudo gedit /etc/profile
# SCIM
export XMODIFIERS='@im=SCIM'
export GTK_IM_MODULE="scim"
export XIM_PROGRAM="scim -d"
export QT_IM_MODULE="scim"
scim -d
If you haven't already added your locale to /etc/scim/global do that now.
sudo gedit /etc/scim/global
list using comma, for example:
/SupportedUnicodeLocales = fr_FR.UTF-8,en_US.UTF-8
<>
SCIM should now start along with every application. To trigger it, use any of these shortcut keys : Control+Space, Shift+Space, Zenkaku_Hankaku(on Japanese keyboard), Hangul(on Korean keyboard) While inputting, if you want to switch back and forth between your CJK language and your session language, you can just use the shortcut key. Fast and easy!
If you've just done the [[UbuntuHelp:[Quick|Quick setup]]], you just need to go back to System>Administration>Language Support, uncheck both the support package corresponding to the language you want to remove and the box at the bottom (Input Method), then click Apply or Ok. If you've also done other steps to enable SCIM input, try to revert these exact steps. The following methods might help you:
im-switch
to set the input method for your locale to "default", for example: im-switch -z en_GB -s default
~/.xinput.d
directory corresponding to the appropriate locale: rm ~/.xinput.d/en_GB
apt-get remove scim