如何在VIM中查看UTF-8 Unicode字符


13

我在Ubuntu 14.04 64位计算机上使用VIM 7.4。在我的.vimrc文件中,有以下几行:

" Use UTF-8 without BOM
set encoding=utf-8 nobomb

config文件基本上使用Unicode字符显示空白,例如制表符,行等。完整的.vimrc文件来自Paul Irish的dotfiles

在14.04的较早版本以及以前的发行版中,我能够看到unicode字符而没有任何问题,但是与此无关。

我也尝试过:

 set fileencodngs=utf-8

但是,以上设置无效,并且我仍然在屏幕上看到乱码。有没有办法解决?


1
您可以提供一个示例文件的链接吗?并且可以包含在vim中看到的屏幕截图吗?fenc打开文件后,变量的值是什么?
Mike Miller

Answers:


16

如果您当前的语言环境utf-8编码,则Vim将自动以utf-8模式启动。

如果使用其他语言环境,请在用户~/.vimrc文件中进行以下设置:

set encoding=utf-8

您可能还需要选择菜单使用的字体。不幸的是,这并不总是有效。

您也可以使用此选项强制使用进行编码:set fileencodings=utf-8。您可以在这里找到文档

另一个解决方案是:在插入模式下,按Ctrl- R ="\xe2\x82\xa9" Enter以使用十六进制编码直接输入UTF-8字符。

\xe2\x82\xa9是十六进制编码字符(朝鲜的货币符号)。

参考:Vim文档

注意:如果执行了上述配置,但是仍然看不到Unicode字符或无法正确键入Unicode字符,请检查您的终端或控制台配置是否 Character encoding设置为UTF-8

另请阅读Vim中的特殊字符


1
这也解决了无法为我输入汉字的问题。
Zelphir Kaltstahl '16

有人可以扩展一下C-R ="\xe2\x82\xa9" <enter>吗?
user1717828

@ ussr1717828是UTF-8编码形式(朝鲜的货币符号),允许用户使用带有-Enter的UTF-8十六进制编码直接键入文字Ctrl+R="..."
αғsнιη
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.