PukiWiki にユニバーサルエディットボタンを追加してみた
- 秋元@サイボウズラボ・プログラマー・ブログ: Universal Edit Button - 「編集可能なウェブ」実現のための新規格
- 秋元@サイボウズラボ・プログラマー・ブログ: ユニバーサル・エディット・ボタン続報
上の 2 つの記事を読んで、AviSynth Wiki にもユニバーサルエディットボタン(Universal Edit Button)を追加してみました。
Add The Link - Universal Edit Button にリンクの追加方法が書いてありました。application/wiki という MIME タイプはまだないから、MediaWiki などいくつかの Wiki では application/x-wiki を使っているとか、そのようなことが書いてあるようです。
AviSynth Wiki は PukiWiki を使って構築されているのですが、skin フォルダにある pukiwiki.skin.php に次のような行を追加しました。
<?php if ($is_page) { ?>
<?php if ($rw) { ?>
<link rel="alternate" type="application/x-wiki" title="このページを編集" href="<?php echo $script ?>?cmd=edit&page=<?php echo $r_page ?>" />
<?php } ?>
<?php } ?>
追加した場所は、pukiwiki.skin.php の 82 行目あたり。RSS auto-discovery の下のところです。
リードオンリーではない場合にのみ表示するようにしているつもりです。PukiWiki も PHP もよくわからないので、おかしなところがあるかもしれません。とりあえず、手元の環境では正常に動作しているようです。
なお現時点では、Firefox - Universal Edit Button にある Firefox アドオン(univedit.xpi。wiki auto-discovery button)をインストールしないとユニバーサルエディットボタンは見えません。このアドオンは、Firefox 2 と 3 に対応しているそうです。

wiki auto-discovery button アドオンを入れた状態で Wiki の編集可能なページを見ると、アドレスバーにこのようなアイコンが表示されます。そして、このアイコンをクリックすると、そのページの編集画面に移動します。
2008-06-25 追記
初出時、リードオンリーでなく、かつ、凍結されていない場合にのみ表示されるようにしていましたが、凍結されている場合にもユニバーサルエディットボタン表示するようにしました。ただし、凍結されているページでユニバーサルエディットボタンをクリックしても、「○○は編集できません」(○○はページ名)というメッセージが表示されます。
また、検索画面のように、最初から編集できないページでは表示されないようにしました。
wikieditish message: Ready to edit this entry.
A quick preview will be rendered here when you click "Preview" button.