私はここ数年、リモート サーバー上の構成やスクリプトを編集するために vim を使用していました。数週間前、私は次のステップに進み、Sublime Text 2 以外の通常のエディターとして (Mac)vim を使用しようと決心しました。今、最初のプラグインを作成したいところまで来ました。
私のプラグインは、プラグインの特定のプロパティを調整するためにユーザーが割り当てることができる最大 16 個のグローバル変数を定義します。ユーザーが特定の変数に自分の値を既に割り当てているかどうかを確認する最もエレガントな方法 (主観的かもしれません) は何かを自問しました。他のさまざまなプラグインを調べたところ、これまでに見た「パターン」は常に次のようです。
if !exists("g:pluginname_setting")
let g:pluginname_setting="default"
endif
それは簡単で簡単なようです。しかし、私は常に同じコードを何度も繰り返していました。vi(m) はかなり長い間存在しているので、人々がプラグインを作成するために多くの方法を試し、ある種の「ベスト プラクティス」が開発されたと確信しています。例として。それにもかかわらず、関数を呼び出してすべてのプラグイン設定を含むディクショナリに入力し、ディクショナリを繰り返し処理してキーをチェックし、ユーザーが自分の個人的な設定を既に定義しているかどうかを確認する方がエレガントではないでしょうか? ìf !exists()
それは良い考えでしょうか、それともその考えをやめてアプローチに固執するべきでしょうか?