Für die von euch, die noch nicht wissen was Jinja ist: Jinja ist eine django ähnliche Template Engine, allerdings mit Python Syntax und höherer Ausführungsgeschwindigkeit. Im Gegensatz zur django Engine kann man es aber ohne django verwenden (jinja hat kein einziges dependency außer python >= 2.3).
Wem die {% Syntax %} nicht zusagt dem sei gesagt, dass diese änderbar ist.
Die aktuelle Dokumentation gibts online zu bestaunen.
Implementierte Features:
- python if/for/macro(def) elemente.
- deferred objects (Objekte im Namensraum die bei erstmaliger Verwendung erzeugt werden)
- Möglichkeit beliebige Funktionen aufzurufen
- Template Inheritance
- Möglichkeit Templates in python Bytecode zu kompilieren
- Loaders (Klassen die genutzt werden Templates aus diversen Quellen zu laden. [eggs, filesystem, dicts])
- integrierter Debugging Support
- Alle wichten Django filter exklusive datetime specifischen Sachen.
- Internationalization
- Unicodesupport
- Austauschbares Translation Backend (Für zukünftige Versionen ist ein JavaScript Translation Backend geplant)
//Edit: Titel angepasst