LinuxSir.cn,穿越时空的Linuxsir!

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

GBK字符可以显示,输入却乱了套。寻求帮助。

[复制链接]
发表于 2005-2-22 19:03:27 | 显示全部楼层 |阅读模式
昨天还笑话atfa怪事恁多,今天就遭报应啦! :mad:
比如用fcitx的输入条明明看到的是“镕”字,输入的文字却变成了“槠”。
 楼主| 发表于 2005-2-23 00:11:00 | 显示全部楼层
稍有些眉目了.
locale -a居然是这样输出:
  1. $ locale -a
  2. C
  3. en_US
  4. en_US.iso88591
  5. en_US.utf8
  6. POSIX
  7. zh_CN
  8. zh_CN.gb2312
  9. zh_CN.gbk
  10. zh_CN.utf8
复制代码

再找到/usr/share/i18n/charmaps目录是2005年2月19日修改的......
稍后再回来
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-2-23 00:47:08 | 显示全部楼层
是glibc的问题了,上面那些小写的在/usr/share/i18n/charmaps根本找不到字符映射!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-2-23 11:55:24 | 显示全部楼层
对不起,跟glibc无关,是我的xorg-x11-6.8.2没打gb18030和xinitrc的补丁!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-2-23 14:22:34 | 显示全部楼层
用glc的portage,吃惯了现成饭,需要自己解决问题的时候就找不着北了。说是寻求帮助的,结果都是一个人自说自话,是不是有点傻?
最后的解决方法是,修改~/.dmrc
  1. [Desktop]
  2. Session=gnome
  3. Language=zh_CN[color=Red].gb18030[/color]
复制代码

locale的输出是:
  1. ~ $ locale
  2. LANG=zh_CN.gb18030
  3. LC_CTYPE="zh_CN"
  4. LC_NUMERIC="zh_CN"
  5. LC_TIME="zh_CN"
  6. LC_COLLATE="zh_CN"
  7. LC_MONETARY="zh_CN"
  8. LC_MESSAGES="zh_CN"
  9. LC_PAPER="zh_CN"
  10. LC_NAME="zh_CN"
  11. LC_ADDRESS="zh_CN"
  12. LC_TELEPHONE="zh_CN"
  13. LC_MEASUREMENT="zh_CN"
  14. LC_IDENTIFICATION="zh_CN"
  15. LC_ALL=zh_CN
复制代码

至此,GBK扩展字符在fcitx里都可以正确输出了。
或者索性改/etc/env.d/99local
  1. LC_ALL="zh_CN.gb18030"
复制代码

有一事还是不明白,我的glibc是按“最精简有效的 glibc locales 设定”一文做的,为什么zh_CN.gb18030没有包含到zh_CN呢?
回复 支持 反对

使用道具 举报

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

本版积分规则

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