LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 999|回复: 1

关于fcitx和scim的启动

[复制链接]
发表于 2005-9-28 06:45:18 | 显示全部楼层 |阅读模式
在输入法版和这里看到不少同学和我一样,对配置fcitx和scim有点模糊。总是出现出现输入法的图标却无法使用的情况。下面我对我阵子折腾这两个输入法的体会跟大家分享一下:)

这两个输入法的共同点是都需要设定 XMODIFIERS 这个环境变量,而且都需要在 X 启动配置中设置,如果只写在 .bashrc 中是不起作用的,因为当 X 启动时并不读取这个文件。

X 的启动不外乎这几种方式: startx, kdm, gdm, xdm,,所以,输入法的设置就需要从这几种 X 管理的方式着手。

1. 对于 startx
    这个比较简单,只需要设置用户目录下的 .xsession 就可以了,下面的是我的一个例子:
        export XMODIFIERS="@im=SCIM"
        scim -d
        #export XMODIFIERS="@im=fcitx"
        #exec fcitx &
        exec x-session-manager
    注意 scim 和 fcitx 的启动方式的不同,而且,根据scim官方网站的提示,这里的SCIM是需要大写的!

2. 对于 kdm
    kdm的配置文件在/etc/kde3/kdm/kdmrc,其中有这段配置:
        # Default is "/usr/X11R6/bin/xterm -ls -T"
        Session=/etc/kde3/kdm/Xsession
    然后查看/etc/kde3/kdm/Xsession,其内容为:
        #! /bin/sh
        # Xsession - run as user
        # invoke global X session script
        . /etc/X11/Xsession
    可见,其启动脚本为/etc/X11/Xsession
    在这个文件中可以看到,启动
        SESSIONFILES=$(run-parts --list $SYSSESSIONDIR)
        if [ -n "$SESSIONFILES" ]; then
          for SESSIONFILE in $SESSIONFILES; do
            . $SESSIONFILE
          done
        fi
    这里的SYSSESSIONDIR就是/etc/X11/Xsession.d/目录,这个下面有几个以数字开头的文件,前面的数字就是他们的启动顺序,其中一个文件为:
        30xfree86-common_xresources
    其中有这样的脚本:
        if grep -qs ^allow-user-resources "$OPTIONFILE"; then
          if [ -f "$USRRESOURCES" ]; then
            xrdb -merge $USRRESOURCES
          fi
        fi
    这里的USERRESOURCES在前面的Xsession中是这样定义的:
        USRRESOURCES=$HOME/.Xresources
    所以,对于kdm来说,配置文件是家目录下的 .Xresources文件。只要把下面的脚本写在这里就可以了:
        export XMODIFIERS="@im=SCIM"
        scim -d
        #export XMODIFIERS="@im=fcitx"
        #exec fcitx &
        exec x-session-manager

3. gdm
    gdm的配置文件在/etc/gdm,由类似于分析上面kde的方式,最后发现它的配置文件是 $HOME/.xsession

4. xdm
    这个没有用过,方法应该类似。

5. 小结
    上面这些是困扰了好久之后静下心来慢慢找出来的。由于大家使用的发行版本不同,配置文件的形式也会有所变化,需要自己动手试试,多发现一下。俗语说的好:纸上得来终觉浅,决知此事要躬行。自己的理解还是需要自己动手才知道。很多时候,官方网站上的安装教程对于自己也往往未必适用,这个时候就需要自己动动脑筋了:)
发表于 2005-9-28 08:24:31 | 显示全部楼层
呵呵,现在fcitx3.2根本不用这么麻烦了
只要apt-get install im-switch
就会自动启动了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表