日記
WikiBrowser - 日本語WikiName対応ブラウザ (13:51)Edit

2004/3/28

>>#902 ただただし / 2004/03/28 12:35 >>このアプローチで解決できるのは、ブラウザのアドレス欄が見やすくなる点だけですよねぇ。メールに張ったり、別のサイトからリンクをはったりするときには%だらけのURLが現れてしまうわけで……

確かにブラウザのサンプルだとそれしか解決できないみたいにみえるか。

でもどっちかというとこのサンプルの核となるべき部分は、あるWikiサイトのページのアドレスを表現する文字列として、

という二つの形式を(クライアントサイドで)相互に変換できるロジックなので、そのロジックをブラウザのアドレス欄以外でも使えるようにすればなんとかなると思います。

たとえば、「wiki:ウィキペディア/アマゾン川」みたいなURIもどきをフックして「http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8」というURLと相互変換するフィルターをブラウザのプラグインとして入れつつ、(Windowsの場合は)「wiki:」プロトコルと対応ブラウザを関連づけておいたりすると、メールや別サイトでの紹介のときにも(対応したクライアント向けには)使えるようになるはず。

まあブラウザ以外の場所で使えるくらい、こういう仕組みを広めるのはかなり大変だろうけど。


2004/3/25

「BitChannel / 日本語ページ名」(http://i.loveruby.net/d/20040325.html#p04)関連を見ていてふと思いついたネタ。

結局いろいろ考えてもあんまりいい方法が思いつかないならば、いっそのことWebブラウザ側で日本語WikiNameに対応してしまうってのはどうだろう。

具体的には、URLエンコードされたURLから日本語WikiNameに戻してやって、それを表示するプラグイン(ツールバー)を用意したりとか、あらかじめそういう機能を持つWebブラウザを作ったりとかして、日本語Wiki対応Webブラウザ環境を整備してしまう感じ。

ツールバーのイメージとしては、たとえば、

みたいなURLのページを表示すると、(日本語Wiki対応)アドレス欄(プラグイン)には、

  • [ishinao.net/pukiwiki[↓]] [はてなダイアリー的キーワードリンク集] [→]

みたいに表示される感じ。

ちなみに一番左の[ishinao.net/pukiwiki[↓]]はドロップダウンリストを表していて、[↓]をクリックすると他のWikiサイト一覧が表示される。次の[はてなダイアリー的キーワードリンク集]の部分はテキストボックスで、好きな文字列(ページ名)を入力できる。一番右の[→]はいわゆる「GO!」ボタンで、クリックすると現在設定されているページに行く。

たぶんそれぞれのブラウザごとにInterWikiName的な設定を持つ必要があるけれども、逆に言うとInterWikiName設定さえあれば上記のような機能を実現することは簡単だよね(誰か作ってみて。誰も作らなかったらいつか自分で作るけど、俺の場合は棚上げ状態のものが多すぎて優先順位は低いよ)。

いろいろ考えても結局完全に満足できるサーバーサイドシステムが用意できないならば、いっそのことクライアント(ブラウザ)サイドで解決してしまおう、というアプローチ案でした。

2004/3/27

こういうのは実際に動くイメージがないといまいち伝わらないんで、試しに作ってみた。

WikiBrowser画面イメージ:http://mylog.ishinao.net/img/WikiBrowser.jpg

概要

  • 登録されているWikiサイトにアクセスすると、そのURLを解釈して「サイト名」「ページ名」をアドレスとして表示。
  • 「サイト名」「ページ名」を指定(入力)してアクセスすると、その内容からURLに変換してアクセス
  • といった感じで、日本語ページ名がURLエンコードされて「ワケ ワカ ラン(AA省略)」状態になるのをクライアントサイトで対応しようという試み

動作環境

使い方

  • http://dev.ishinao.net/archive/WikiBrowser_040327.zip(うまく解凍できない場合はhttp://dev.ishinao.net/archive/WikiBrowser_040327.lzh)をダウンロード
  • 解凍したディレクトリ内のbinディレクトリにある「WikiBrowser.exe」を実行
  • ブラウザで、対応するWikiサイト内を移動すると、そのページのページ名(URLデコードした結果)がテキストボックスに表示される。
  • ドロップダウンリストからサイトを選択、その隣のテキストボックスにページ名を記入して、「→」ボタンをクリックするとそのページを表示。

カスタマイズ

  • 実行ディレクトリに存在するInterWikiName.txtには、対応するWikiサイトの設定を記述。1行1サイト。半角スペース区切りで「前方一致URL文字列」「文字コード」「Wiki種別」「サイト名」を列挙。
  • 「Wiki種別」は、WikiEngineごとに異なった処理を行うための指定。現在のところ「PukiWiki」と「BitChannel」以外は意味がない。

その他

  • この実装自体は、半分ジョークソフトみたいなものなんで、あんまりまじめにとらえられても困る。アプローチ自体はありだと思うけど。
  • IEコンポーネントをデフォルトセキュリティで使っているんで、危険そうなところにはアクセスしない方がいい

ライセンス

  • 一応GPLにしておくけど、まあこのコード自体は適当に作ったものなんであんまり意味がない。
  • ソースはVisualBasic.NET 2002でコンパイルできると思うけど、IEコンポーネントの取り込みとか、環境整備を自前でやる必要がある。

Published At2004-03-25 00:00Updated At2004-03-25 00:00