条条大路通 Jinja2 。如果你不确定怎么做,用 Python egg 或 tarball 吧。
### 作为一个 Python egg (通过 easy_install)[](http://docs.jinkan.org/docs/jinja2/intro.html#python-egg-easy-install "Permalink to this headline")
你可以用 [easy_install](http://peak.telecommunity.com/DevCenter/EasyInstall) 或 [pip](http://pypi.python.org/pypi/pip) 安装最新的版本的 Jinja2:
~~~
sudo easy_install Jinja2
sudo pip install Jinja2
~~~
这会在你的 Python 安装中的 site-packages 目录安装一个 Jinja2 egg 。
(如果你在 Windows 的命令行中安装,省略 sudo 并且确保你用管理员权限运行 命令行)
### 从 tarball 版本安装[](http://docs.jinkan.org/docs/jinja2/intro.html#tarball "Permalink to this headline")
1. 从 [download page](http://pypi.python.org/pypi/Jinja2) 下载最新的 tarball
2. 解包 tarball
3. sudo python setup.py install
注意这需要你已经安装了 setuptools 或 [distribute](http://pypi.python.org/pypi/distribute) ,首选后者。
这会在你 Python 安装的 site-packages 目录安装 Jinja2 。
### 安装开发版本[](http://docs.jinkan.org/docs/jinja2/intro.html#id4 "Permalink to this headline")
1. 安装 [git](http://git-scm.org/)
2. git clone git://github.com/mitsuhiko/jinja2.git
3. cd jinja2
4. ln -s jinja2 /usr/lib/python2.X/site-packages
作为第四步的替代选择,你也可以执行 python setup.py develop ,这会通过 disbribute 在开发模式下安装包。这样也有编译 C 扩展的优势。
### 加速 MarkupSafe[](http://docs.jinkan.org/docs/jinja2/intro.html#markupsafe "Permalink to this headline")
从 2.5.1 开始, Jinja2 会检查是否安装 [MarkupSafe](http://pypi.python.org/pypi/MarkupSafe) 模块。如果它找到了, 它会用这个模块的 Markup 类来代替自带的。 MarkupSafe 替换 Jinja2 中附带的 老的加速模块,其优势在于更好的安装脚本,自动试图安装 C 的版本并在不可行时 漂亮地退化到纯 Python 实现的版本。
MarkupSafe 的 C 实现要快得多,并推荐用于 Jinja2 自动转义。
### 启用调试支持模块[](http://docs.jinkan.org/docs/jinja2/intro.html#id6 "Permalink to this headline")
默认 Jinja2 不会编译调试支持模块。如果你没有 Python 头文件或可用的编译器, 启用它会失败。这当你在 Windows 上安装 Jinja2 是很常见的情况。
由于调试模式只对 Python 2.4 是必要的,所以你不需要这么做,除非你在运行 2.4:
~~~
sudo python setup.py --with-debugsupport install
~~~
- 介绍
- 预备知识
- 安装
- 基本 API 使用
- 实验性的 Python 3 支持
- API
- 基础
- Unicode
- 高层 API
- 自动转义
- 标识符的说明
- 未定义类型
- 上下文
- 加载器
- 字节码缓存
- 实用工具
- 异常
- 自定义过滤器
- 求值上下文
- 自定义测试
- 全局命名空间
- 低层 API
- 元 API
- 沙箱
- API
- 运算符拦截
- 模板设计者文档
- 概要
- 变量
- 过滤器
- 测试
- 注释
- 空白控制
- 转义
- 行语句
- 模板继承
- HTML 转义
- 控制结构清单
- 导入上下文行为
- 表达式
- 内置过滤器清单
- 内置测试清单
- 全局函数清单
- 扩展
- 自动转义扩展
- 扩展
- 添加扩展
- i18n 扩展
- 表达式语句
- 循环控制
- With 语句
- 自动转义扩展
- 编写扩展
- 集成
- Babel 集成
- Pylons
- TextMate
- Vim
- 从其它的模板引擎切换
- Jinja1
- Django
- Mako
- 提示和技巧
- Null-Master 退回
- 交替的行
- 高亮活动菜单项
- 访问父级循环