Home | Index | Changes | Diaries

Wiki Wiki Web

ひとことで言うと

Wiki は大きくふたつのアイディアから成り立っています。

オンライン編集

あるWikiなページをブラウザで閲覧しているとします。

そのページには、「編集」というリンクがついています。1

そこをクリックすると、今まで見ていたページのコンテンツが 編集可能な状態でテキストエリアに収まっています。

そして脇には「保存」のボタンが…。

テキストを書き換えて「保存」ボタンを押すと、編集された後の ページが表示されます。

Wikiとは、基本的に、 ブラウザから簡単に書き足したり書き換えたりできるページ群2 だと 言えます。

1 ここのページにはそんなリンクはありませんね。ここは特殊なケースです。ごめんなさい。

2 誰でも書き込めるか、パスワード認証などでガードがかかっているかは、 そのサイトの方針によって異なります。

ハイパーテキスト手法

ハイパーテキストを作成しようと思ったら、最低限、

  1. テキストに名前をつける
  2. 別のテキストから、そのテキストへのリンクを張る

という作業が必要です。名前をつけるのは大抵ファイル名を考えて保存するだけなので 普通のことですが、リンクを張るには、HTMLならタグを書かなければならないし、 BTRONなら仮身をコピーするなりマウスをいろいろ操作せねばならず、 なかなか面倒です。

この面倒を極限まで簡素化するために、Wiki では WikiName という概念を使います。 WikiName というのは、大文字ではじまる単語を複数つなげたもの、と定義されます。 文中に、そういう文字列が出て来たら、それは無条件にそういう名前がつけられた 他のテキストへのリンクである、とみなすのがWikiのハイパーテキストの文法です。

この上の文章を見ると、HTMLのAタグで WikiName.html へのリンクが張られている と思います。でもそれはWikiのシステムが自動的に付加してくれているのです。

僕がこのページを編集している画面では、ただ WikiName とキーボードから 打ち込んでいるだけなので、非常に手軽です。

wiki システムの実装

基本に忠実な実装

独自色のある実装

book mark

このサイトでは

CGIを使わず、手元のパソコンで編集、整形してHTML化してからアップロードしています。 つまり、オンラインでブラウザからは書き込みができません。

編集、整形には、EmacsWiki を使っています。Emacs で編集しながら、WikiNameを使って 他のページへジャンプできたりする優れ物です。