Firefoxのコンテキストメニューから呼び出すことができる一連の小さな関数を実装するFirefox拡張機能があります。各設定のラジオグループを表示する設定ウィンドウを作成し、Firefoxのメインメニューに機能を表示したり、拡張機能によって作成されたサブメニューに表示したり、非表示にしたりできるようにしました。これは、各拡張機能でまったく同じように機能しますが、変更されるのは、プリファレンスID、プリファレンス名、呼び出される関数名、および各ラジオグループのラベルだけです。関数ごとにこれらの4つの文字列を含む配列を作成してから、設定ごとに同じコードをコピーして貼り付けるのではなく、すべての設定を動的に定義することは可能ですか?
設定ウィンドウでXULを動的に定義できると確信しています。ただし、pref()コマンドを使用してdefaultsフォルダーでデフォルト設定を定義する方法がわかりません(拡張機能の別の場所で定義された文字列にアクセスする方法がわかりません)。また、preferences.xulファイルの定義を動的に定義できるかどうか、または入力する必要があるかどうかもわかりません。
また、これは良い考えですか、悪い考えですか。関数の追加/削除が簡単になると思っていました。