EOF後にVimに常に複数の行を表示させるにはどうすればよいですか?


14

Vimでは、ファイルの最後に到達すると、画面の最後に最後の行が表示されるのが好きではありません。

とにかく最後の行を画面の下の10行のようなものにして、その下に空白行を作成するだけですか?


2
カーソルがファイルの最後の行に達すると、ヒットzzすると画面が再描画され、現在の行が~EOFの後に数行表示されるウィンドウの中央に配置されます。
user9433424

はい。ただし、カーソルを再び移動すると、カーソルは再び下部に配置されます。
ミゲル・ベラ

3
scrolloffオプションが設定されているようです。試してみて:set scrolloff=0、その動作を変更する必要があります。
-Tumbler41

1
あなたの答えはここで読むことができます:stackoverflow.com/questions/7406814/…これに対する答えは他にもあります。
マイク

実際、動作は修正されました!ありがとう
ミゲル・ベラ

回答:


16

あなたは使用することができctrlEますが、ファイルの末尾にあるときに、ファイルの最後の行がウィンドウの一番下にはないので、それは「仮想」の行を追加します、あなたのファイルを下にスクロールします。

さらに、オプションscrolloffを使用して、カーソルの後に常にいくつかの行を追加し、これをに追加できます.vimrc

set scrolloff=10

詳細については:h 'scrolloff'、およびを参照してください:h CTRL-E


1
残念ながら、scrolloff10 に設定しても、OPが望んでいたようにEOF後の行は表示されません。
-Tumbler41

私が使うことを提案する理由確かに、それはだCTRL-Escrolloffちょうど「追加」 でした 現在、これは部分的な解決策です。OPは質問に完全に答えていないため、それを受け入れないことは自由です。
statox

1
それは部分的な解決策CTRL-Eですが、私が探していたものだと思います。しかし、EOFの後に自動的に行を表示する方法があればいいのですが。
ミゲル・ベラ

@ミゲル私はそれがあなたのニーズに合ってうれしいです。<C-e>下にスクロールすると呼び出されるマッピングを作成することは可能だと思いますが、それが正しく機能するかどうかは確かではありません...何ができるか試してみますが、便利なものを作成できます。
statox

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.