myong 发表于 2003-6-8 00:45:37

Re:怎样在英文界面下显示和使用中文!

在英文下显示中文的问题,主要是设置环境变量的问题!
1,用编辑器创建以下的脚本:(这个脚本不是我写的,我是在某论坛找到的,具体那个已经忘了)(脚本名字叫gb好了)

#!/bin/bash
export LANG=zh_CN.GB18030
export LC_CTYPE=zh_CN.GB18030

export XMODIFIERS="@im=fcitx"
# killall fcitx > /dev/null 2>&1 &
wait
/usr/bin/fcitx -gb > /dev/null 2>&1 &
$1 > /dev/null 2>&1 &


2,脚本分析:
(1)前两行是设置环境变量。如果你不需要程序显示中文菜单,只需要在应用程序中显示和使用中文的话,可以把第一行注释掉(对于gtk2.0以下版本的程序,可以这样,但是对于使用gtk2.2编译的程序,这样好像无效,而且会使整个程序都不可以使用中文,必须两行都加上)。

(2) 第三行是设置输入法,我是用fcitx的,你也可以设置成你的输入法,比如:XSIM等

(3) 被我注释掉的那行(#kill…………),是原脚本里有的,对Chinput有效,但对其他输入法有问题,所以我注释掉了。他每次都会关掉以前打开的输入法,反正我尝试是无效的,而且还有问题!这样使的只有一个程序可以输入中文!

(4)再下面就是起动程序了,记得如果改了输入法,这里“/usr/bin/fcitx”也要改成你设置的输入法的执行程序。

3,使用脚本
使用很简单,比如你要起动mozilla,那么请用如下方法起动:gb mozilla。其他程序类同,比如:gb gaim等等!这样就可以在按此方法起动的程序中使用中文了。和在中文环境中一样,用Ctrl+空格或shift来切换。

4,问题
这样起动程序不可以代参数,要代的话有两种方法:
(1)比如你要起动:mozilla -mail。只好先写个脚本(叫mm好了)内容只有:

#!/bin/bash

mozilla -mail

然后在gb mm

(2)自己写shell读取参数, 但是我写关于Acroread的脚本时好像无效,各位谁懂的话,帮大家改改吧!

5,注意
(1)要注意的是比如你起动了两个gnome-terminal,如果第一个是在英文环境下起动的话,那么你再用这个方法起动gnome-terminal,那么将失效!也就是说子进程将继承父进程的环境变量!因此这个方法对gnome的nautilus是无效的,如果你想改nautilus的话,只有去中文环境了,因为那是系统的东西!

(2)如果只是简单的设置环境变量的话,可以使程序显示中文但无法使用输入法!

KDE里怎么样我没试过,gnome里应该是可行的!

我在RH8和RH9里都测试过,输入法测试过Chinput,fcitx,XSIM。

leyon 发表于 2003-6-8 05:25:01

我想实现:
在 console 模式下,在不装 cce、zhcon 等的情况,可以显示中文(某些错误提示或者 man 页),
或者全英文,
在 xwindow 里面则是中文。
不知老大有没有办法解决?
谢谢!

shuishou 发表于 2003-6-8 20:32:03

在console模式下,如果不装cce、zhcon的话,估计不能现实中文,但是全英文还是可以办到的。

很长时间没有用linux了,很多东西都忘了,如果说得不大对,还请更正。

1、首先将系统语言设置为english。
2、/etc/sysconfig/i18n中加入一句:LC_CTYPE=zh_CN.GBK
3、你想哪个用户的界面是中文,那么就在这个用户的主目录下建一个.i18n文件,里面加一句:LANG=en_US.UTF-8 。同时修改一下主目录下面的.bashrc文件
加一句:LANG=en_US.UTF-8

这种方法可能比上面的那一种好一些,没有太多的命令,也不需要建脚本。不过两者的原理是一样的,都是设置环境变量。
而且可以选择每个用户的语言。比如你可以让a用户使用e问的xwindows界面,b用户使用中文的xwindows界面。

上帝 发表于 2003-6-10 16:08:42

关于以上方法使用红旗的输入法,要注意编码,GBK是不行的,最好使用gb18030

fancy2fact 发表于 2003-9-5 15:14:28

还是水手的方法适合菜鸟 :P:P

jamesxuruo 发表于 2003-9-11 11:01:03

i am sorry,i have tried the messord inmentioned above,but when i finished these config,nothing happened, can you tell me why?
and another question,i have installed miniChinput,but it display nothing when i type Ctrl+Shift,
and another, i have chinput in /usr/bin
who can tell me what should i do?

shuishou 发表于 2003-9-30 12:12:29

i am sorry,i have tried the messord inmentioned above,but when i finished these config,nothing happened, can you tell me why?
and another question,i have installed miniChinput,but it display nothing when i type Ctrl+Shift,
and another, i have chinput in /usr/bin
who can tell me what should i do?

会吗?我自己就是用这个方法做的,现在用的很好。
其中使用gbk的编码,主要考虑的是要使用wine的问题。

你的输入法之所以调不出来,估计是字体调整过了的原因,(做过美化什么的吧)而且我个人认为minichinput不怎么好,换上xsim吧,我个人最喜欢这个。:P

Joker_cn 发表于 2003-10-1 00:13:35

人生最大的痛苦莫过于明明心里在想着一个人,
却不知道是不是喜欢她.

Just missing you !
Just missing you !

dingjing 发表于 2004-1-13 20:37:29

楼上的失恋了啊

樱家冢 发表于 2004-1-14 13:03:00

建议使用SCIM,如果是拼音的话,五笔还是fcitx吧。
页: [1]
查看完整版本: Re:怎样在英文界面下显示和使用中文!