default.vimと/etc/vim/vimrcの違い[閉じる]

default.vimと/etc/vim/vimrcの違い[閉じる]

$VIMRUNTIME/default.vimこれらとそしての違いは何ですか/etc/vim/vimrc

なぜ$VIMRUNTIME/default.vim最初に始めるべきですか?/etc/vim/vimrcまず、離れなければなりませんか?

(Debian 9)

答え1

/etc/vim/vimrcこれは、パッケージマネージャ(Debianの人々など)によって追加されたシステム全体のデフォルトのVim設定です。vim ユニバーサルAPTパッケージ)。これは、良い(そして安全な)デフォルトのデプロイメントマネージャの視点を表します。

長い間、Vim自体は基本的な設定を提供せず、例だけを提供しました。:help vimrc_example.vim)個々のユーザーが個人設定を開始できるようにします(例~/.vimrc:)。多くの人は、Vimが保守的なデフォルトから始めることを好むことはありません(例:互換性)と「有用な」システム全体の構成の混乱(Vimには構成可能性と柔軟性が多すぎるため)、Vim 8.0の基本構成は次のとおりです。defaults.vim以前は次へ追加

あなたの質問はこの構成に関する混乱を示唆しています。通常、デフォルト設定が機能しない場合ユーザーのすべてのカスタマイズ~/.vimrc、システム全体の構成を維持します。これは議論の余地のない変更(例:syntax on:)に対してのみ行わなければならないため、邪魔にしてはいけませんが、ほとんどのオプションの変更はで行うこともできます~/.vimrc

構成を読む順序で見ると、:scriptnames順次読み取ったスクリプトを表示し、:help initialization血まみれの詳細がすべてあります。

答え2

このファイルは/etc/vim/vimrcいわゆる「システム」vimrcファイルです(出力にこのようにリストする必要があります:version)。

$VIMRUNTIME/defaults.vimVim 8.0でのみ導入された「デフォルト」ファイルです(少なくともこの機能を含む最初のパッチなしバージョンでした)。

ファイルは/etc/vim/vimrcLinuxディストリビューションによって制御されるため、DebianやRed Hatなどはディストリビューションと関係があると考えるVim初期化を実行します。

defaults.vim自動的にロードされたファイルユーザーvimrcファイルがない場合にのみ適用されます。したがって、ユーザーがいない場合、またはファイルがある場合にのみ可能~/.vimrcです~/.vim/vimrc。これらのファイルのいずれdefaults.vimかがある場合いいえ自動的にロード(これをしたいかもしれません)あなたのvimrcから。

システムvimrcファイルは次のとおりです。いつもロードされ、常にロード最初。 (もちろん、Vimにvimrcファイルをロードしないように指示するコマンドラインオプション(vim -u NORCまたは)を渡さない限り-u NONE、この場合ファイルはロードされません。)

システムvimrcが処理された後は、自分のvimrcファイルの順番であるか、defaults.vim自分のvimrcファイルが存在しない場合です。

今ここに2つの重要な警告があります!

まず、defaults.vimディストリビューションによって無効になっている可能性があります(中性化に似ています)。一部のディストリビューション(Debianなど)defaults.vimは、以前のバージョンからアップグレードしたユーザーが予期しない設定を有効にするVimのファイル配布にはあまり満足していません。

したがって、defaults.vimこの問題は、Vimscriptコードでnameという変数が設定されていることを確認することで解決されます。skip_defaults_vimもしそうなら、defaults.vim早くやめたら実際に効果を見ることはできません。 (スクリプトは:scriptnames実行する必要があるため、下に表示され続けるため、非常に早く完了しました。)

以前に実行された唯一のものはシステムvimrcファイルでしたので、ここdefaults.vimで設定できます。したがって、ディストリビューションに設定されていることを確認してください。もしそうならskip_defaults_vim、ファイルをインポートしても実際には効果がありません。defaults.vim

2番目の警告であり、一般的な混乱点は、ユーザーのために初めて新しいvimrcファイルを作成するときです。その後、すべての設定を読み込むことからdefaults.vim何もないものに移動します。これは一般に、もはや構文強調が有効にならないことを意味するので、視覚的に非常に目立つ。ほぼすぐ目の前に現れ、その違いをかなり早く知ることができます。

ここでアドバイスするのは、vimrcファイルを最初に作成したときにdefaults.vimそのファイルの機能を維持できるようにソースコードをインポートする必要があり、その後にカスタムアイテムを追加できることです。

vimrcファイルの先頭に次の2行を追加するだけです。

unlet! skip_defaults_vim
source $VIMRUNTIME/defaults.vim

また、unsettingという点に注意してください。これは、このファイルの効果を無効にすることを決定したLinuxディストリビューションでも設定が有効になることを意味しますskip_defaults_vimdefaults.vim

Vimに付属のファイル(独自のvimrcを作成するためのテンプレートとして提供されています)には、一番上の行が含まれていますvimrc_example.vimdefaults.vim

詳細については、次を参照してください。

関連情報