山田偽研

(2008.10.09) iCBM3 Ver.0.113b

iCBM3 Ver.0.113b を公開しました.

今回の目玉は,

  • Google Chrome形式のブックマークの同期とエクスポート
  • ブックマークのエクスポート操作の流れをわかりやすく
  • ブックマークの同期出力を個別設定できるように
  • コンテキストメニュー項目の強化とツールバーの非表示
  • タグクラウドの表示条件設定パネル

などなどです.

ところで,Google Chrome形式のブックマークは,Mozilla Firefox 3と同様にSQLiteで記述されており,同期やエクスポートのシーケンスをインプリメントすることはさほど難しくありません.しかし,ブックマーク情報以外に訪問履歴・ダウンロード履歴・サムネイルなどの情報も一緒に書き込まれているため,ブックマークだけのファイルを作成しても意味がありません.この問題をどうするかで相当悩みましたが,姑息な手段の解決法を思いつきました.つまり,既に存在するGoogle Chromeのブックマークを雛形として,それにブックマーク情報を継ぎ足して書き込むという方法です.これならば,履歴などの情報を引き継ぐことができます.ただし,ファビコンやサムネイルの関連性が断ち切られてしまいます.その点はご了承ください.

Mozilla Firefox 3のブックマークも,この方法ならば同期やエクスポートができそうです.ただ,(1)分類タグ,(2)スマートブックマーク,(3)訪問履歴の取り扱いがGoogle Chromeほど単純ではないなどの問題が残っているので,実現にはもう少し時間がかかるものと思われます.今しばらく,お待ちください.

目玉の2番目以降は,ざっくり言えば「ユーザーインターフェースの改善」です.今まで,まわりくどかったり&わかりづらかったりしたものを使い勝手よくしました.

(2008.10.13) iCBM3 Ver.0.114b

iCBM3 Ver.0.114b を公開しました.

今回の目玉は,

  • Mozilla Firefox 3形式のブックマークの同期とエクスポート
  • 対象ブックマークのブラウザが実行中ならば,同期出力をサスペンド

などなどです.

前回,Google Chrome形式のブックマークの同期とエクスポート機能を実現した余勢で,Mozilla Firefox 3の方もやっつけちゃいました.前回のリリースノートでは,「複雑なので時間がかかりそう」とか予防線をたらたらと述べていましたが,割とあっさりできました.タグもスマートブックマークもちゃんと対応しています.

ところで,Mozilla Firefox 3ブックマークの同期とエクスポート機能を作ってる最中,ブックマークの読み込みで重大なバグを発見してしまいました.今まで,ブックマークの読み込みは,PlacesOrganizerのクエリーを解釈して,それを辿って木構造のブックマークを構築していました.しかし,Mozilla Firefox 3は,初回の起動直後,初めて「ブックマークの整理」を実行した直後,その後など,様々な局面でクエリーの書式が微妙に変化しているようなのです.そのため,ある局面ではiCBM3にブックマークを読み込めない事態が発生するようです.これは,困った問題です.そこで,ブックマークの読み込み方法を根本的に見直し,PlacesOrganizerのクエリーを一切参照しないで,木構造を構築するアルゴリズムを新たに導入しました.これで,Mozilla Firefox 3がいろいろと書式に悪さをしても影響されるようなことはありません.

新しく導入したアルゴリズムは,論理的見通しがクリアになり,コードもすっきりしました.いやはや,Placesのトレンドに乗らず,最初からこちらの方で攻めておけばよかったと後悔しきりです.

もしかして,今までMozilla Firefox 3ブックマークの読み込みができなかった皆さん,すんまへんです.今度こそはOKなはずです.

(2008.10.18) CCB Ver.0.29b

CCB Ver.0.29b を公開しました.

半年以上,放置していたおかげで,CyberSyndromeのリンクは切れ,Proxy Server, Free Proxy Listはお亡くなりになり,細かいバグもいくつか見つかったので修正しました.更に,新しい採集先をいくつか追加登録しました.

その中のProxyCemeteryProxyForestは,前回のリリースノート((2008.03.30) CCB Ver.0.28b 差し替え版)に記したとおり,Proxyアドレス表示がJavascriptになったため対応できないと,一度登録から外した経緯があります.しかし,よくよく眺めてみると,それほど複雑なことをやっているわけでもないので再チャレンジすることにしました.とは言え,サイト側がアルゴリズムを変更してしまったら,当然のことながら対応できなくなります.

ところで,何故Proxy公開サイトがこのような難読化するかと言えば,正にCCBのようなツールを弾くためであり,何故ツールを嫌がるかと言えば,ページビューが減少してバナー広告を見てもらえなくなるからなのだと想像します.なわけで,私が言うのも変ですが,たまにはブラウザでも訪問して,小銭稼ぎに付き合ってあげてください..

(2008.10.19) CCB Ver.0.29b 差し替え

CCB Ver.0.29bに登録されている採集先 ProxyList.net のアドレスが,古いリストから読み込まれるようになっていました.古いリストから読まれるだけなら問題はないのですが,逆順で読むことで新しいリストが欠けてしまう問題が起きます.

設定ファイル(CCB.XMLもしくはdefault.XML)の以下の部分

<server title="ProxyList.net" url="http://www.proxylist.net/list/0/0/1/1/[0-19]" ....

<server title="ProxyList.net" url="http://www.proxylist.net/list/0/0/1/0/[0-24]" ....

と書き換えると,正順で読み込むようになります.

書き換えが面倒な方のために,差し替え版も用意しました.お手数ですが再度ダウンロードしてお使いください.

(2008.10.20) iCBM3 Ver.0.115b

iCBM3 Ver.0.115b を公開しました.

今回の目玉は,

  • 自動更新チェック実行タイミングの仕様を大幅に変更
  • ブックマークエクスポート時にアイテムを自動振り分け

前者は,起動後の経過時間を基準にしていた仕様を,前回チェックした時間からの経過時間に変更しました.その結果,起動時に必ず全エントリーのチェックを行う動作から開放されます.多くのFeedやチェックアイテムをエントリーしている場合,これは結構ストレスの溜まる動作だったわけです.まぁ,要するに通常のRSSリーダーなどと同じような仕様になっただけなんですけどね.やっと.

後者は,ブックマークエクスポートの処理に一工夫こらしました.ブラウザのブックマークは,名称など細かな違いはありますが,一般に大きく分けて「ブックマークツールバー」と「メニューフォルダ」に属するアイテムによって構成されます.そこで,選択アイテムのそれぞれの出自に沿った場所に自動的に振り分けて出力するようにしました.同じブラウザのアイテムの場合はもちろん,他のブラウザブックマークからであっても振り分けは行われます.

その他,掲示板でご指摘いただいた「正規表現の文法ミスがあったときのエラーハンドリング」など,様々なバグフィックスも行っています.

(2008.10.21) iCBM3 Ver.0.115b2

iCBM3 Ver.0.115b2 を公開しました.

怒涛の4日連続リリースです...

って言うとりますが,勘の鋭い方はお察しのとおり,iCBM3致命的バグが見つかったことによる修正リリースです.Mozilla Firefox 3Google Chromeブックマークの同期処理において,バックアップファイルだけ作成して,編集後のブックマークを作成しないバグを修正しました.

現時点でクレームは1件もありませんが,この機能をお使いになって被害に遭われた方がいらっしゃいましたら,ごめんなさい.編集前のブックマークは,各ブラウザのプロファイルフォルダに「ブックマーク名+".bak"」という名前で保存されています.拡張子を元に戻してやれば復元することができます.

(2008.10.31) iCBM3 Ver.0.116b

iCBM3 Ver.0.116b を公開しました.

今回の目玉は,

  • Google Chrome 0.3.154.9 Betaの新形式ブックマークへの対応
  • IE7 Feedの読み込み条件を厳格にしたことにより,配布パッケージを1つに統一
  • %dynamicマクロの導入
  • 各種オプションの大規模な整理統合

などなどです.

Google Chromeのブックマークは,今まで履歴などと同じファイル(History)に収められていたのですが,0.3.154.9 Betaになり突然JSON形式のファイル(Bookmarks)として独立しました.まぁデベロッパーなんちゃらとかではアナウンスされていたんでしょうけど...確かに,旧形式のブックマークはSQLiteデータベース内で「starredテーブル」という如何にも付け焼き刃的名前がついてたから,何か変だとは感じていました.

そんなこんなで,急遽JSONのお勉強をして,何とか対応させました.ところで,オリジナルのブックマークでは日本語文字列はエンコードされているのですが,iCBM3の同期出力・エクスポートするブックマークではUTF-8でそのまま出力しています.不思議なことに,問題なく読めちゃうんですよね.当面は,このままにしておきますが,問題が生じたら対処します.

各種オプションの整理統合は,あまりご利益のないオプションを廃止したり,カテゴリー分けがおかしなオプションをまとめたりしています.そのため,バージョンアップしてお使いの方は,一部の設定が強制的に初期化されてしまうかもしれません.ご了承ください.