2013-11-04 7 views
6

私はvimのを経由してシェルコマンドを入力すると - 例えば、:!rake routes - 私は、その後、いくつかの出力および取得します:私はその時点で何かを押すとvimのシェルコマンドの出力をスクロールするには?

Press ENTER or type command to continue 

を、私は常にメインのvimに戻って撮影していますUI。シェルモードを少し長くしておくにはどうすればいいですか?具体的には、コマンドのすべての出力を見るためにスクロールバックできますか?

+0

パイプを使用しようとしましたか?例えばのように。 ':!rake routes \ |もっと '?それはうまくいくかもしれない。 – Annabelle

+0

[Vimでシステムコマンドの出力を表示する方法をスクロールする方法](http://stackoverflow.com/questions/18130722/how-to-scroll-up-to-view-the-output-of- system-command-in-vim) – glts

答えて

2

ターミナルエミュレータ(または使用する場合はtmux/screenなどのターミナルマルチプレクサ)によって、ターミナルvimのスクロールが提供されます。私。 <S-PageUp>を使用して端末をスクロールする場合は、Vimの!でスクロールする必要があります。マウスホイールと同じです(vimがマウスを独自に処理するように設定されていても動作します)。

端末vimがあり、<CR>を押した後に出力を表示する必要がある場合は、<C-z>/:suspを使用できます。 vimや端末(端末マルチプレクサ)の設定が間違っている(つまり、代替画面をサポートしないように設定された端末(端末エミュレータではなく端末マルチプレクサでは通常screenaltscreen on.screenrcが必要) vim起動/再開とシャットダウン/サスペンド時に端末に出力するものは壊れていた)。

GUI vimをお持ちの場合、オプションは非常に限られています。この場合、GUI vimを使用しないので、@gltsまたは@EricAndresのアドバイスによって提供されるリンクに従う方が良いでしょう。

1

:r! [shell command]は、コマンドの出力をバッファに読み込みます。したがって、新しいバッファを開いてそのコマンドを使用すると、好きなだけすべてを検索してスクロールできます。詳細については、Vimcasts episode 57を参照してください。

関連する問題