LinuxSir.cn,穿越时空的Linuxsir!

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

从控制台进入Xwindow时fcitx不能输入汉字

[复制链接]
发表于 2006-1-9 16:35:04 | 显示全部楼层 |阅读模式
inux下我删除了系统自带的输入法,装了一个fctix输入法,系统启动时直接进入Xwindow时可以正常使用fcitx,但是从控制台用startx命令进入Xwindow时fcitx成为灰色态不可用,也不能进行汉字的输入,谢谢各位达人了......
发表于 2006-1-9 18:46:45 | 显示全部楼层
随便找个或新建个配置文件  ~/.xinitrc  ~/.profile.d ~/.bashrc  等等启动X时会读取的
在里面写上
export LC_CTYPE=zh_CN.gbk
export XMODIFIERS=@im=fcitx
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-9 19:02:17 | 显示全部楼层
能说详细一点吗?我新手的...对这个一点也不懂的,为什么我从控制台进入xwindow时系统菜单都变成英文的了....是不是什么地方需要设置一下的
回复 支持 反对

使用道具 举报

发表于 2006-1-9 19:16:35 | 显示全部楼层
直接进X。
系统调用XDM.GDM.KDM等X管理器,你在这种模式下没出问题,略过

startx进X。
系统会读取一些配置文件如/etc/profile  /etc/inetd.conf......等等获取必要的参数和需要启动的服务。这种模式出问题了:
原因就是这些个配置文件里没有
export LC_CTYPE=zh_CN.gbk
export XMODIFIERS=@im=fcitx
这2句。这2句是保证fcitx可以输入中文的必要条件

解决方法很简单,找个系统进X过程中会读取的文件,把这2句加上就可以。下面以在~/.xinitrc(/home/yourname/下)设置为例
vi ~/.xinitrc
  1. ...............省略
  2. # Start the window manager:
  3. export LANG=zh_CN.gbk ===>这句设置中文语言环境。对于fcitx非必要条件
  4. export LC_CTYPE=zh_CN.gbk
  5. export XMODIFIERS=@im=fcitx
  6. exec startkde   ===>假设启动kde
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-9 23:13:55 | 显示全部楼层
谢谢,但是我照着你所说的做了,好像一点变化也没有的,我也不知道怎么一回事的?希望你能帮我分析一下的
回复 支持 反对

使用道具 举报

发表于 2006-1-10 00:39:43 | 显示全部楼层
不应该阿。还是输入条能出来,但发灰,无法输入吗?
试下输入下面4行
export LC_CTYPE=zh_CN.gbk
export XMODIFIERS="@im=fcitx"
export XIM=fcitx
export XIM_PROGRAM=fcitx
还是不行的话,把locale和~/.xinitrc以及export贴出来
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-10 10:52:02 | 显示全部楼层
发灰,无法输入.
locale
LANG=zh_CN.UTF-8
LC_CTYPE=zh_CN.UTF-8
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
~/.bashrc
# .bashrc

# User specific aliases and functions

export LANG=zh_CN.UTF-8
export LC_CTYPE=zh_CN.UTF-8
export XMODIFIERS=@im=fcitx

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
回复 支持 反对

使用道具 举报

发表于 2006-1-10 11:19:06 | 显示全部楼层
如果楼主是无法在GTK程序中呼出fcitc,建议你检查一下/etc/gtk-2.0/下有没有gtk.immodules文件,这个问题比较少人提,不过确实存在。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-10 11:42:49 | 显示全部楼层
里面有gtk.immodules这个文件的
回复 支持 反对

使用道具 举报

发表于 2006-1-10 12:06:29 | 显示全部楼层
楼主,你先启动进入命令行,然后statx进入X,如果fcitx无法工作的话,你手动执行:
  1. pkill fcitx
  2. export XMODIFIERS=@im=fcitx
  3. export XIM=fcitx
  4. export XIM_PROGRAM=fcitx
  5. fcitx
复制代码
然后,将信息贴上来,再分析,希望能解决问题。
回复 支持 反对

使用道具 举报

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

本版积分规则

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