如何在VIM或Gvim中查看UTF-8字符
我工作时常涉及非英文脚本的网页,其中大部分使用utf-8字符集,VIM和Gvim不能正确显示UTF-8字符。
在Windows 7 64位上使用VIM 7.3.46,在_vimrc中set guifont=Monaco:h10
有没有办法来解决这个问题?
更新:我search了一下,发现了set guifontwide
行为作为地区语言的第二个后备。
我在_vimrc中添加了以下几行,我的大部分问题都解决了。
set enc=utf-8 set fileencoding=utf-8 set fileencodings=ucs-bom,utf8,prc set guifont=Monaco:h11 set guifontwide=NSimsun:h12
上面的NSimsun字体适用于中文,问题是我不知道他们是如何得到字体名称与VIM一起工作的, Courier New
被称为Courier_New
也没有在字体目录中。 我想要使用的字体是Latha
但是,我不知道如何在_vimrc文件中使用它。 set guifontwide=latha:h12
或set guifontwide=Latha:h12
不起作用。
如果我成功地将guifontwide
设置为latha
,那么我的问题就会解决,怎么做?
尝试使用以下命令重新加载文档:
:e! ++enc=utf8
如果这样做,你应该改变你的.vimrc中的fileencodings
设置。
你试过了吗
:set encoding=utf-8 :set fileencoding=utf-8
?
在M $ Windows上,gvim不允许你select非等宽字体。 不幸的是,Latha是一个非等宽字体。
有一个黑客的方式来实现它:使用FontForge (您可以从http://www.geocities.jp/meir000/fontforge/下载Windows二进制文件)编辑Latha.ttf并将其标记为等宽字体。; 这样做:
- 加载fontforge,selectlatha.ttf。
- 菜单:元素 – >字体信息
- 在“字体信息”对话框的左侧列表中select“OS / 2”
- select“Panose”标签
- 设置比例=等宽
- 保存这个字体的新的TTF版本,试试吧!
祝你好运!
这个问题同时解决吗?
我有gvim没有显示所有 unicode字符(但只有一个子集,包括元音变音和重音字符),同时:set guifont?
是空的; 看到我的问题 。 读完这里之后,把这个guifont
设置成一个合理的价值,就可以为我所用。 但是,我不需要超过2个字节的字符。
我无法得到任何其他字体,我安装在我的Windows GVim编辑器,所以我只是切换到Lucida Console
,至less有一些更好的UTF-8支持。 把它添加到你的_vimrc
的末尾:
" For making everything utf-8 set enc=utf-8 set guifont=Lucida_Console:h9:cANSI set guifontwide=Lucida_Console:h12
现在我看到至less有一些UTF-8字符。