首次是使用gentoo, 对她的一些默认配置不是很熟悉, 在此做个记录.
装上kdm后, 自动启动到桌面, 但是无法自动启动输入法.
在/etc目录下没有发现kdmrcwenjian,
在/etc/X11下也没有发现Xsession.d文件(ubuntu的Xsesstion启动script是放在这个位置的).
这样就需要重新了解kdm的启动顺序了.
1. /etc/init.d/xdm 这个文件是控制kdm start, stop, restart.
查看该文件, 从start()中得知 它执行了/etc/X11/startDM.sh
2. 阅读/etc/X11/startDM.sh, 该文件主要就是负责真正启动kdm.
(在这个文件就可以启动一些程序了, 但是这儿是以root用户启动的.而fcitx最好是用user来启动. 所以放弃这儿)
现在就只有研究kdm的初始化过程.
参考链接:
这个链接中有提到kdm在启动过程中执行哪些文件, 以那个用户执行的. 这个对后面修改配置文件很重要, 请认真阅读.
后在用全局搜索发现kdm使用的kdmrc居然在/usr/share/config/kdm目录下, 我很是郁闷.
该目录下Xstartup是以当前user运行的, 输入法的启动script放在这正合适. 考虑到以后其他的script也要放在这儿,借用了ubuntu下的配置方式. 在Xstartup中加入
[ft=,0,51)]SYSSESSIONDIR=/etc/X11/Xsession.d
[ft=,0,51)]SESSIONFILES=$(run-parts --list $SYSSESSIONDIR)
[ft=,0,51)]if [ -n "$SESSIONFILES" ]; then
[ft=,0,51)] for SESSIONFILE in $SESSIONFILES; do
[ft=,0,51)] . $SESSIONFILE
[ft=,0,51)] done
[ft=,0,51)]fi
以后所有的script都放在/etc/X11/Xsession.d目录下(没有就创建一个)
现在就在/etc/X11/Xseesion.d下创建93-fcitx:
[ft=,0,102)]#!/bin/bash
[ft=,0,102)]export LC_CTYPE=zh_CN.UTF-8 #这儿我使用的是英文环境, 所以加上了这一句, 如果你使用的是中文环境, 这句可以省略.
[ft=,0,102)]export XMODIFIERS="@im=fcitx"
[ft=,0,102)]export XIM=fcitx
[ft=,0,102)]export XINPUT="xim"
[ft=,0,102)]export XIM_PROGRAM="fcitx"
[ft=,0,102)]export GTK_IM_MODULE="xim"
[ft=,0,102)]export QT_IM_MODULE="xim"
[ft=,0,102)]fcitx &
重启kdm, 久违的fcitx终于出现了
阅读(1360) | 评论(1) | 转发(0) |