47

それらを整理するために、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がここで行った設定を上書きできることを理解しています。.vim/filetype.vim1 つの問題は、これがおよび とどのように相互作用するのかよくわからないことです.vim/after/filetype.vim

  • を追加し.vim/after/ftplugin/python.vimます。$VIMRUNTIME/ftplugin/python.vimこれは後でロードされるため、そこから設定を上書きできることを理解しています。filetype.vim前の方法と同様に、ファイルとどのようにやり取りするのかわかりません。

したがって、構文ファイルとファイルタイプ固有のプラグインについては言及しませんが、これを行うには少なくとも 4 つの方法があります。これを行う最善の方法は、ファイルタイプ固有の設定を入れてafter/ftplugin上書きされないようにすることでありfiletypes.vimafter同じ理由でそうです。

ただし、先に進む前に、ファイルタイプ固有の設定を処理する最善の方法について提案があるかどうかを尋ねたいと思います。

4

1 に答える 1

69

$HOME/.vim/ftplugin/python.vimと競合することは何もないため、Python 固有の設定を に保存し$VIMRUNTIME/ftplugin/python.vimます。

これらの設定をftpluginファイルに保存することで、私の.vimrc素敵で一般的なものを維持し、維持しやすくなります (Vim を 10 年以上使用した後でも、まだかなり大きくなっています)。

Vim ディストリビューションの設定を覆したい場合は、これらを読んでください。ftplugin$HOME/.vim/after/ftplugin/python.vimafter

同様$HOME/.vim/filetype.vimに が前に供給され$VIMRUNTIME/filetype.vim、それが の前に供給され$HOME/.vim/after/filetype.vimます。

呼び出す:scriptnamesと、ソース化されたすべてのスクリプト名が、最初にソース化された順にリストされます。

:help filetypeこれらすべてに関するかなり包括的な情報を提供します。

于 2010-05-23T01:51:33.787 に答える