Takuro Ashie
ashie****@homa*****
2003年 2月 19日 (水) 06:16:31 JST
足永です。 At Wed, 19 Feb 2003 02:56:08 +0900, Hiroyuki Ikezoe wrote: > ええと、今日実は設定周りが少し入ったものをコミットしてしまいました。このメールを 見ましたが,少なくともこのままではすぐに限界にぶちあたりそうです. 問題点としては 1. Token毎にenumを割り当てていますが,数が増えて来ると大変な事になります(^^; 2. 設定ファイルを一種類しか扱えないようです(まあすぐ直りますが) 3. 読みだした値を構造体に入れてraw image(元のテキスト)をすぐに破棄し ていますが,例えばプラグインを作ってプラグイン側から本体の設定を読 みだしたいと思ったとき,この構造体を直接見せる形になっていると,構 造体にメンバを追加するたびにoffsetが変化して簡単にBinary conmatibility が損なわれます(後述します). 4. System wideな設定を/etcに固定していますが,これはconfigure時の $sysconfdirの値を使うべきです で,3の件ですが,KazehakasePrefs構造体自体は残しても良いのですが(とい うか残した方が本体のコーディングは楽になると思います)それとは別にPrefs オブジェクトみたいなのを作って,これに対してファイル名,セクション名, キー名等を与えてクエリーすると値を取り出してくれるみたいな物があると良 いと思います.で,本体側では起動時に一気に全ての値を取り出して KazehakasePrefsに格納して,本体側からはそちらを参照,プラグイン側から はPrefsオブジェクトを介して参照,という形が良いのではないかと(確かXMMS も同様な構造になっていたような気がします). また,値が変化したときには通知できるようになっていれば更に良いです. ┃ 本 体 ┃ ↑ ┃ ↓ ┃ KazehakasePrfs <-> Prefs╋<-> プラグイン ━━━━━━━━━━━╋━┛ ↑ ↓ 設定ファイル (本体 <-> KazehakasePrfs となってますが,書き込みはまずいかも) > 読む前に。元はdilloからぱくってきた(方式でいうと1の)ものですが、まずいようでし > たら、xmmsあたりから再びパクリ直します。 両者の比較で言うならば,ベースとしてはdilloよりはxmmsの方が良さそうです. もっと良いものがあれば,それに越した事はないのですが. lixml2を使う事にするのであれば,XMLでも良いですし(ただ,エディタで直接 編集しやすい形式が個人的に好みなので,設定ファイルをXMLにするのは自分 的にはイマイチです). > > > また,可能ならばlibxmlへの依存性も断ち切りたい(使わないという意味では > > なく,RSS回りやブックマーク回り等libxmlを使いそうな所はプラグインや外 > > 部プロセスとして追い出して,libxmlが無い場合はこれらの機能をコンパイル > > しないとか.でもブックマークが無いのは現実的じゃないなぁ(^^; まあブッ > > クマークくらいならどうとでもなると思いますが). > ます)、libxml依存のものをコンパイルしないという選択肢はちょっと待って欲しいです と言うか,やはりべったり依存してしまったほうが良さそうですね. 依存させないなら徹底的に切り離す,依存させるなら徹底的に使い倒すのどち らかであれば,まったく構わないと思います. 中途半端だとアレですが.