プログラマー向けのVim

Vimのお気に入りのエディターはIDEではありません。 ただし、コードの操作を容易にする多くの優れた機能があります。



通常、コードを処理するサイクルは、コードのコンパイル、修正、コードのコンパイルを修正するために短縮されます。Vimには、このプロセス専用のツールが用意されています。 次のようになります。



:makeは、必要なパラメーターを使用してコンパイラーを呼び出します。コンパイルの終了後、ソース内のエラーにジャンプできます(見つかった場合)。

:ccは現在のエラーの場所に移動します。:cc [nr]はエラー番号[nr]に移動します。

:cnextおよび:cpreviousは、それぞれエラーの次および前の場所に移動します。

:clistはエラーのリストを表示します。 ただし、エラーリストは、コマンドclistで常に呼び出すには不便です。さらに、このリストを検索することはできません(特にリストが大きい場合に便利です)。 したがって、誤ってジャンプする別の方法があります-エラーのリストでウィンドウを開きます(はい、Vimにはwindowsがありますその場合はhelp windows )。

:copenはこのウィンドウを開きます。 これは通常のウィンドウで、すべての移動、検索などのコマンドが機能します。 唯一の違いは、最初にそのテキストが変更不可としてマークされているため、誤って歪めないことです。 エラーのある行でEnterキーを押すと、ソースが開き、このエラーが実際に見つかった行にカーソルが置かれます。

:ccloseは 、おそらく既に推測したとおり 、ウィンドウを閉じます。



これらのチームは生活を大幅に簡素化しますが、怠を増します。 したがって、.vimrcファイル内の任意のボタンを割り当てることができます。 たとえば、これは私の.vimrcの一部です。

" build mappings

map < F7 > :wall \| make < Cr >

map < F4 > :cn < Cr > zvzz:cc < Cr >

map < S-F4 > :cp < Cr > zvzz:cc < Cr >








<F7>はすべてのファイルを保存し、コマンドmakeを実行します。

<F4>これはもはや単純ではありません:cnextですが、ちょっとした魔法です。 :cn <Cr>は次のエラーに進みます。 zvはフォールドを展開し(興味深い場合は次回)、zzは現在の行を画面の中央に配置します。cc<Cr>は、下部にエラーメッセージを表示するために必要です。 Shift + F4では、すべてが似ています。



これが機能するためには、コンパイラに適合するようにVimを設定します。 (この場合のコンパイラーは条件付きの概念であり、実際のコンパイラーまたは「エラーのコードをチェックする」キーを使用して起動されるインタープリター、またはHTMLを検証するtidyのいずれかです。)これは、 コンパイラーコマンドを使用して行います。 パラメーターなしのコンパイラーは、サポートされている「コンパイラー」のリストを提供し、 コンパイラーfooはfooコンパイラーのサポートを有効にします。 このサポートは、compiler / foo.vimスクリプトの通常の実行に含まれています(スクリプトは'runtimepath'で検索されます)。 スクリプト自体はいくつかのVimオプションを公開していますが、そのうち2つが最も興味深いものです。



'makeprg'は、Vimにコマンドmakeを与えると実行されるプログラムです。 たとえば、gccの場合、perl、 perl -Wc%などの場合はmakeになります。

「errorformat」は、コンパイラがスローするエラーメッセージを解析する方法をVimに説明する特別な種類の行です。

したがって、Vimバンドルおよびwww.vim.orgのスクリプトセクションでコンパイラがサポートされていない場合は、自分で作成できます。



私がここに書いたのは非常に基本的なものなので、可能性を評価できます。 続きを読む:help quickfix 。 そこでは、特に:makeのように、 :grepコマンドを使用して、ファイル内のサブストリングを検索し、見つかった行やその他の多くの興味深いことをナビゲートできることがわかります。



ハッピーバイミング!



All Articles