说实话,关于自定义扩展的开发,Jinja2的官方文档写得真心的简单。到目前为止网上可参考的资料也非常少,你必须得好好读下源码,还好依然有乐于奉献的大牛们分享了些文章来帮助我理解怎么开发扩展。本文我就完全借鉴网上前人的例子,来给大家演示一个Jinja2的自定义扩展的开发方法。
Pygments是Python提供语法高亮的工具,官网是。我们在介绍Jinja2的自定义扩展时为什么要介绍Pygments呢?因为Jinja2的功能已经很强了,我一时半会想不出该开发哪个有用的扩展,写个没意义的扩展嘛,又怕误导了读者。恰巧网上找到了一位叫Larry的外国友人开发了一个基于Pygments的代码语法高亮扩展,感觉非常实用。他的代码使用了MIT>
你需要先执行”pip install pygments”命令安装Pygments包。代码中用到Pygments的部分非常简单,主要就是调用”pygments.highlight( )”方法来生成HTML文档。Pygments强的地方是它不把样式写在HTML当中,这样就给了我们很大的灵活性。开始写扩展前,让我们预先通过代码