webdevqa.jp.net

Vim:改行と改行を表示する

Vi/vimでラインフィードやキャリッジリターン文字を表示するにはどうすればよいですか?

そんなこと知ってる set listはすべての空白文字(?)を表示します。また、タブ\ tなども置き換えます(ただし、これは私が望んでいることではありません)。基本的に私は\ rのような特定の文字を表示したいだけです(Debianではこれがデフォルトのようですが、Gentooでは異なります)。

敬具

34
watain

Vimの最近のバージョンでは、「listchars」設定があり、EOLとTAB文字、および末尾のスペースに使用する文字を指定できます。

あなたは出来る:

set listchars=eol:$,tab:\[SPACE]\[SPACE]

...タブを折りたたむことなく特別にEOL文字を表示するには(スペース文字を入力します。 [SPA、...)。

「listchars」設定の戻り文字については特に何も知りませんが、構文の強調表示を使用できると思います。\r文字のデフォルトの表示は、SpecialKeyハイライトで表示することだと思います。

したがって、上記の 'listchars'の設定と組み合わせた、\ r文字のデフォルトのSpecialKeyハイライトは、必要なものに近いはずです。

:highlight SpecialKey ctermfg=5

...マゼンタが好きなら。

17
njd

DOS形式のテキストファイルをUNIX formartで再度開きます。

:e ++ff=unix

行末に^M(\ r)が表示されます。
16進数で^Mを表示する場合:

:set dy=uhex
22
kev

次の行を.vimrcファイルに追加します。

set fileformats=unix

これにより、vimはunixスタイルのファイルのみをネイティブでサポートします。非UNIXスタイルの行末の場合、復帰文字\rはvimでは^Mとして明示的に表示されます。

5