LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: ljx980645

在 startx 之前的终端里能不能支持中文?

[复制链接]
发表于 2006-11-17 11:17:52 | 显示全部楼层
taocp用zhcon --utf8启动

http://zhllg.blogspot.com/2006/1 ... n-portage-soon.html
建议所有中文gentoo用户订阅我的blog
http://feeds.feedburner.com/zhllg
回复 支持 反对

使用道具 举报

发表于 2006-11-17 11:34:15 | 显示全部楼层
多谢,搞定了!
回复 支持 反对

使用道具 举报

发表于 2006-11-17 13:52:32 | 显示全部楼层
Post by zhllg
改成en_US.UTF-8的locale也没问题
事实上,只要是utf8的locale,在这个问题上都不会有问题
大家每发一帖之前,三思,想一想如果我是对方,看了我发的这个帖子之后,心里会是什么感觉
借用gentoo mentor guide里的一句话:
Once you offend and alienate someone, you can never take it back.

人不犯我,我不犯人
谢谢 zhllg  交流心得体会
回复 支持 反对

使用道具 举报

发表于 2006-11-17 15:58:44 | 显示全部楼层
zh-CN.utf8和en_US.utf8是一样的东西吗?
搞不清楚,想问一下。
回复 支持 反对

使用道具 举报

发表于 2006-11-17 16:08:52 | 显示全部楼层
不完全一样
但是字符集是一样的,utf8里任何一个字符都是没有歧义的,是唯一的。
一个中文的utf8字符,不会因为你用了en_US.utf8,而变成英文。
回复 支持 反对

使用道具 举报

发表于 2006-11-17 16:46:49 | 显示全部楼层
我是用gdm登录的,本来是选择zh_CN.utf8的。
在开机阶段,我的光驱没配置好,在mount的时候,会出现一段乱码,今天把locale改为en_US.utf8,总算看清楚那乱码是什么意思了:No Such Device /dev/hdc
不过有两个问题:
1.楼上各位所说的,用ls命令什么的,我以前在ubuntu里见识过,比如我输入错误的命令:lsa -l
终端就提示:lsa -l:没有那个文件或目录
但现在却是:
lsa -l : command not found
我的locale是zh_CN.utf8啊,为什么不能显示中文提示?

2.改成en_US.utf8后,原来的gdm登录画面变成英文了,本来是中文的。不过进入gnome后还是中文界面的,如何理解?
回复 支持 反对

使用道具 举报

发表于 2006-11-17 17:06:18 | 显示全部楼层
等的就是这个,好,我们来一个一个的看
Post by zjracyx
我是用gdm登录的,本来是选择zh_CN.utf8的。
在开机阶段,我的光驱没配置好,在mount的时候,会出现一段乱码,今天把locale改为en_US.utf8,总算看清楚那乱码是什么意思了:No Such Device /dev/hdc

开机阶段,我不是很确定你指的是那个阶段。不过,如果是尚未进入X的时候,中文乱码是绝对正常的。除非你用了unicon。
Post by zjracyx

不过有两个问题:
1.楼上各位所说的,用ls命令什么的,我以前在ubuntu里见识过,比如我输入错误的命令:lsa -l
终端就提示:lsa -l:没有那个文件或目录
但现在却是:
lsa -l : command not found
我的locale是zh_CN.utf8啊,为什么不能显示中文提示?

首先,用locale -a命令看看你是否有zh_CN.UTF-8这个locale。
其次,你要知道影响程序输出信息语言类别的locale相关环境变量的优先级
LANGUAGE > LC_ALL > LC_MESSAGES > LANG
哪怕你把LC_ALL设置为了zh_CN.utf8,如果你的LANGUAGE是en,那么输出语言还是英文。

Post by zjracyx

2.改成en_US.utf8后,原来的gdm登录画面变成英文了,本来是中文的。不过进入gnome后还是中文界面的,如何理解?

gdm可以决定你登录后的界面语言,你可以看一看,应该是gdm里把语言设置成了中文。

最后是我对这个问题的两篇详细分析,代码级别的:
http://zhllg.spaces.live.com/Blo ... 1A4wqfIbw!777.entry
http://zhllg.spaces.live.com/blog/cns!956A48A2D7ED7265!824.entry
回复 支持 反对

使用道具 举报

发表于 2006-11-17 18:13:17 | 显示全部楼层
记得以前安装debian的时候,如果选上中文支持,console好像可以完全使用framebuffer来支持中文显示,貌似不是zhcon/cce之类的。不知道哪位知道是怎么弄的?
回复 支持 反对

使用道具 举报

发表于 2006-11-17 18:32:34 | 显示全部楼层
1.开机阶段是指没进入X之前。至于中文输出乱码,是否加入unicon,我不是很清楚。但我是按照http://www.gentoo.org/doc/en/utf-8.xml上做的,
在安装gentoo编译内核之前,修改/etc/locale.gen文件。总共设置了英文和中文两种语言:
en_US.UTF-8 UTF-8
zh_CN.GB18030 GB18030
zh_CN.GBK GBK
zh_CN.UTF-8 UTF-8
zh_CN GB2312
#ja_JP.EUC-JP EUC-JP
#ja_JP.UTF-8 UTF-8
#ja_JP EUC-JP
#en_HK ISO-8859-1
#en_PH ISO-8859-1
#de_DE ISO-8859-1
#de_DE@euro ISO-8859-15
#es_MX ISO-8859-1
#fa_IR UTF-8
#fr_FR ISO-8859-1
#fr_FR@euro ISO-8859-15
#it_IT ISO-8859-1
并locale-gen,显示locale已经全部安装。

gentoo安装完成后,在 /etc/env.d/02locale 里设置LANG="zh_CN.utf8",并在/etc.make.conf里设置USE:
USE="-dri -ipv6 -arts -cdr -dvdr -kde -oss -qt3 -qt4 -ppds -cups [color="Red"]esd hal gpm cjk unicode gtk gnome hal avahi alsa"

另外,根据网页上的指示,说要The System Console使用UTF8要修改/etc/rc.conf里的UNICODE="yes",照做。不过后面说要有具体的字体支持:[color="Red"]To enable UTF-8 on the console, you should edit /etc/rc.conf and set UNICODE="yes", and also read the comments in that file -- it is important to have a font that has a good range of characters if you plan on making the most of Unicode.。不懂如何在终端下加入中文字体?所以就没做这一步。

用到现在,mount 光驱时候一直是乱码的,直到今天我改动/etc/env.d/02locale里的 LANG="en_US.utf8",才正常显示英文。

2.现在的/etc/env.conf/02locale里只有LANG="zh_CN.utf8"一行(我又改回来了),看了你的回帖,我准备改变为LANGUAGE=“zh_CN.utf8",是否可行,等我重启机器看看。

3.非常感谢你的回帖!
回复 支持 反对

使用道具 举报

发表于 2006-11-17 20:50:28 | 显示全部楼层
LANGUAGE不同于其他几个变量,它的值的形式不包括字符集
只需要zh_CN即可
回复 支持 反对

使用道具 举报

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

本版积分规则

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