パスワードを忘れた? アカウント作成
442493 journal

Torisugariの日記: Wikipediaのインクリメンタルサーチ その2

日記 by Torisugari

ここ2ヶ月ほど拡張を書いていなかったので、去年の6月の日記に概要だけ書いた、Wikipediaのインクリメンタルサーチを実装してみることにしました。

ソース

書き始めた頃は、ハッシュテーブルか配列で全てのトークンをメモリ上に展開するつもりだったので、さすがにスクリプトではキツいと思ってC++にしたのですが、途中でsqliteにしたので、今にして思えば、検索部分はJavaScriptでも良かった気がします。そこのアルゴリズムは十分速いので。ただ、ウェブ上のデータを取ってきた後に、それをソートするのに3分ほどかかるので(日本語版Wikipediaは20秒くらい)、それをJavaScriptでやるのはいくらなんでもムリな気がします。その3分ソートの部分はバックグラウンドのスレッドで処理しているので、またしてもGecko1.9に依存することになってしまいました。

結局、「実装の手間」と「Firefox2.0でも使いたい」の二律背反を解決するには、

インクリメンタルサーチする拡張 → JavaScript、(Firefox2.0でも使える)
その時に使用するSQLファイルを生成する拡張 → C++ (Firefox 3.0専用)

という風に拡張を分けておくのが一番いいのですが、本当にJavaScriptに移植するかどうかは意欲と相談しないといけません。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

犯人は巨人ファンでA型で眼鏡をかけている -- あるハッカー

読み込み中...