Win32 下GVim打开带有GB18030的☭符号乱码!

Vim、Emacs配置和使用
回复
头像
liumailong
帖子: 244
注册时间: 2008-02-12 6:41

Win32 下GVim打开带有GB18030的☭符号乱码!

#1

帖子 liumailong » 2010-03-15 17:28

环境:Win32 Vim最新编译版
这个文件带有GB18030编码的☭符号
但始终无以GB18030打开,实际上我无法以GB18030打开任何文件。求解!

代码: 全选

:e $vim/vimrc
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,GB18030,cp936,big5,euc-jp,euc-kr,latin1
附件
liu-mb.fck.txt
(8 Bytes) 已下载 24 次
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: Win32 下GVim打开带有GB18030的☭符号乱码!

#2

帖子 lilydjwg » 2010-03-16 16:09

原因为字体中没有这个符号。在 DejaVu Sans 中有这个符号,但不是等宽字体。什么叫不能以 GB18030 打开任何文件?

另外你的 fileencodings 中部分设置是无效的,GB18030 和 BIG5 是重叠的,所以即使是繁体中文文件也不能自动识别的。后面的估计也会遇到类似的情况。
头像
liumailong
帖子: 244
注册时间: 2008-02-12 6:41

Re: Win32 下GVim打开带有GB18030的☭符号乱码!

#3

帖子 liumailong » 2010-03-16 18:47

不是,字体的问题!文件如果是UTF-8编码的就没问题。
我曾经试过
set fileencodings=GB18030
甚至
set encoding=GB18030
set fileencoding=GB18030
set fileencodings=GB18030
来打开GB18030编码的文件
Vim干脆显示无法识别。

另“fileencodings”应该设置成什么样才好?
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: Win32 下GVim打开带有GB18030的☭符号乱码!

#4

帖子 lilydjwg » 2010-03-16 21:13

liumailong 写了:不是,字体的问题!文件如果是UTF-8编码的就没问题。
我曾经试过
set fileencodings=GB18030
好吧,你比我幸运。在我这里文件是 UTF-8 也一样,只有 Ubuntu 下正常。
另“fileencodings”应该设置成什么样才好?
我的设置是这样的:

代码: 全选

set fileencodings=ucs-bom,utf-8,gb18030,cp936,latin1
其它的 big5、UTF-16le 什么的就自己手动指定编码,因为我见得很少的(UTF-16的 Windows 下也有一些,但一般有 BOM 可以识别的)。
手动指定编码我用自定义命令 Enc encoding:

代码: 全选

command -nargs=1 Enc e ++bad=keep ++enc=<args> %
头像
liumailong
帖子: 244
注册时间: 2008-02-12 6:41

Re: Win32 下GVim打开带有GB18030的☭符号乱码!

#5

帖子 liumailong » 2010-03-16 22:53

看来GB18030 是个难题

谢谢你的帮助! :em76
回复