私はそれらを整理するために私のvimドットファイルを調べています。時間の経過とともに、さまざまな一貫性のない方法でさまざまなファイルタイプ固有の設定を追加していることに気付きました。 Python用にカスタマイズしているとします。
au BufRead,BufNewFile *.py (do something)
。一部のPythonファイルに.py終端がない可能性があるため、これは好きではありません。
au FileType python (do something)
。 .py終端を持つファイルに依存しないため、これはより良いオプションのようです。欠点は、Vimが一部のファイルタイプを認識しないことです。 Vimに追加のファイルタイプを認識させることもできますが、一貫性のないさまざまな方法があります。.vim/filetype.vim
ファイル、.vim/after/filetype.vim
の別のファイル、set filetype
のさまざまな.vimrc
コマンドなどです。
ファイルタイプ固有の設定を含む.vim/ftplugin/python.vim
ファイルを追加します。ここで行った設定は$VIMRUNTIME/ftplugin/python.vim
で上書きできることを理解しています。 1つの問題は、これが.vim/filetype.vim
および.vim/after/filetype.vim
とどのように相互作用するのかわからないことです。
.vim/after/ftplugin/python.vim
を追加します。これは$VIMRUNTIME/ftplugin/python.vim
の後に読み込まれるため、そこから設定を上書きできることを理解しています。前の方法と同様に、filetype.vim
ファイルとどのように相互作用するかはわかりません。
したがって、構文ファイルとファイルタイプ固有のプラグインについては触れずに、少なくとも4つの方法があります。これを行う最善の方法は、ファイルタイプ固有の設定をafter/ftplugin
に入れて上書きされないようにすることと、同じ理由でafter
にfiletypes.vim
を入れることです。
ただし、先に進む前に、ファイルタイプ固有の設定を処理するための最良の方法について誰かに提案があるかどうかを尋ねます。
$HOME/.vim/ftplugin/python.vim
と競合することは何もしないので、Python固有の設定は $VIMRUNTIME/ftplugin/python.vim
に保存します。
これらの設定を ftplugin
ファイルに保持すると、 my .vimrc
簡単で汎用的で維持しやすくなります(10年以上経過しても、かなり大きくなっています) Vimの使用法)。
overrule Vimディストリビューションでftplugin
sを設定したい場合は、$HOME/.vim/after/ftplugin/python.vim
を読んでくださいafter
これら。
同様に、$HOME/.vim/filetype.vim
は$VIMRUNTIME/filetype.vim
より前にソースされ、$HOME/.vim/after/filetype.vim
より前にソースされます。
:scriptnames
を呼び出すと、すべてのソーススクリプト名が最初にソースされた順にリストされます。
:help filetype
これに関するすべてのかなり包括的な情報を提供します。