vimプラグインで、ユーザーが既に.vimrcファイルに変数を設定しているかどうかを確認するにはどうすればよいですか?vimスクリプトで、.vimrcで設定が指定されているかどうかを確認するには?
たとえば、私が.vimrc
を持っている:
set shiftwidth=2
それから私は、だから私はそうのようなプラグインを変更すると思います
set shiftwidth=3
を持っているプラグインのロード:
if !exists("shiftwidth")
set shiftwidth=3
endif
をしかし、修正されたプラグインがロードされた新しいvimウィンドウを読み込むと、タブはまだに設定されていますであり、2
ではありません。
.vimrc
で特に指定されていない限り、shiftwidth=3
を設定するにはどうすればよいですか?
':set shiftwidth'の冗長出力は、私のプラグインが' shiftwidth'の値が最後に設定された場所であることを確認しますが、あなたのプラグインを変更する方法について質問しませんでした。それが設定されている場合は '.vimrc'です。 – neezer
@neezer - 申し訳ありませんが、私は十分に近く読んでいませんでした。 Verboseは最後に設定された場所のみを通知します。起動後にユーザーが設定した値が変更された場合は、それは役に立ちません。私はvimrcファイルを開き、 'shiftwidth'を設定する行を検索する必要があると思います。' set sw = ... '、' set shiftwidth = ... '、' let&sw = ... '、または' let&shiftwidth = ... 'を実行します。 –
@Herbert Sitz - うーん、プラグインが読み込まれるたびに '.vimrc'ファイルをたどるよりも良い方法があるはずです。私はプラグインがロードされた後にユーザーがそれを変更するかどうかについて心配していません、私はちょうどロード時にそれを取得しようとしています:例えば、ftypeでファイルを開いてプラグインをロードする=> 'shiftwitdth'を' '.vimrc'に設定がない場合を除き、' shiftwidth'はプラグインのデフォルトと同じになります。 – neezer