Opera のWidget 管理ファイル widgets.dat の解説.
注意
この文書は,WindowsXPにWindows版の Opera 9.6の情報に基づいて作成してます.この文書を基にして,Operaにカスタマイズその他の変更を加えて,不具合が発生しても責任は取れません.
突っ込み,感想,その他は,office@ashula.infoまで
###説明 widgets.datは,Opera 9 から追加された widget を管理するためのファイルのひとつ.
Widget Panel などで直接ユーザに見える部分は opera:inis:widgetsadr というファイルで管理している.
「ユーザごとの設定を使う」でインストールすると,”Opera Directory”(通常,”%APPDATA%\Opera\Opera\profile”)以下の widgets フォルダに作られる(“%APPDATA%“は,通常”Documents and Settings\user_name\Application Data”).
拡張子こそ dat だが,実際の中身は XML である.
###構造
widgets.adr ファイルは,XMLファイルで,ルート要素は “preferences”
かなりいい加減な DTD で書くと,widgetsdat.dtdのようになるはず.
####“preferences”
“preferences”要素 は 1つ以上の “section”要素を持つ.属性は無し.
####“section” “section”要素は1つ以上の “value”要素を持つ.属性として “id”がある.
“id” は リテラルの “widgets”か 30文字の文字列のどちらか.
リテラルの “widgets” の設定された “section” は “preferences”要素の最初の子要素のみ.それ以外の “section”要素の “id”は全て30文字の文字列となっている.この 30文字の文字列は widgets.adrの”#WIDGET”の”IDENTIFIER”の値と対応する.
####“value”
“value”要素の内容は #PCDATA で,属性として “id” がある. “id” は 次の4種類の値をとる.
; path to widget data : “section”の最初の子要素にのみ使われる.この要素の内容は widget本体のパス として扱われる.おそらくは widget の “config.xml” を含むフォルダで,zipファイルである必要は無い. ; “number of saved values” : “section” の最後の子要素にのみ使われる.この要素の内容は,後述の key と val の数を表す.key/val が無いときは 0. ; “key #n” : ウィジェットが保存する値の名前(“widget.preferenceForKey”の引数)を表す.”n” には 数字が入り,”key #0”,”key #1”,”key #2”と増加する. ; “val #n” : ウィジェットが保存する値(“widget.preferenceForKey”の戻り値)を表す.”n” には 数字が入り,”val #0”,”val #1”,”val #2”と増加する.
参考文献
; Widget : Opera Widgets Specification 1.0 - Opera Developer Community, http://dev.opera.com/articles/view/opera-widgets-specification-1-0/ , Opera Software
更新履歴
- 2007/07/15 : 初版
- 2008/10/10 : Opera 9.60 リリースに合わせて書き直し