In this article the detailed procedure to start xcin and XIM clients is described. For the detailed usage and the configurations in xcinrc, please refer to the document "Usage". ----------------------------- A. Start xcin and XIM client: XCIN-2.5 is a XIM server, so it can only input Chinese characters into XIM clients. Hence when you are going to test it, please be sure that you are using the XIM client to accept the input from it. Some of the detailed operations of several popular XIM clients are described in section B. Here we will use the "testprog" program provided by the xcin-2.5 package as an example to describe the over all procedures. Generally speaking, there are 4 steps to start XIM server (i.e., xcin) and the XIM client: 1. Setting locale: The "locale" stands for the local language environment of your system. You can set it up through the settings of the environment variables. First you have to make sure the locale name of your system, and use it in the following settings. You can use the command "locale -a" or just look into the contents of the directory /usr/share/locale to determine the correct locale name of your system. A usual locale name contains a definite format as following: _. The the Big5 environment usually used in Taiwan area as an example, the locale name might be a little different in different operating systems. The following is a simple list: GNU/Linux and FreeBSD: zh_TW.Big5 HP-UX: zh_TW.big5 where "zh" stands for "Chinese language", "TW" stands for the Taiwan area, and "Big5" or "big5" stands for Big5 character set/encoding. Similarly, for the GB2312 character set/encoding used in Mainland China, the locale name is GNU/Linux: zh_CN.GB2312 Please note that because currently xcin only supports the following character set/encoding: Big5, GB2312, Big5HKSCS (Big5 + Hong Kong extension), GBK so you should not choose the locale name with unsupported encoding name, such as "zh_TW.utf8". The unsupported name cannot work under xcin. After deciding the correct locale name you want, you can begin to set the locale. In the following we take "zh_TW.Big5" locale as an example. There are many ways to do the setting. The simplest one is running these command under a X Window terminal (under sh, ksh, or bash) LANG=zh_TW.Big5; export LANG (under csh or tcsh) setenv LANG zh_TW.Big5 then in this terminal, the whole language environment is changed to zh_TW.Big5, including character set handling (LC_CTYPE), message output (LC_MESSAGES) and other aspects. From now on every program running under this terminal will operate under the zh_TW.Big5 locale as long as it support the I18N standard. If you do not want to switch the whole language environment to zh_TW.Big5, but only want to switch the most important part while the other parts remain in the English environment, you can set like this: (under sh, ksh, or bash) LC_CTYPE=zh_TW.Big5; export LC_CTYPE (under csh or tcsh) setenv LC_CTYPE zh_TW.Big5 This way only the character set handling part will be switched, which should be the kernel part of the all. If you want an I18N program to have the Big5 character set handling ability, you have to setup this part. Furthermore, if you want the message output of the program to be Big5 Chinese, you should also set (under sh, ksh, or bash) LC_MESSAGES=zh_TW.Big5; export LC_MESSAGES (under csh or tcsh) setenv LC_MESSAGES zh_TW.Big5 You can also add the above commands into your $HOME/.profile (for sh, ksh, or bash) or $HOME/.cshrc (for csh or tcsh), then everytime you login these commands will be executed automatically instead of you running them manually. 2. Run xcin program. If success, you will see the following message: ============================================================================ XCIN (Chinese XIM server) version xcin . (module ver: , syscin ver: ). (use "-h" option for help) xcin: locale "zh_TW.Big5" encoding "big5" xcin: XIM server "xcin" transport "X/" xcin: inp_styles: Root OverTheSpot ============================================================================ Please note the last 2 lines and the words inside the quotation. They may be different depending on the locale setting in the previous step. And they are also the hints to start the XIM clients. The meaning of each fields are: locale: The locale name when start up. Here the value is "zh_TW.Big5". encoding: The encoding name of this locale. XIM server: This is the of xcin, and as shown in the message the name is "xcin". Every XIM server will have a unique name to make the connection with the XIM clients. Please note that depending on the locale setting when start up, the value of will be different. transport: The name of the connecting method between XIM server/client. inp_styles: The input styles supported by xcin. As shown in the above, xcin start up with 2 kinds of input styles, i.e., Root and OverTheSpot. The XIM client can choose one of them to make the connection. You can decide which input styles to be brought up by the configurations in the xcinrc file. Please refer to the document "Usage" for details. 3. Before starting the XIM client, you have to set this environment variable: (under sh, ksh, or bash) XMODIFIERS="@im="; export XMODIFIERS (under csh or tcsh) setenv XMODIFIERS "@im=" where is the as described in the above. Take the example of the above, you should have the setting as (under sh, ksh, or bash) XMODIFIERS="@im=xcin"; export XMODIFIERS (under csh or tcsh) setenv XMODIFIERS "@im=xcin" The actual setting value depends on the message you see when starting xcin. Of course, if you can expect what the message of xcin will be, you can also write the above commands into $HOME/.profile or $HOME/.cshrc such that they can be executed automatically when login. 4. Now you can start the XIM client. Please note that some XIM clients might not be so clever to determine the correct input style to make the connection with xcin. If this happens you have to assign the correct input style to the client according to the document of it. Now we take the "testprog" provided in xcin-2.5 package as the example to demonstrate the above procedures. This is a very simple XIM client for test. You can find it under "xcin-2.5/src/util/testprog/" directory. If it is not compiled yet, please type "make" to build it up. If we want to use the "zh_TW.Big5" locale, we can execute the following commands under bash: LC_CTYPE=zh_TW.Big5; export LC_CTYPE xcin & XMODIFIERS="@im=xcin"; export XMODIFIERS ./testprog -fontset "-*-big5-0,-*-iso8859-1" On the other hand, if we want to use "zh_CN.GB2312", the needed commands are LC_CTYPE=zh_CN.GB2312; export LC_CTYPE xcin & XMODIFIERS="@im=xcin-zh_CN.GB2312"; export XMODIFIERS ./testprog -fontset "-*-gb2312.1980-0,-*-iso8859-1" For the detailed usage of testprog, you can run testprog -h and it will print the following messages ======================================================================== Use "-h" option to see help. Usage: testprog -fontset -im -pt Example: export LC_CTYPE=. export LC_MESSAGES=. export XMODIFIERS="@im=". zh_TW.Big5 fontset: "-*-big5-0,-*-iso8859-1". zh_CN.GB2312 fontset: "-*-gb2312.1980-0,-*-iso8859-1". ======================================================================== For the other XIM client, the start up procedures are very similar, so we will not repeat them again. In the following some details of several common used XIM clients are described. --------------------------------------- B. Some details of several XIM clients: In the following we only list the clients which we really tested, but there should be many other XIM clients in the world. If you have experience on other XIM clients, it is welcome to provide us your information, and we are very appreciated to list them in this list. 1. xedit: **************************** Please add the following lines into your $HOME/.Xresources: xtDefaultFontSet: -*-big5-0,-adobe-*-iso8859-1 xedit*international: True xedit*fontSet: -*-16-*-big5-0,-adobe-*-16-*-iso8859-1 .Xedit.shellext.inputMethod: xcin .Xedit.shellext.preeditType: Root and run "xrdb -merge ~/.Xresources" or reenter X Window system. Then use the procedures described in section A to start xcin and xedit. 2. rxvt-2.6.x/2.7.x: **************************** You can find the rxvt in ftp://ftp.rxvt.org/pub/rxvt/ ftp://xcin.linux.org.tw/pub/xcin/rxvt/ The compiling procedures are: For rxvt-2.6.x: a. configure --enable-xim --enable-big5 b. make For rxvt-2.7.x: a. configure --enable-languages --enable-xim b. make Then use the procedures described in section A to start xcin and rxvt. You might need the following options when starting rxvt: For rxvt-2.6.x: rxvt -pt Root -fm -fn For rxvt-2.7.x: rxvt -pt Root -fm -fn \ -km where the could be "big5" or "gb". Most of the rxvt options can also be written in $HOME/.Xresources. For details please refer to the documents provided by rxvt package. PS. RXVT still has several problems to be fixed. For details please refer to http://xcin.linux.org.tw/rxvt/ 3. netscape-4.5/4.6/4.7: ************************ Please add the following lines into your $HOME/.Xresources: Netscape*useStderrDialog: False Netscape*preeditType: OverTheSpot Netscape*fontList: \ -*-helvetica-bold-r-*-120-*-iso8859-1;-*-big5-0: Netscape*XmLGrid*fontList: \ -*-helvetica-medium-r-*-120-*-iso8859-1;-*-big5-0:,\ -*-helvetica-bold-r-*-120-*-iso8859-1;-*-big5-0:=BOLD,\ -*-helvetica-medium-o-*-120-*-iso8859-1;-*-big5-0:=ITALIC and execute "xrdb -merge ~/.Xresources" or reenter X Window system. Then use the procedures described in section A to start xcin and netscape. 4. XEmacs20: **************************** Here we use the xemacs20 package provided by Debian-2.1 as the example. In the Debian distribution there are 3 major xemacs20 packages: xemacs20-mule-canna-wnn_.deb xemacs20-mule_.deb xemacs20-nomule_.deb You have to choose one of them to install. According to the description of these packages, the 1st one supports international character display, and also support the input methods of Asian languages, including XIM. The 2nd one only supports international character display, but does not support any input methods of Asian languages. The 3rd one does not have any support for internationalization. Because xcin-2.5 use XIM protocol, so we have to choose the 1st package (which have the --with-xim=xlib option when configure/compiling). Of course, to install the 1st package you also need to install other related packages. Please see dpkg --info xemacs20-mule-canna-wnn_20.4-13.deb for details. For the other non-Debian systems, I think the methods are very similar. If you build xemacs from the source code by yourself, please remember to add the --with-xim=xlib option when configure. The "mule" package (the internationalization support) might also needed if necessary. If you are using RPM based distributions or FreeBSD, you have to choose the xemacs with mule or XIM supports to install. If your xemacs has been installed correctly, then the remaining thing to do is just do some configurations. You can add this line into $HOME/.Xresources for Big5 environment: Emacs*FontSet: -*-big5-0,-adobe-*-iso8859-1 and run "xrdb -merge ~/.Xresources" or reenter X Window system. Then use the procedures described in section A to start xcin and xemacs. Now you can press trigger keys (default is ctrl+space) to switch to the Chinese input mode, but the characters you input are still not displayed correctly. Then you can use the mouse to choose the following menus: Mule -> Set language environment -> Chinese-BIG5 so that the problem could be solved. If you have experience on other XIM clients, please tell us. We are very appreciated to share your experience with others. --------------------------- C: Other known XIM clients: Here are other known XIM clients which can work with xcin-2.5, but we do not have time to fully test them. The interested people can try. 1. vim-5.4/5.5. 2. GNOME: http://www.gnome.org 3. KDE 2.X: http://www.kde.org 4. Mozilla M16/M17: http://www.mozilla.org T.H.Hsieh