删除Jinja模板中的缩进

时间:2020-11-12 11:03:06

标签: python latex jinja2 indentation code-formatting

我正在为LaTeX文档编写Jinja模板,但是我猜想这个问题对于整个Jinja模板来说更普遍。我遇到的特定问题比功能更美观(我正在编写LaTeX模板,因此我的输出对缩进不敏感)。

编写Jinja模板时,最好缩进部分代码以显示块结构,如下所示(空格显示为点-4点是一个制表符):

{% for foo in bar %}
....Outer Text
....{% for foobar in fuzbar %}
........Inner Text
........More Inner Text
........Even More Inner Text
....{% endfor }
....More Outer Text
{% endfor %}

现在,空格控件允许直接在块之前和之后删除文本块的换行符。但是,我想删除缩进行开头的所有空格。因此,上面示例的输出应为:

Outer Text
Inner Text
More Inner Text
Even More Inner Text
More Outer Text

请注意,在编写LaTeX模板时,常规行可能以\t开头,就像\textwidth一样。我想要一个解决方案,在行首同时处理空格和制表符。如果其他代码格式化解决方案可以与Jinja更好地结合使用,并且仍然可以直观地掌握逻辑块,那么也将不胜感激。

到目前为止,我唯一的想法是在每行的开头仅使用space而不是多个tabs并逐行执行

lstrip(' ')

在python中。

0 个答案:

没有答案