是否有类似整洁的工具或整洁的配置,可以很好地与 Jinja2 模板配合使用?默认的 tidy 属性中的 Jinja 代码存在问题,并且 Jinja 循环的格式不可读。我的主要要求是获得正确的缩进级别。其他一切都很好,但不是必需的。
3 回答
您可能想要一个独立的工具,而您的问题很老,所以您可能已经解决了它,但以防万一这可能会有所帮助。一些编辑器可以处理 jinja 缩进。例如带有https://github.com/Glench/Vim-Jinja2-Syntax插件的 vim。'=' 命令修复缩进。所以 'gg=G' 修复了所有行的缩进。gg 转到第一个字符;= 修正缩进;G 表示到最后。
虽然它不是像 HTML Tidy 这样的独立工具,但Atom文本编辑器的atom-beautify包对我来说很好用。我在开发 Flask/Jinja2 应用程序时使用 atom-beautify。
独立
可以在这里找到一个独立的(类似 Jinja2 lint)工具:
https://github.com/ramonsaraiva/jinjaninja
安装:
$ pip install jinjaninja
用法:
$ jinja-ninja templates/header.html
输出示例:
templates/header.html:8:68 Block closures should also have names `{% endblock %}`
查看jinjaninja@github了解更多信息
预提交
如果作为本地 git 设置的一部分,您使用pre-commit,请检查
Django 模板
如果您使用 Django 模板,我建议使用 django-extensions 并使用: validate_templates
您可以使用 pip 安装 django-extensions 以供使用:
$ pip install django-extensions
Django 项目 settings.py 文件:
INSTALLED_APPS = [ ...
'django_extensions',
]
下次调用 ./manage.py help 时,您应该能够看到所有新可用的命令。一种叫做“validate_templates”
$ python manage.py validate_templates
可视化代码扩展
Visual Code 提供了两个 Jinja 扩展,默认为“Jinja”,但具有更多功能的新扩展是: