WikiParserのサンプルWikiをアップデートしました (16:07)
今までの実験をすべて盛り込んで、
- 通常時は、PHP版のWikiParserを使ってパース
- 編集中は、JavaScript版のWikiParserを使ってリアルタイムプレビュー
- さらにAjaxを使って、定期的に編集中の内容をサーバーに保存
というバージョンに変えました。
ってやったところ、JavaScript版のパーサーにバグがあることが判明したんで、ソースはまだ載せてません(まあJavaScriptのソースは見れるけど)。もうちょいデバッグしてからまとめます。
ちなみにローカル環境では、保存間隔をもっと短く(ほぼリアルタイムに)して使ってたりしますけど、レンダリング結果の確認と保存の手間が省けると、Wikiはメモ環境としてなかなか快適。これで、KamiWikiくらい使いやすいインターフェース付きだったらもっと便利なんだろうけどな。
まあどうせそのうち.NETでデスクトップ版を作るから、そっちでUIは凝ればいいか。
Ajax版Trackback Tracer (00:52)
blogmapには実験的にtrackbackの追跡機能を載せていたんだけど、サーバーサイドで複数階層をたどって結果を返していたんじゃ、レスポンスが悪くてやってられないんで、あまり実用的な機能として前面には出していなかった。
で、Ajaxが流行りだしてから、「現在blogmapに組み込んでいるtrackback追跡機能はそのうちAjaxを使って、解析状況に応じてツリーの枝を表示していくように改造しよう」とか言うだけ言って放置していたんだけど、何となく催促された気がしたんで、重い腰を上げてAjax版を作ってみた。
作ってみたらなかなか快適な動作速度。Ajaxはこういう用途では便利だね。たとえば、「 trackback trace: ニートを語る時の立論方法」なんかを試してみるといいかも。
クロスブラウザ対応を真面目にやる気になれないんで、Windows IE/Mozilla系以外で動作するかどうかわからない。と言いながら、Opera 8βで試しに動かしたら動いたよ。あらびっくり。
ちなみに現在見ているエントリーのtrackbackを追跡するbookmarkletは、
「trace!」なんて感じになる。
あるいは自サイトのエントリーに追跡リンクを埋め込みたければ、
http://1470.net/bm/trace.html?url=エントリーのパーマリンク
なんてURLにリンクしておけばいい。パーマリンクはURLエンコードしておくと確実。movable typeだったら個別アーカイブのtrackback関連のあたりにでも、
<a href="http://1470.net/bm/trace.html?url=<$MTEntryPermalink encode_url="1"$>">trace!</a>
とか入れておけばいいのかな? tdiaryはよくわからない。mod_rewriteを入れている場合と入れていない場合、両対応の書き方ってどうするんだろう?
というわけで、blogツール開発者ならびにblogサービス運営者の方々には是非とも「trackback autodiscoveryへの対応」ならびに「trackback ping urlに__mode=rssをつけてRSS形式でデータを出力する機能」に対応して欲しい所存であります。じゃないと自動でtraceできないんで。
