* Piki -- コマンドライン WIKI
[English ../en/]
{right
山本和彦\
作成:2010.3.10\
更新:2011.2.7
}
Piki は、WIKI の一種です。他の WIKI と同様、Piki は文章の構造を表現するための簡潔な記法を提供します。しかし他の WIKI と違って、Web サーバーを使いません。"piki" は、Piki ファイルを HTML ファイルに変換するためのコマンドライン・プログラムです。
"piki" は、[Haskell http://www.haskell.org] の関数型パーサーである [Parsec http://research.microsoft.com/en-us/um/people/daan/parsec.html] で書かれており、[HackageDB http://hackage.haskell.org/package/piki] で公開しています。["Git リポジトリー" http://github.com/kazu-yamamoto/piki]は、github にあります。
** "piki" コマンド
"piki" は、HTML 雛形ファイル("template.html"とする) と Piki 記法で書かれたファイル("index.piki"とする)をコマンドライン引数に取り、HTML ファイル("index.html" とする)を出力します。
>|
% piki template.html index.piki > index.html
|<
"template.html" には HTML のメタ情報を記述します。"piki" は、Piki ファイル中の "$body" を Piki ファイルから生成したコンテンツで置き換えます。また、"$title" を 最初の
)は、">|" と "|<" で囲みます。 >| >| (define (fib n) (cond ((= n 0) 0) ((= n 1) 1) (else (+ (fib (- n 1)) (fib (- n 2)))))) |< |< ***区域 "{" と "}" で囲まれた行は、区域()になります。"{" の後に大文字が含まれていると、それは "id" の値になります。それ以外は、"class" の値になります。 >| {center なんらかの Piki テキスト } |< CSS と一緒に利用すると便利です。 >| .center { margin: 0px auto; text-align: center; } |< ***段落 Piki 記法で始まらない行は、段落()になります。段落の区切りは、空行です。 >| 第一段落:日本語では、一行に書く方がいいでしょう。 第二段落:English can be spread into multiple lines. |< ***リンク リンクを張るには、"\[title url\]" という記法を用います。タイトルが空白を含む場合は、ダブルクオートで囲む必要があります。もちろん、この記法は行頭でなくとも使えます。 >| 僕の好きなコンピュータ言語は [Haskell http://www.haskell.org/] です。 |< ***表 表は、各要素を "|" で区切って記述します。 >| |システム|種類| |[Hugs http://www.haskell.org/hugs/]|インタープリター| |[GHC http://www.haskell.org/ghc/]|コンパイラー\|インタープリター| |< ***回避文字 回避文字は '\\' です。"\[\]" と表示するには "\\\[\\\]" と書きましょう。 通常、HTML の特殊文字は、参照文字列に変換されます。たとえば、'<' は "<" に変換されます。 もし、特殊文字が回避されたら、参照文字列には変換されません。以下に興味深い例を示します。 >| {right 山本和彦\
2009.4.6 } |< >| .right { text-align: right; padding-right: 16px; } |<