{{{ IN PROGRESS }}} '''A simple method to set up SCIM in each release of Ubuntu is detailed at [[https://help.ubuntu.com/community/SCIM|community/SCIM]] ''' NOTE : This documentation is aimed at helping users under various locales input CJK(Chinese, Japanese and Korean) with SCIM. And, user experiences here are based on Ubuntu 6.06 - Dapper Drake - version. === Dependent Packages === ||Language||Default Input Method(s)|| ||Simplified Chinese (zh_CN)||scim-pinyin|| ||Traditional Chinese: Taiwan (zh_TW)||scim-chewing|| ||Traditional Chinese: Hong Kong (zh_HK)||scim-tables-zh|| ||Japanese (ja_JP)||scim-anthy|| ||Korean (ko_KR)||scim-hangul|| * scim/skim is default Input Method for Ubuntu/Kubuntu CJK users. * scim and scim-gtk2-immodule are installed by ubuntu-desktop. * skim and scim-qtimm are installed by kubuntu-desktop. * Defaulted IM engine module(s)(ie, scim-chewing, scim-pinyin, scim-anthy, or scim-hangul) is installed by language-support-??(ie, language-support-zh, language-support-ja, or language-support-ko) for CJK languages. * im-switch is installed by language-support-??. * Additional installation of scim-related packages (This section is based on Dapper Beta version.) * For Chinese input : * For Japanese input : * For Korean input : 1. scim-tables-ko is not required to install. 1. scim-qtimm may need to be installed if users want to input Korean with QT/KDE applications under ubuntu-desktop. 1. Same way, scim-gtk2-immodule (plus scim) may need to be installed for GTK/Gnome applications under kubuntu-desktop. === SCIM Setup === The followings are for GTK/QT_IM_MODULE with scim ((ie, GTK_IM_MODULE=scim), if you prefer to set GT/QT_IM_MODULE with xim, please refer XIM mode below. * Dapper's method : This is automatically set for CJK languages if you choose one of them at installation. * scim in Dapper is supported by im-switch. /etc/X11/xinit/xinput.d/scim file looks like {{{ # im-switch configuration file for scim # should be installed as /etc/X11/xinit/xinput.d/scim # this configuration uses GTK IM module and Qt IM module provided by SCIM # exported enviroment variables XMODIFIERS="@im=SCIM" GTK_IM_MODULE="scim" QT_IM_MODULE="scim" # command and arguments to invoke scim XIM_PROGRAM="/usr/bin/scim" XIM_ARGS="--daemon" # package dependency (note that the format used here is not environment # variable, but some format for libapt-pkg-perl and is parsed by grep, # so can't be quoted, and no spaces allowed) DEPENDS=scim-gtk2-immodule,scim-qtimm }}}, and this setup is called by /etc/X11/Xsession.d/90im-switch . * scim-im.org's method : create 75scim file under /etc/X11/Xsession.d/ with following lines (''if you have 90im-switch, better to remove it for this setup'') {{{ export XMODIFIERS="@im=SCIM" export XIM_PROGRAM="/usr/bin/scim -d" export GTK_IM_MODULE=scim export QT_IM_MODULE=scim }}} * User own setup (User-B and User-C in below need one of these.) * With im-switch installed, type im-switch command in the usage of "im-switch [-z ] -s " at the terminal prompt (''do not with root'') so it looks like, for example, : {{{ im-switch -z en_US -s scim-hangul }}} which creates ~/.xinput.d/en_US link to /etc/X11/xinit/xinput.d/scim . * Without im-switch installed (''do one of these upon your situation or preference'') i. System-wide : same as scim-im.org's method i. Of course, you can create a link to /etc/X11/xinit/xinput.d/scim by hand (''do not with root'') like this {{{ ln -s /etc/X11/xinit/xinput.d/scim ~/.xinput.d/default }}} or (''use your LANG instead'') {{{ ln -s /etc/X11/xinit/xinput.d/scim ~/.xinput.d/en_US }}} i. For gnome desktop, create (or add) the following lines to ~/.gnomerc file {{{ export XMODIFIERS="@im=SCIM" export XIM_PROGRAM="/usr/bin/scim -d" export GTK_IM_MODULE=scim export QT_IM_MODULE=scim }}} i. For kde desktop i. If you want to use skim under Gnome desktop, your ~/.scim/global file should have "/DefaultConfigModule = kconfig" and "/DefaultPanelProgram = /usr/bin/scim-panel-kde" so it looks like: {{{ /DefaultConfigModule = kconfig /DefaultKeyboardLayout = US_Default /DefaultPanelProgram = /usr/bin/scim-panel-kde /SupportedUnicodeLocales = en_US.UTF-8 }}} * After your setup, restart at least your X session. (ctrl-alt-backspace!) === Users === * User-A : Users use one of CJK locales (zh_CN.UTF-8, zh_TW.UTF-8, ja_JP.UTF-8, ko_KR.UTF-8, zh_HK.UTF-8) * User-B : Users use en_US.UTF-8 * User-C : Users use one of other locales than en_US.UTF-8 and CJK locales === Setup Shortcut === ||Desktop||User||Setup|| ||<|3>Ubuntu||User-A||scim should work out of the box.|| ||User-B||Do one of User own setup above, use of im-switch is recommended.|| ||User-C||Follow User-B's case and check supported locale in ~/.scim/global file in addition.|| ||<|3>Kubuntu||User-A||skim should work out of the box.|| ||User-B||Do one of User own setup above, use of im-switch is recommended. And, for skim, check /DefaultConfigModule and /DefaultPanelProgram in ~/.scim/global file in addition.|| ||User-C||Follow User-B's case and check supported locale in ~/.scim/global file in addition.|| === Input Details === * Trigger keys : Control+space, Shift+space, Zenkaku_Hankaku(on Japanese keyboard), Hangul(on Korean keyboard) * ''(maybe scim/skim's tray icons here)'' * ''(maybe scim/skim configuration UI screenshot here)'' * Chinese * Japanese * Korean * For Korean input, there are several different types of keyboard layout (virtual for Input Method) called "beolsik". If you are learning Korean this Ubuntu forum thread may help your understanding of them. [[http://www.ubuntuforums.org/showthread.php?t=159352|how to write Korean?]] === XIM mode === * /etc/X11/xinit/xinput.d/scim_xim file has these contents. {{{ # im-switch configuration file for scim # should be installed as /etc/X11/xinit/xinput.d/scim_xim # this configuration uses XIM # exported enviroment variables XMODIFIERS="@im=SCIM" GTK_IM_MODULE="xim" QT_IM_MODULE="xim" # command and arguments to invoke scim XIM_PROGRAM="/usr/bin/scim" XIM_ARGS="--daemon" # package dependency (note that the format used here is not environment # variable, but some format for libapt-pkg-perl and is parsed by grep, # so can't be quoted, and no spaces allowed) DEPENDS= }}} * As compared to scim file, GTK_IM_MODULE and QT_IM_MODULE are set to xim, and no DEPENDS which means scim-gtk2-immodule and scim-qtimm not required to install. * Ubuntu Dapper sets both IM_MODULE with scim as default so scim/skim with xim is user own setup. * To set scim/skim with xim, choose one of ways in SCIM Setup. Be careful with replacing scim with xim and linking to scim_xim instead of scim file. === Troubleshooting === * Most importantly, upgrade scim/skim and IM engine module you need to up-to-date Dapper's version. * To check scim/skim related packages installed, {{{ dpkg -l scim* | grep ii }}} and {{{ dpkg -l skim }}} * To check scim/skim running, {{{ ps -A | grep scim }}} for ubuntu-desktop and {{{ ps -A | grep skim }}} for kubuntu-desktop * To check scim/skim related env vars, {{{ env | grep IM_MODULE --> QT_IM_MODULE=scim, GTK_IM_MODULE=scim }}} and {{{ env | grep XIM --> XIM_PROGRAM=/usr/bin/scim -d}}} and {{{ env | grep XMOD --> XMODIFIERS=@im=SCIM}}} * To check supported locale for scim, {{{ cat ~/.scim/global }}}, then take a look at /SupportedUnicodeLocales, if your locale isn't there add it to the line with comma like as {{{ /SupportedUnicodeLocales = en_US.UTF-8,en_UK.UTF-8 }}} === Useful Links === * CJK LoCoTeam's webforum, mailing list, and irc channels found on [[ChineseTeam]], [[JapaneseTeam]], and [[KoreanTeam]] wiki pages. * When you report a bug of scim/skim to [[https://launchpad.net/malone|Malone]], subscribe [[https://launchpad.net/people/ubuntu-cjk-testers|Ubuntu CJK Testers]]. ''You may get help quicker if do so'' :) === Comments === * I had some troubles after the upgrade, so I had to remove some packages and reinstall them for Kubuntu to work. Here is the list of packages to install: {{{ aptitude install language-pack-ja language-pack-kde-ja kde-i18n-ja scim-anthy scim-tables-ja skim im-switch scim-qtimm skim scim-anthy}}} # and including the dependencies it will install the following:{{{ im-switch kde-i18n-ja language-pack-ja language-pack-ja-base language-pack-kde-ja language-pack-kde-ja-base language-support-ja mozilla-firefox-locale-ja-jp scim scim-anthy scim-gtk2-immodule scim-modules-table scim-qtimm scim-tables-ja skim thunderbird-locale-ja}}} Hope this helps some people --PeterAntoniac