An input method platform based upon scim-lib and all-in-one configure GUI.
Table of Contents
skim is an input method platform based upon scim-lib under *NIX (including GNU/Linux and FreeBSD) systems optimized for KDE. It provides a GUI panel (named scim-panel-kde), a KConfig config module and SetupUIs for itself and scim-lib. It also has its own plugin systems which support on-demand loadable actions.
KDE compliant:
Default settings are retrieved from KDE and the GUI honors the KDE/Qt global styles, including but not limited to the apperances colors of widgets and icons;
GUI language is determined by the KDE global setting, rather than LANG (or similar) environment variable, so no matter what your locale is, you can select preferrable user interface language. What's more, skim ships with a bunk of translations, currently including: (Simplified/Tranditional) Chinese, German, Japanese and Korean.
Fully KDE integration: if you close your KDE when skim is still running (given that your KDE is configured to save session when logout), next time you login KDE, skim will get loaded automatically; After installation of skim, you can start it from "KDE Menu->Utilitis->skim"
Fully customizable: a setup GUI is shipped with skim, in which you can modify all settings not only about skim but also scim-lib and most the settings will take efforts immediately without the hassle of restart (now only one rarely used configure can not be changed in skim, see also Q: 4.3. );
Based on modular concept: nearly everything you see are in seperate plugins, so you can configure which one you want. Not specified plugins would not get loaded at all to save your memery; some temporary functions such as configuration dialogs will be loaded on-demand, and will be unloaded automatically when they are no longer needed;
Object Oriented: like any other KDE/Qt application skim is written in C++.
Please download the latest skim 1.0.2 from Sourceforge or Freedesktop.Org.
scim-lib >= 0.99.4, Qt™ >= 3.2.0 and KDE >= 3.2.0 are required to run/compile skim.
After installing skim, you should also install at least an IMEngine (refer to a input method), such as scim-chinese (currently contains the Pinyin IMEngine for Simplified Chinese), scim-tables (contains table-based input methods, such as Wubi, Erbi for Simplified Chinese), scim-hangul (a popular Korean input method), scim-uim (contains a lot of Janpanese IMEngines) or scim-m17n (contains more than 30 input methods for various languages).
If you want to compile skim from source, then please make sure before compiling skim at least the RPMs for scim and scim-devel are installed.
Otherwise, if scim-lib was compiled in your box, you have all necessary files.
If you do not want Gtk2 based original GUI from scim-lib, you can disable them while configure it: after you compile it, you can still install skim. In a word, skim does not depend on original Gtk2 based GUI.
The header files for Qt™ and KDE are also required to compile skim, which are normally included in libqt-devel and libkdecore-devel/libkdelibs-devel RPMs.
If you'd like to compile skim yourself, the following should do it:
%./configure %make #make install
The last command should be executed as root. Should you run into any problems, please report them to the Mailing list.
Before you can use any XIM server in X, your environment must be setup.
First, for Gentoo users, edit the file ~/.xinitrc (if it does not exist, create one), and modify it according to the sample below
export XMODIFIERS=@im=SCIM
export LC_CTYPE="zh_CN.GBK"
export GTK_IM_MODULE=scim
export QT_IM_MODULE=scim
startkde
The 4th line is only necessary if your Qt™ is compiled with
qt-immodule support and
scim-qtimm has been installed. Under Gentoo, please emerge latest Qt with USE="immqt-bc" (or USE="immqt" if you are
willing to recompile all your Qt based applications afterwards) and then emerge scim-qtimm. SuSE will include these by default in the upcoming version.
Please change the locale/encoding (zh_CN.GBK is used in the sample above) according to your favorite. Now available locales/encodings supported by scim-lib are listed below
zh_TW.Big5,zh_TW,zh_HK.Big5-HKSCS,zh_HK,zh_CN.GB18030,zh_CN.GBK,zh_CN.GB2312,zh_CN, ja_JP.eucJP,ja_JP.ujis,ja_JP,ko_KR.eucKR,ko_KR
some of these locales/encodings are not recommended to use, such as zh_CN.GB2312 (please use zh_CN instead), due to bugs in other applications/libraries (Xfree 86 etc.)
Besides all these locales/encodings listed above, most utf8 locales are also support. The built-in support locale only contains "en_US.UTF-8". So if you want to use other utf8 enabled locales (say fr_FR.UTF-8), please follow these procedures:
Procedure 3.1. Enable other utf8 locales in scim/skim
Start skim by
%scim-panel-kde -d -f
Open the configure dialog by selecting the configure action in the right click menu of either the system tray icon or the main window;
Go to Global Settings -> General SCIM;
Check the advanced checkbox;
Replace the content in the combobox of "Supported unicode locales" with fr_FR.UTF-8;
Click the Add button;
Do not forget to click the Apply (or Ok) button finally.
After adding the new utf8 locale, you should see fr_FR.UTF-8 in the drop down menu of Supported unicode locales combobox. Please restart skim after this modification (you can just exit X and reenter).
For Fedora core 1 users, please add the same two export commands as above to the end of file /etc/X11/xinit/xinitrc.d/xinput.
Before trying starting skim, please make sure that scim-lib and scim-panel-gtk are not running; if they are, kill them: first kill scim then scim-panel-gtk as follows:
%killall scim-launcher %killall scim-panel-gtk
Currently, you can use three different methods to start skim:
If you prefer KDE/Qt interface and want scim to use skim as the default panel, please execute.
%scim-panel-kde -d -f
then please open the configure dialog (click the
configure action) and go to
Global Settings -> General SCIM,
change these settings as followings:
Panel Program: scim-panel-kde Config Module: kconfigThese modifications are only required the first time you use skim.
After this modification, scim will know you prefer skim and will use skim automatically. So all you should do to start skim and scim-lib is just
%scim -d
or
%skim -d
(Please see also Q: 4.5. )
If you want KDE invokes skim automatically when KDE session begins, please make sure that under Global Settings -> X Window, Start skim automatically when KDE starts checkbox is selected.
If you only want to use skim occasionally, all you should do to start skim and scim-lib is just
%skim -d
or start it from "KDE Menu->Utilitis->skim"
4.1. | Question: Why do you bother to write skim now that scim-lib already has a Gtk2 based panel? |
Ok, the most important reason is that: Nearly all applications running on my Desktop are KDE/Qt based ones, and scim-lib's panel was the only exception, and it does not fit into the entire K Desktop Environment very well, so I decided to write a KDE/Qt panel for scim-lib. | |
4.2. | Question: scim-lib and skim are loaded successfully, and I can trigger input method and input CJK, but the inputed characters refuse to transfer into target KDE/Qt applications. |
Make sure the XIM Input Style setting of Qt is "Over The Spot". You can change this by invoking "qtconfig", "Interface" tab, at the bottom of this page. | |
4.3. | Question: How can I modify scim-lib specific settings? I can't find them in the configuration dialog. |
Currently skim have almost all scim-lib specific settings in its configuration dialog, with the only exception: the setting UI specific to a generic table is not incorporated. So if you want to modify this kind of configuration, please use scim-setup. You can start it as:
%scim-setup -c kconfig
If skim is your default panel, you can start scim-setup without the parameters ("-c kconfig"). This issue will be solved in skim post-1.0 version when generic table IMEngine is splitted from scim-lib itself. | |
4.4. | Question: Why does the left click menu of the system tray icon contain no input methods? |
No scim backend process is running. You can try
%scim -d
This is probably caused by misconfiguration of scim/skim: please follow the procedures described in Chapter 3 | |
4.5. | Question: What's the difference of skim and scim-panel-kde? |
Before skim 0.9.0, this package was called scim-panel-kde. However, as the package contains more and more functionality beyond just a panel for scim-lib, so I decided to rename it to skim. However, you still can find a program called scim-panel-kde in skim now. The difference between skim and scim-panel-kde is that: no matter what is set in skim config dialog under "Global Settings -> Skim Plugins", the plugin "SCIM Server" won't get loaded by the latter program. In a word, scim-panel-kde is meant to be used by scim-launcher to start skim automatically. (You may want to have a look at the source of scim-panel-kde: it is in fact only a shell wrapper of the real skim program.) |
skim
Program copyright 2004 Liucougar (Liuspider) <liuspider_ZAI_users.sourceforge.net>
Contributors:
scim-lib Core Author: JamesSu <suzhe_ZAI_tsinghua.org.cn>
Art Designer: Kitae <neeum_ZAI_yahoo.com>
Translators:
German : Hendrik Brand <eru_ZAI_gmx.li>, Jan Hefti <j.hefti_ZAI_hamburg.de>
Janpanese : Yukiko Bando <ybando_ZAI_k6.dion.ne.jp>
Korean : Kitae <neeum_ZAI_yahoo.com>
Tranditional Chinese : Jim Huang <jserv_ZAI_kaffe.org>
Documentation Copyright (c) 2004 Liucougar (Liuspider) <liuspider_ZAI_users.sourceforge.net>
This documentation is licensed under the terms of the GNU Free Documentation License.
This program is licensed under the terms of the GNU General Public License.