Opera6.adr

meta-creation_date: 2006-09-22T23:36:11+09:00 meta-author: t.ashula

Opera のブックマークファイル Opera6.adr についての解析.

注意

この文書は,WindowsXPにWindows版の Opera8.00beta39.22の情報に基づいて作成してます.別のOS,別のバージョンの解析状況は追々.

この文書を基にして,Operaにカスタマイズその他の変更を加えて,不具合が発生しても責任は取れません.

突っ込み,感想,その他は,office@ashula.infoまで

説明

opera6.adrは,operaにおけるブックマーク(お気に入り)の情報を記載したファイルである.

「ユーザごとの設定を使う」でインストールすると,通常,%APPDATA%\Opera\%OperaVersion%\profile以下に作られる. (%APPDATA%は,通常Documents and Settings\user_name\Application Data)

同時に,opera6.adr.bakという名前でバックアップが作られる.

公式の解説は以下の通り(Markup一部改変).[Official]

Saved user data
FilenameUseFormatOverwritten on installTweak info [1]
Opera6.adr Stores bookmarks. text/plain no [2] File can be saved and renamed, and another file can be selected. See the local menu on the Bookmarks tab in the Hotlist window.
Editable, but can be changed more easily in the browser. Several third party bookmark managers provide an export function.

Note [1]

Tweak only while Opera is not running, except when told otherwise. Deleting files will cause data loss! Always make backups before making any changes.

Note [2]

The logic behind the bookmark installation:

  1. Try to read [User Prefs]Hot List File Ver2 from the opera6.ini file
    • Do not alter the value if any found
    • Default to opera6.adr if no value was found
  2. Try to install an opera6.adr file, preserve existing if the value from 1 was empty

Opera 5 behaved differently.

構造

opera6.adr ファイルは,ヘッダと,本体からなる.文字コードはデフォルトでutf-8が使われる.

数行のヘッダの後,フォルダと個々のブックマークを表す構造がブックマークの量だけ繰り返される.

ヘッダ

先頭は,Hotlist書式のversion情報が入る.

その後,ファイルのエンコード情報と,何かのversionが入る.改変が可能かどうかは不明.

Opera Hotlist version 2.0
Options: encoding = utf8, version=3

本体

本体は基本的に,#FOLDER,#URL#SEPARATOR-の4つの要素の繰り返しによって構成される.

#FOLDERは,そこから-が現れるまでの区間をひとつのフォルダとして扱うことを示し,#URLは,次の#URL-が現れるまでの区間をひとつのアイテムとして扱うことを示す.

#SEPERATOR は区切り線を表し,任意の位置に出現する.

#FOLDER,#URL,#SEPERATOR,-の4つは行の先頭にあり,それ以外の属性は,タブ(U+09),名,"="(U+3D),値 という構造をしている.

#FOLDER
#FOLDER の属性一覧
属性名とり得る値属性の種類備考
ID 整数値 必須

すべての#FOLDER#URL#SEPARATORに共通して付けられる.一意の非負整数値.

値は 各種 *.adr 全てに亘って一意の値で,生成された順につけられる.

NAME 文字列 任意 識別のための名前.何でもいい.
DESCRIPTION 文字列 任意 Operaでフォルダのプロパティを編集したときのdescriptionの文字列.改行は,U+02 U+02 に変換されて保存される.
SHORT NAME 文字列 任意 Operaでフォルダのプロパティを編集したときのnicknameに対応する文字列.
ACTIVE YES (NO) 任意 詳細不明
CREATED UnixTime 任意 作られた時刻のUnixTime(00:00:00 UTC, January 1, 1970からの経過秒を表す)値
EXPANDED YES (NO) 任意 開かれている状態かどうかを示す.
ON PERSONALBAR YES 任意 パーソナルバーに表示するかどうか指定する.表示するときにのみYESで作られる.
PERSONALBAR_POS 整数値 (任意) ON PERSONALBARがYESの時に何番目に表示するかを指定する.ON PERSONALBARが無ければ無効.
ORDER 非負整数値 任意 詳細不明
TRASH FOLDER YES 任意 ゴミ箱(相当)のフォルダにのみ付く.
#URL
#URL の属性一覧
属性名とり得る値属性の種類備考
ID 整数値 強制 すべての#FOLDER#URLに共通して付けられる.一意の非負整数値.
NAME 文字列 任意 識別のための名前.何でもいい.
URL URL 任意 ブックマークしたURL.URL以外にも,bookmarkletなどのscript系も可能.必須の項目ではないらしいが,これが無ければoperaは何のアクションも起こさないので事実上必須の項目.
DESCRIPTION 文字列 任意 Operaでアイテムのプロパティを編集したときのdescriptionの文字列.改行は,U+02 U+02 に変換されて保存される.
SHORT NAME 文字列 任意 Operaでブックマークのプロパティを編集したときのnicknameに対応する文字列.
CREATED UnixTime 強制 アイテムが作られた時刻のUnixTime(00:00:00 UTC, January 1, 1970からの経過秒を表す)値
VISITED UnixTime 強制 アイテムのURLにアクセスした時刻のUnixTime(00:00:00 UTC, January 1, 1970からの経過秒を表す)値
ICONFILE アイコンファイル名か,"Bookmark Unvisited" 任意 faviconとして対応するファイル名を示す. アイコン(*.ico)ファイルは通常,opera6.adrのあるディレクトリのimages以下にサイトのホスト名.icoというファイルで保存される.
ON PERSONALBAR YES 任意 パーソナルバーに表示するかどうか指定する.表示するときにのみYESで作られる.
PERSONALBAR_POS 整数値 (任意) ON PERSONALBARがYESの時に何番目に表示するかを指定する.ON PERSONALBARが無ければ無効.
IN PANEL YES 任意 パネルに入れるかどうかを指定する.パネルにするときにのみYESになる.
PANEL_POS 整数値 任意 IN PANEL=YESのときにパネル中で何番目に表示するかを指定する.
SMALL SCREEN YES 任意 パネル内でSmallScreenモードで表示するかどうかを指定する.
ACTIVE YES 任意 Opera終了時に開かれているとYESになる?
ORDER 非負整数値 任意 詳細不明. 0 - 2147483647 ?
#SEPARATOR

区切り線 を表す.

#SEPARATOR の属性一覧
属性名とり得る値属性の種類備考
ID 整数値 強制 省略.仔細は #FOLDER の ID属性を参照.

構成

#FOLDERから-までがひとつのフォルダを構成する.フォルダの階層構造は,

      #FOLDER
          ID=1
          NAME=Parent

      #FOLDER
          ID=2
          NAME=Child

      #URL
          ID=3
          URL=http://example.com/childs_bookmark
          NAME=childs 1

      #SEPARATOR
          ID=7

      #URL
          ID=6
          URL=http://example.com/childs_bookmark2
          NAME=childs 2

      -

      #URL
          ID=4
          URL=http://example.com/Parents_bookmark
          NAME=parents 1

      -

      #URL
          ID=5
          URL=http://example.com/root_bookmark
          NAME=roots 1
     

というように#FOLDER中に#FOLDERを作成することで表され

      +- Parent
      |  |
      |  +- Child
      |  |  |
      |  |  +- childs 1
      |  |  |
      |  |  +- (separator)
      |  |  |
      |  |  +- childs 2
      |  |
      |  +- parents 1
      |
      +- roots 1
     

というような構造を構成する.

カスタマイズ

上記の情報で弄れるけども,公式から引用した表にも有るようにこのファイルを弄るよりも,Operaのbookmarkから編集した方が楽である.

また,少ないながらもこの形式に対応したブックマークエディタなどがある.

対応しているもの

参考文献

offical

Files Used by Opera, http://www.opera.com/docs/operafiles/ , opera.com

更新履歴

  1. 2007/10/22 : XML 的にinvalid な記述があったので修正
  2. 2007/07/15 : #SEPARTOR の記述を追加,修正.参考文献を追加
  3. 2006/09/22 : XML 的にinvalid な記述があったので修正
  4. 2006/01/30 : TRASH FOLDER を追加
  5. 2005/03/25 : 初版

opera/inis/opera6adr.txt · 最終更新: 2008/09/01 08:10 (外部編集)
 
 
©2008 Another cool website by 80KV