XREA.COM Logo XREA.COM Ad

作ったもの

13l ★:2006/11/09(木) 23:05:23 ID:???
Sleipnir用スクラップブックスクリプト・プロトタイプ


SleipnirにはSQLiteというデータベースエンジンが搭載されているということで、せっかくだから何か作ってみることに。
RSSリーダー的な物を作ろうかと思ったが、普通のHTMLページも巡回できるようにしたいと思ったら、XMLHTTPではHTTPヘッダに文字コード指定のないUTF8以外のHTMLページを読み込めないということで、やる気を無くした。

とりあえず、表示しているページを切り取って保存するスクラップブックっぽいものを作成することに。

スクラップブックへの追加は、UserActionExtensionのスクリプトで作る。
この拡張スクリプトは、アクションが実行されるたびに再読込されるらしく、テストがやりやすくてよい。
選択範囲の取得とかは_document.selection.createRange().htmlTextとかで適当に出来た。
データベースに既にテーブルが作成されているかを調べる方法を知らなくて困ったが、毎回CREATE TABLEクエリを実行して存在していなければ作ってもらうという方法で動いたので、とりあえずこれでいいことにする。
SQLを使うのは2年ぶりくらいだったが、適当にリファレンスなどを見ながら書いたらうまくできたようだ。

次に、スクラップブックの内容を表示する部分は、SeaHorseスクリプトで作ることに。
「about:ScrapBook/*」というURLが開かれたら、SeaHorseスクリプトによって表示を行うという方法を考えた。
一瞬空白ページが開かれて見苦しいが、_document.write()で書き込めばちゃんと表示される。
とりあえず、URLの引数部分で操作を判別するようにし、一覧表示、個別ページ表示、項目削除の機能を付けた。

かなり適当だが、とりあえず保存・閲覧・削除が出来るようになったので、使おうと思えば使えそうだ。
あとは、2chのread.cgiのように一定件数ずつ表示できるようにしたり、検索キーワードにマッチする項目を表示できるようにしたりとかもしてみたい。
SQLなら簡単なクエリ文を作るだけで、ややこしい検索機能なども作れるので便利だ。


投稿ファイル名: ScrapBook.zip
http://lukewarm.s151.xrea.com/b/file/1149783578_13.zip
サイズ: 2297
28KB
名前: E-mail:
ファイル:
0ch BBS 2005-10-08