2

C ++、Python、およびASMのプログラミングにvimを使用しています。言語ごとに、異なる特定のプラグイン、キーマップなどがあります。

これを処理する最良の方法は何ですか? 別のvimrcの?またはすべて 1 つの vimrc で sth を追加します。ファイル iam 編集による if/else depening のように?

あなたの提案と経験に満足しています

よろしくお願いします

4

1 に答える 1

6

2 つのアプローチ: 自動コマンドと ftplugins。

  • 自動コマンド

    ~/.vimrcに、次のような行を追加できます。

    autocmd FileType python setlocal tabstop=4 shiftwidth=4
    

    詳細:help autocmdと例については、 を参照してください。

  • ftプラグイン

    設定とマッピングをこのファイルに入れます。

    ~/.vim/after/ftplugin/python.vim
    

    詳細:help filetype:help ftplugin例については、 と を参照してください。

考慮すべきことの 1 つは、オプションとマッピングの範囲です。グローバルなものも:colorschemeあれば、上の のようにバッファやウィンドウに対してローカルなものも'tabstop'あります。ファイルタイプ固有の設定が必要なため、できるだけローカルにする方が安全です。

  • オプションをローカルにするには、 を使用する必要がありますsetlocal(すべてのオプションで機能するとは限らないことに注意してください:help。それぞれのオプションを確認してください)。を参照してください:help :setlocal

    setlocal autoindent
    
  • マッピングをバッファに対してローカルにするには、 を使用します。<buffer>を参照してください:help <buffer>

    map <buffer> <F6> ddP
    
于 2013-08-08T12:33:56.737 に答える