コマンドの出力結果が多い場合、ターミナル機能では画面外にロールアウトしてしまう
vimのターミナル機能は元々表示領域に制限があり、例えばプログラム言語のコンパイラーが大量にエラーを出力した場合などは、最初のエラーはあっという間に画面外にロールアウトしてしまう。
以下の実行結果はコンパイル時の警告が出力されているが、最初のメッセージが画面外にロールアウトされ、見えなくなっている。
このままではロールアウトした結果を確認する事が出来ない。これってターミナル機能を利用することで逆に作業が非効率になる。
ターミナルもvimの一部なのでvimコマンドが利用できる
ターミナルを起動すると、スクロールバーが存在しないことに気が付く。このままでは一度画面外にロールアウトした結果は確認する事が出来ない。
だが、vimはあくまでvim、vimコマンドでターミナルの表示も制御できるらしい。それが「ctrl-w」「shift-n」だ。
上記は、ターミナルで「ctrl-w」「shift-n」を実行し、その後「k」でロールアップしたり、「/」で「Expected」を検索した結果である。この時、ターミナルはコマンドモードとなっている。
もちろん、vimなのだからコマンドモードの状態で「i」を入力すると挿入モードになり、カーソル位置が直前のプロンプトの位置に自動的に戻る。
結果をターミナル上で検索できるし、即座にプロンプトに戻れる。
やっぱvimは素晴らしい。。