LinuxSir.cn,穿越时空的Linuxsir!

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

中文乱码。。。。

[复制链接]
发表于 2009-2-25 22:13:09 | 显示全部楼层 |阅读模式
一直没解决的问题。。。
英文环境的arch+xfce, gedit/mousepad/vim 开在win下写的txt文档都乱码,没找到那儿能设置让它们以gbk编码打开这些文件的
在vc下写的代码,用vim打开,中文是乱码。用vim写的代码,vc打开,中文也是乱码。。。一个好处就是逼着自己只写英文注释。。。
发表于 2009-2-25 22:33:38 | 显示全部楼层
我之前也出现过这个问题,同样也是英文locale,在mousepad中输入中文都是乱码,我想应该是locale有关,你编辑一下/etc/locale.gen 把几个中文都选上,再运行locale-gen
另外问一下你用的什么输入法?我记得之前我用fcitx时输入会是乱码,现在改用scim了,可以输入中文,不确定和这个有没有关系。
回复 支持 反对

使用道具 举报

发表于 2009-2-25 22:39:24 | 显示全部楼层
Post by dragon8021;1952643
一直没解决的问题。。。
英文环境的arch+xfce, gedit/mousepad/vim 开在win下写的txt文档都乱码,没找到那儿能设置让它们以gbk编码打开这些文件的
在vc下写的代码,用vim打开,中文是乱码。用vim写的代码,vc打开,中文也是乱码。。。一个好处就是逼着自己只写英文注释。。。


我用的是en_US.utf8的LOCALE, 我的VIM是这样配置的:
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936
set ambiwidth=double
回复 支持 反对

使用道具 举报

发表于 2009-2-25 22:45:45 | 显示全部楼层
gedit可以在打开文件的窗口选择locale。当然,如果你直接输入命令
gedit filename
的话,就是另一回事了。
mousepad我还真不知道怎么弄。主要是XFCE只用过很短的一段时间。
vim的方法参照楼上的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-25 22:48:04 | 显示全部楼层
Post by kevinlei;1952656
我用的是en_US.utf8的LOCALE, 我的VIM是这样配置的:
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936
set ambiwidth=double


太棒了,vim 的问题似乎搞掂了,至少开txt这些不会乱码了, joy。。。

to 2楼,locale.gen里面是弄好了的哦,但是似乎mousepad之类的不会去调用那些编码。vim这么一设置就能调用了。。。
回复 支持 反对

使用道具 举报

发表于 2009-2-25 23:07:32 | 显示全部楼层
Post by kevinlei;1952656
我用的是en_US.utf8的LOCALE, 我的VIM是这样配置的:
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936
set ambiwidth=double

受益菲浅!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-25 23:33:24 | 显示全部楼层
Post by fmying;1952659
gedit可以在打开文件的窗口选择locale。当然,如果你直接输入命令
gedit filename
的话,就是另一回事了。
mousepad我还真不知道怎么弄。主要是XFCE只用过很短的一段时间。
vim的方法参照楼上的。


原来如此。。。一直都是在shell里打开。。。总算是可以了,虽然每次都要自己去尝试gbk,gb2312,gb18030...不是相应的都还不行。。。本来,这三个应该都能互相兼容了吧,尤其是gb18030似乎是包含了前两个的。。。
还有一个用这三个都打不开的,file命令显示的是Non-ISO extended-ASCII,然后用ascii来开也一样开不了。。。
回复 支持 反对

使用道具 举报

发表于 2009-2-26 05:28:42 | 显示全部楼层
Post by dragon8021;1952698
原来如此。。。一直都是在shell里打开。。。总算是可以了,虽然每次都要自己去尝试gbk,gb2312,gb18030...不是相应的都还不行。。。本来,这三个应该都能互相兼容了吧,尤其是gb18030似乎是包含了前两个的。。。
还有一个用这三个都打不开的,file命令显示的是Non-ISO extended-ASCII,然后用ascii来开也一样开不了。。。

直接用gb18030就行了,最大的编码集,通吃另外两个。
gb18030 > gbk > gb2312
最后一个比较诡异,你的那个文件里面有什么怪异字符么?
回复 支持 反对

使用道具 举报

发表于 2009-2-26 09:05:42 | 显示全部楼层
在终端里用:
$ LANG=zh_CN.utf8 mousepad
启动mousepad即可自动检测中文编码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-26 11:36:52 | 显示全部楼层
LANG=zh_CN.utf8 mousepad
done!!连那个莫名其妙很诡异的打不开的txt也搞掂了。alias之。。
同样的方法用在gedit上却还打不开,不过对其他文档就已经是无往而不利了。
joy~
回复 支持 反对

使用道具 举报

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

本版积分规则

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