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

更新履歴