如何为 VSCODE 设置 Beautify 以缩进 Jinja2 和 Flask?

And*_*res 5 flask python-3.x visual-studio-code

我希望我在正确的区域发帖。

美化缩进忽略了 Jinja 2

我正在使用 Beautify - HookyQR 来帮助格式化和索引。HTML、Python、CSS……一切正常。但是当我开始使用 Python 时,使用 JINJA2 进行烧瓶,因为我保存它只是忽略所有内容并且我丢失了所有索引

这是我所期待的:

            <div class="form-group">
                {{ form.username.label(class="form-control-label") }}

                {% if form.username.errors %}
                    {{ form.username(class="form-control form-control-lg is-invalid") }}
                    <div class="invalid-feedback">
                        {% for error in form.username.errors %}
                        <span>{{ error }}</span>
                        {% endfor %}
                    </div>
                    {% else %}
                    {{ form.username(class="form-control form-control-lg") }}
                {% endif %}
            </div>
Run Code Online (Sandbox Code Playgroud)

这是我保存时的代码:

            <div class="form-group">
                {{ form.username.label(class="form-control-label") }}

                {% if form.username.errors %}
                {{ form.username(class="form-control form-control-lg is-invalid") }}
                <div class="invalid-feedback">
                    {% for error in form.username.errors %}
                    <span>{{ error }}</span>
                    {% endfor %}
                </div>
                {% else %}
                {{ form.username(class="form-control form-control-lg") }}
                {% endif %}
            </div>
Run Code Online (Sandbox Code Playgroud)

我正在对此进行一些搜索,但我找不到任何提示。

如果有人可以帮助我,那应该很棒。

谢谢!

我用什么

我是 PC 用户,我的文本编辑器是 VSCODE win 10。

我使用的扩展

美化- Live Server - Material Icon Theme - Material Theme - SQL Server (mssql)

小智 2

我遇到了同样的问题。我发现这个扩展似乎可以完成这项工作。

这是它的链接 https://marketplace.visualstudio.com/items?itemName=monosans.djlint

或者只需在扩展市场中搜索“djlint”。

您还需要使用以下命令安装 djlint python 包:

pip install djlint
Run Code Online (Sandbox Code Playgroud)

您需要将这些行添加到 settings.json 文件中。

"[jinja][jinja-html][html]": {
    "editor.defaultFormatter": "monosans.djlint",
},
Run Code Online (Sandbox Code Playgroud)

第一行告诉 VS Code 以下设置仅适用于 jinja、jinja-html 和 html 文件类型。如果您使用不同的文件类型,请在此处插入您的文件类型。

下一行只是告诉 VS Code 对这些文件类型使用 DJLint 的格式化程序。

让我知道是否有帮助!