kahua-web

English page

Kahua Release

kahua-web Release

Security Advisory

Event Log

Documentation

For developers

Site info

Related Site

注意) 以下の記述はかなり古いバージョンに基づいています。近々、全面的に書き換える予定です。

Kahua-webはKahuaのアプリケーションのひとつで、 Wikiマークアップを用いたサイト構築を可能にするものです。

マークアップ部分にはWiLiKiモジュールを使っているので、 ほぼWiLiKiと互換です。但し、ページの扱いやマクロに 関しては差があるので、以下のドキュメントを参照してください。

(以降のドキュメントは後でマニュアルの形式に整理します--Shiro)


WiLiKiとの違い

階層的な名前空間

ページ名は"/"で区切られたパス名形式で表現されます。 例えばこのページは "/doc/kahua-web" です。 ページタイトルやwiki名のリンクにはパスの最後の コンポーネントしか表示されません。

URLでは、"kahua.cgi/kahua-web/show" の後にページの フルパス名を指定してアクセスできます。このページは http://www.kahua.org/cgi-bin/kahua.cgi/kahua-web/show/doc/kahua-web です。

wiki名を書く場合、"/"で始まらない名前は、同一階層の 名前と解釈されます。つまり、"/foo/bar" ページで "baz"への参照を書いたら "/foo/baz" を示します。

"."および".."による相対パス表記も使えます。"/foo/bar" ページで"./baz"と書いたら"/foo/baz" (ただ"baz"と書く のと同じ)。"../baz"と書いたら"/baz" を指します。

ファイルシステムアナロジーでは、ページは「ファイル」に 相当し、「ディレクトリ」に相当するものは存在しない ことに注意してください。 "/foo/bar/a" や "/foo/bar/b" をまとめたページ"/foo/bar"を作りたい場合、その ページから下位のページへのアクセスは "bar/a", "bar/b" のように自分自身の名前を含める必要があります。 これを簡略化するために、"$/"で始まるパス名は 自分自身からと解釈されます。つまり、"$/a", "$/b" のように して、自分の「下位」のページを参照することができます。

普通のwikiと違って、自分の居場所を意識しないと 気軽にwiki名が書けないんですが、Kahuaサイトのトップ ということで、ある程度オーガナイズされてた方が いいかと思い、こういう機能を入れました。 しばらく使ってみて様子を見たいと思います。

なお、今考えている階層については ドキュメント階層をどうぞ。

別名

ページに対するリンクに対して、別名を表示させたい時は

[[page-path//name]]

のように書きます。暫定ですが。 例:Kahuaについて

文法の理由:ページ名を階層化したことにより、 どのみちスラッシュは特別扱いされますし、 スラッシュで終わるページ名は作れません。 従ってこの文法だと、特別扱いする文字を増やさなくて済みます。

見掛けでは他のwikiにあるような 'name|WikiName' とか 'name>WikiName'みたいな方が直感的かなとも思ったのですが、 これらを使うと '|' や '>' をページ名に入れられなくなる んですよね…

マクロ文法の違い

マクロはwikinameのようにダブルブラケット内ではなく、

##(name arg ...)

のように書きます。(name arg ...)の部分はS式として 読まれます。但し、多くのマクロはシンボルも文字列に 変換して解釈するので、あいまいさが無ければ ダブルクオート無しで文字列引数を渡すことができます。

今サポートされてるマクロは、次の通り

##(include pagename)   : ページのインクルード
##(img url)            : インラインイメージ
##(index [prefix])     : 検索とインデックス
##(cindex [prefix [delim]]) : コンパクトインデックス
##(toc [pagename])     : table of contents

##(test-error arg ...) : マクロ内でエラーを発生させるテスト。

この形式は、SHIMADAさんところの S式プラグイン から来たもの。いずれ、マクロの引数も評価するようにする。

*イメージの位置などは、CSSにより調整する。その際、以下のようにclass属性、id属性を入れることができる。

##(img url (id "○○")(class "□□"))

特殊ページ

kahua-webでは、ページヘッダやフッタ等もwikiマークアップで 編集できます。

  • /$admin/title-pane : ページ上部のタイトル部分 title-pane
  • /$admin/side-pane : ページ左部のメニュー部分 side-pane
  • /$admin/bottom-pane : ページ下部のフッタ部分 bottom-pane
  • /$admin/home : トップページ "/" にアクセスした時に 表示される内容。
  • /$admin/edit-help : 編集ページの下部に表示される 内容。edit-help

未実装機能

  • 編集履歴機能はまだです
  • 編集の衝突があった場合、後からcommitした方が上書きします。
  • ページ毎や階層毎のアクセスコントロール機能もつけたいと思っています。
  • サーチもまだ。
  • あー、interwikinameもまだだった。

Copyright (c) 2003-2007 Kahua Project Contact | About Us