2016-09-15 5 views
1

私はVimを学んでいて、すばらしいことをすぐに発見しています。私は自分の.vimrcをpython用にセットアップしましたが、今は私の人生をvimと完全に統合したいと思っています。では、どのようにして各言語用に別々の.vimrcを作成できますか? 私はhtmlのemmetをダウンロードしてこれを私の.vimに入れました。私は今emmetを使うことができません。いくつかの言語で複数の.vimrcを作成するにはどうすればよいですか?

私は〜/て.vim/ftplugin/java.vimを試してみましたが、私は、私はちょうどそれが動作するように取得する方法がわからないエメットを持っています

新しいて.vimファイルを作成することができませんでした。 http://mattn.github.io/emmet-vim/私が見つけた最高のものです

+0

プラグインマネージャを使用すると、私は個人的に病原体を使いやすくなり、新しいプラグインをインストールすることはgit repoをクローンするほど簡単になります。試してみる。 –

答えて

2

autocmdを使って、異なる設定やキーマッピングなどを使用したい場合は、単一の.vimrcでこれを実現できます。 (Pythonのファイルを編集するときにあなたの言語固有のプラグインが自分でこれを処理する必要があるなどのPythonプラグインのみ有効になります。)

the docsから:

をあなたは読んだときに自動的に実行されるコマンドを指定することができますバッファまたはウィンドウに出入りするとき、またはVimを終了するときに、ファイルを で書くこと。

はたとえば、ここに私の.vimrcのセクションです:

" set shiftwidth and softtabstops to 2 when working with Clojure, Ruby, HAML, etc. 
autocmd FileType clojure,ruby,haml,eruby,yaml,cucumber set ai sw=2 sts=2 et 

" map ctrl-e to vim-fireplace's Eval function when working with Clojure files 
autocmd FileType clojure nnoremap <C-e> :Eval<CR> 
+3

これは 'ftplugin'ファイルのためのものです(' 'h ftplugin''参照)。 –

3

Vimはファイルタイププラグインの概念を持っています。あなたは:filetype plugin on(あなたの~/.vimrc)を介してそれらを有効にします。次に、Python/Java /何のファイルを編集しても、Vimはその特定のプログラミング言語に対応する設定をロードします。これらの設定を自分自身で適応/上書き/拡張したり、必要に応じて(バッファローカルな)マッピングやコマンドを追加することができます。詳しくは:help ftpluginをご覧ください。

したがって、@ pdoherty926の答えに示すように、:autocmd FileType {filetype}のロットを定義する代わりに、設定とマッピングを~/.vim/after/ftplugin/{filetype}.vimに入れることをおすすめします。これは正しい仕組みであり、~/.vimrcに言語固有のものが混乱することはありません。

関連する問題