我有一个文件,它在记事本和Vim中显示不同的东西。如何让Vim正确显示文件而不是显示^ @个字符
文件显示通常在Windows记事本:
奇怪字符被添加到每个字符使用Vim时。
任何人都知道如何驳回Vim的Windows环境下的那些奇怪的字符?
我有一个文件,它在记事本和Vim中显示不同的东西。如何让Vim正确显示文件而不是显示^ @个字符
文件显示通常在Windows记事本:
奇怪字符被添加到每个字符使用Vim时。
任何人都知道如何驳回Vim的Windows环境下的那些奇怪的字符?
如您所见:TSS
显示为T^@S^@S^@
(二进制:54 00 53 00 53 00
)。
因为vim显示为\0x00
为^@
。这听起来像UTF16LE
。
您可以转换UTF16LE
到UTF8
:
:e ++enc=UTF16LE
:set fenc=UTF8
:w
看起来像unicode。您可以在记事本中打开文件并将其保存为ascii。
或者,如果您不想创建新文件,则可以更改vimrc设置以启用多字节字符编码。
下面是来自VIM维基信息
http://vim.wikia.com/wiki/Working_with_Unicode
该文件存储为UTF-16,其中每个字符由两个字节表示的。 VIM打开它就好像它是ASCII或UTF-8文件,所以每对字节都变成两个字符。
记事本识别编码,但显然VIM没有。在打开文件时指定编码。
Guffa:我怎样才能做到这一点在VIM?任何参考链接? hopia的解决方案不工作:( – 2012-02-06 03:06:52
你看过他链接到的页面上的信息吗?你尝试了什么? – johnny 2012-02-06 04:36:48
@KitHo:该解决方案不起作用,因为它使用UTF-8而不是UTF-16。与UTF-16le或UTF-16be一样。您可以通过搜索http://www.google.se/search?q=vim+utf-16找到其他可能的解决方案 – Guffa 2012-02-06 07:14:28