vim 编辑会话底部的 noeol 指示器是什么意思?

Bon*_*Ami 43 vim

vim在 Ubuntu 上使用打开了一个文件,屏幕底部显示以下内容:

"file.py" [noeol] 553L, 16620C
Run Code Online (Sandbox Code Playgroud)

是什么noeol指示?

Mei*_*Mei 42

Unix 编辑器喜欢vi并且vim总是将换行符 ( \n) 放在每一行的末尾 - 特别是包括最后一行。如果eol最后一行没有行尾 ( ),那么这是一种不寻常的情况,并且该文件肯定不是由标准的 UNIX 编辑器创建的。

这种不寻常的情况是由编辑器中的[noeol]标志引起的vim;其他编辑器可能有类似的标志和通知。


小智 21

文件中的最后一行没有换行符 (\n)

  • *@Bon Ami:* 某些程序在读取您的文本文件时,需要在行尾加上 `\n` 以将其视为已完成的行(带有尾随换行符)。以下示例显示了一个文件,它在文本编辑器中乍一看可能看起来像 **完整** 行,但 `wc` **不会**将其视为一行:`printf "x">"file -无换行符"; wc -l <​​"file-no-newline"` -- 输出是:`0` .. **noeol** 只是一个视觉辅助,让你知道状态.. (2认同)