我vim
在Ubuntu上使用打开一个文件,屏幕底部显示以下内容:
"file.py" [noeol] 553L, 16620C
说明什么noeol
?
答案1
Unix 编辑器喜欢vi
并且vim
总是\n
在每行末尾添加换行符 ( ) - 特别是最后一行。如果eol
最后一行没有行尾 ( ),则这是一种不寻常的情况,并且该文件肯定不是由标准 UNIX 编辑器创建的。
[noeol]
这种不寻常的情况是通过编辑器中的标志引起您的注意的vim
;其他编辑器可能有类似的标志和通知。
答案2
文件中的最后一行没有换行符 (\n)
答案3
这意味着您查看文件的操作系统无法检测文件的行结束符(如果文件有的话)。有时,当您跨操作系统移动文件(即从 MS 到 *nix 操作系统)时,会发生这种情况
在vim中,如果文件有windows回车符“ ^M"
,可以在vim中使用以下命令修复它:
:%s/^M/\r/g
意义:
% => select the whole buffer
s => substitute
/^M/ => find Windows carriage return.
/\r/ => replace it with *nix carriage return
注意:在 Mac OX 中,^M is ctl+v && ctrl+m
答案4
它是“NO EOL”——没有生产线结束指标。如果您最终打开一个非常大的文件(> 1GB),这非常有帮助。 Vim 尝试将所有内容集中到一行中。这个指示器可以帮助我在文件搞砸我的操作系统之前快速关闭它。