vim編集セッションの一番下にあるNoal表示はどういう意味ですか?

vim編集セッションの一番下にあるNoal表示はどういう意味ですか?

Ubuntuでファイルを開いていますが、vim画面の下部に次のように表示されます。

"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はすべてを一行に合わせようとしています。このインジケータは、オペレーティングシステムに問題が発生する前にファイルをすばやく閉じるのに役立ちます。

関連情報