繁体   English   中英

vim用@符号显示文件内容

[英]vim displays content of file with @-signs

我用vim打开文件event.txt并显示了一些搜索结果。 这工作正常,但是由于我在_vimrc进行了更改,因此它使用@ -signs显示文件内容,因此它不可读。 参见下图。 带有@符号的event.txt 我在_vimrc中所做的更改是

set fileencoding=utf-8

但我对此发表了评论。 因此它不应影响vim。

"set fileencoding=utf-8

该文件仍显示为不可读。 我可以使用其他编辑器打开文件并正常查看。 我前一段时间有这种行为,但是我以某种方式消失了。 我不记得了

event.txt文件是我通过powershell生成的Windows事件文件:

get-eventlog -logname system > event.txt

某件事告诉我这不是_vimrc的更改,也许不是其他更改,但这是我记得我所做的最后更改,此后它不起作用。

我怎样才能在vim查看Windows事件文件event.txt normaly? 没有@ -signs。

ÿþ之初是一个字节顺序标记 (BOM),典型的为Windows Unicode文本。 ^@是Vim表示的NUL值,(大约)每隔一个字符出现一次。 因此,您有一个(大部分)ASCII文本文件,以UCS-2小尾数编码:每个字符由两个字节(16位)表示,低位在前。

您可以使用

:edit ++enc=ucs2-le event.txt

但是最好正确设置Vim,以便它可以自动检测到它。 由于您在Windows上使用GVIM,因此建议您放置

:set encoding=utf-8

~/.vimrc的开头。 这会自动将您的'fileencodings'设置为ucs-bom,utf-8,default,latin1 注意第一个元素; 这应该有助于检测文件。

不要在~/.vimrc设置'fileencoding' 这是本地缓冲区设置,打开文件时Vim会自动设置它。 'fileencodings' (注意复数)是影响检测的正确选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM