是否可以在 WebStorm 中为 Django/html 模板设置自动缩进?

Is it possible to set up auto indent for Django/html templates in WebStorm?

问题:当我自动意图时,它会删除模板中任何 markup/python 逻辑的所有缩进。

是否有插件可以为 Django 模板提供自动缩进?如果没有,我如何编辑 Auto-indent Lines 命令 ⌃⌥I 以支持如下所述的格式:

index.html:

{% block title %}
  {# note the indent here with django logic #}
  {% render title_tag with title="Sign up Now" global=global %}
{% endblock %}

{% block description %}
  {# note the indent here with html markup #}
  <meta name="description" content="Sign up today with our product.">
{% endblock %}

{% block body %}
{# note the indent here If statement #}
{% if true %}
  <section class="section">
    <p> here too</p> 
  </section>
  {% if false %}
    <div>
      <p>wowo</p>
    </div>
   {% endif %}
{% endif %}

答案:

为了或多或少正确地格式化这些东西(例如,在块内保持缩进)IDE 必须理解 Django 标签。 WEB-7814 ticket 正在询问(star/vote/comment 以获得有关任何进展的通知)。

现在我可能只建议尝试 安装 "Twig Support" 插件(应该与 WebStorm 一起使用)。 Twig 使用非常相似的语法(受 Django 启发)所以它应该在这里提供帮助。否则 -- PyCharm 或带有 Python 插件的完整 IntelliJ。



Twig 插件:插件安装指南+格式化+使用

  • 打开:主菜单 > Webstorm > 首选项
  • 搜索 "Plugin"

  • 安装 Twig 支持。
  • 重新启动 Webstorm。
  • 打开:主菜单 > Webstorm > 首选项。
  • 搜索"Twig"
  • 转到编辑器 > 代码样式 > Twig
  • 将制表符大小和缩进设置为 2。
  • 按应用。
  • 搜索 "File Types"
  • 点击"Editor > File Types"
  • 转到"Twig inside of "识别的文件类型”窗格。
  • 单击“+”并添加“.html”“.tpl”注意:您可能会收到此文件扩展名的错误提示已经 在其他地方使用。覆盖之前的使用。

  • 点击应用。
  • 重新启动 Webstorm。