kawazrepos/Kawaz3rd — pull request #590 by lambdalisue (2014-11-20 17:24:19+00:00)
Title: Kawaz Flavored Markdown 追加とセントラルドグマかっこ良くしたのとドキュメント見やすくした

Kawaz Flavored Markdown (KFM) を導入した。これにより

- `parser`, `markdown` が `kfm` で置き換わる
- ほとんど利用されていない `mention`, `nicovideo` フィルタが廃止された（`kfm`を適用で同等機能）
- `{% render_markdown %}` が `{% include_kfm %}` に変更
- `{% markdown %}` が `{% kfm %}` に変更

既存のルールでおかしな所があったので若干の修正を加えたのと、欲しい機能がいくつかあったので追加した。最終的にKFMの仕様は下記

- GitHub Flavored Markdown (2014) と等価のMarkdown機能
- Multiple underscores in words
- URL autolinking
- Strikethrough
- Fenced code blocks
- Syntax highlighting
- Tables
- 脚注シンタックスの追加
- Cuddled Lists (パラグラフ直下でもリスト記法が有効）
- YouTube URL のプレイヤー展開
- ニコニコ動画URLのプレイヤー展開
- @username のユーザーリンク展開 (メンション）
- {attachment: } の添付展開

また「プレイヤー展開」と「メンション」機能は対象文字列（URLや@username）がクォートされている場合 or コードブロックに入っている場合は展開されないようになっている。この部分のアルゴリズムに難があったので書き換えた。

追加で@shinkaさんから要望のあったフィルタを`strip_newlines`という名前で導入。

```
{{ body|strip_newlines }}
{{ body|strip_newlines:' ' }} 削除ではなく半角スペースへの置き換え
```

のように使用可能。

さらにデザインとかにイラっとしたのでAdminをかっこ良くするplugin導入とドキュメントの自動生成を行う機能の追加を行った。自動生成されたドキュメントはセントラルドグマから閲覧可能。見た目は下記参照

![_007](https://cloud.githubusercontent.com/assets/546312/5129413/7662e4de-7125-11e4-96f0-e7fe270efb02.png)
![_008](https://cloud.githubusercontent.com/assets/546312/5129414/79a11418-7125-11e4-8292-d6aa6ce9200a.png)
![_009](https://cloud.githubusercontent.com/assets/546312/5129417/7c17ff5e-7125-11e4-85d6-a8b147dd837f.png)