Genshi
| 開発元 | Edgewall Software |
|---|---|
| 初版 | 2006年8月3日 |
| 最新版 |
0.7.9
/ 2024年6月16日 |
| リポジトリ | |
| 対応OS | クロスプラットフォーム |
| 種別 | テンプレートエンジン |
| 公式サイト | genshi.edgewall.org |
Genshiは、XMLのような語彙を持ったテンプレートエンジンで、Pythonで書かれている。 Genshiを利用することにより、XMLをベースとした言語、通常HTMLに出力内容を簡単に挿入したり、ドキュメント間の要素を再利用できる[1]。Genshiは、Kidを元にしており、テンプレート処理を高速化する機能のいくらかを実装することを目的としている[2]。
Genshiは、さまざまなPythonWebフレームワークで利用可能であり、例えばCherryPy[3][4]、TurboGears[5]、Pylons[6]、web2pyで利用されている[7]。 GenshiはTurboGears 2.x内のKidを置き換えた[8]。
Genshiによるマークアップ
Genshiは、名前空間を利用する形でHTMLに対して構文を埋め込む。典型的な構文は属性として与えられ、Python式をクオートした内部に記述する。例えば、下のような構文では、この段落を処理すると「4」が表示される。
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://genshi.edgewall.org/">
<body>
<p py:content="2 + 2">ここが4で置き換えられる</p>
</body>
</html>
KidとGenshiの違い
参照
- ↑ “GenshiTutorial – Genshi”. genshi.edgewall.org. 2025年2月21日閲覧。
- ↑ “What is Genshi?”. 2008年1月20日閲覧。
- ↑ “CherryPy – Genshi”. 2009年9月26日閲覧。
- ↑ “Genshi - CherryPy Tools - Trac”. 2009年9月26日閲覧。
- ↑ “Genshi Templating”. 2008年1月20日閲覧。
- ↑ “Genshi Templates - Pylons Cookbook”. 2008年1月20日閲覧。
- ↑ “web2py: Enterprise Web Framework”. 2009年9月26日閲覧。
- ↑ Ramm, Mark. “TurboGears 1.1 and Beyond”. 2008年1月20日閲覧。
- ↑ “Choosing a templating language”. 2010年5月30日閲覧。
- ↑ “Choosing a templating language”. 2008年1月20日閲覧。
- 1 2 3 “Comparing Genshi to Kid”. 2008年1月20日閲覧。