Tidy break Django HTML 文件中的自定义换行符
Custom line breaks in Tidy break Django HTML files
目前我正在使用 Tidy 使用 ale 修复程序在 Vim 8.2 中格式化我的代码。一切正常,但在使用 Django HTML 文件时,我需要自定义换行符,而 Tidy 不允许我这样做。
我的HTML代码:
<link rel="stylesheet" href="/static/home/css/font-awesome.css">
<link rel="stylesheet" href="/static/home/css/main.css">
<script src="/static/home/js/vendor/modernizr-2.6.2.min.js"></script>
{% block extrahead %}{% endblock extrahead %}
{% block extrastyle %}{% endblock extrastyle %}
格式化后我得到
<link href="/static/home/css/font-awesome.css" rel="stylesheet">
<link href="/static/home/css/main.css" rel="stylesheet">
<script src="/static/home/js/vendor/modernizr-2.6.2.min.js"></script> {% block extrahead %}{%
endblock extrahead %} {% block extrastyle %}{% endblock extrastyle %}
Tidy 删除了我添加的中断并重新格式化了正确的代码。这会导致 Django 出错 (Invalid block tag on line 5: 'endwith', expected 'endblock'. Did you forget to register or load this tag?
)。
Tidy 行宽为 99
并且它填充所有行,如果没有任何块元素(我的意思是导致换行的 Tidy 块标记)并且它忽略我的自定义中断并重新编写那些也低于 99 个字符行。
这是我的 Tidy 配置文件:
indent: auto
indent-spaces: 2
wrap: 99
markup: yes
show-warnings: yes
uppercase-tags: no
new-inline-tags: cfif, cfelse, math, mroot,
mrow, mi, mn, mo, msqrt, mfrac, msubsup, munderover,
munder, mover, mmultiscripts, msup, msub, mtext,
mprescripts, mtable, mtr, mtd, mth
new-blocklevel-tags: cfoutput, cfquery
new-empty-tags: cfelse
sort-attributes: alpha
replace-color:yes
您可以使用 HTML 注释标签 <!-- -->
使 Tidy 输出一个换行符,如下所示
{% block extrahead %}{% endblock extrahead %}
<!-- @tidy -->
{% block extrastyle %}{% endblock extrastyle %}
输出
{% block extrahead %}{% endblock extrahead %} <!-- @tidy -->
{% block extrastyle %}{% endblock extrastyle %}
只是避免它被意外删除。
目前我正在使用 Tidy 使用 ale 修复程序在 Vim 8.2 中格式化我的代码。一切正常,但在使用 Django HTML 文件时,我需要自定义换行符,而 Tidy 不允许我这样做。
我的HTML代码:
<link rel="stylesheet" href="/static/home/css/font-awesome.css">
<link rel="stylesheet" href="/static/home/css/main.css">
<script src="/static/home/js/vendor/modernizr-2.6.2.min.js"></script>
{% block extrahead %}{% endblock extrahead %}
{% block extrastyle %}{% endblock extrastyle %}
格式化后我得到
<link href="/static/home/css/font-awesome.css" rel="stylesheet">
<link href="/static/home/css/main.css" rel="stylesheet">
<script src="/static/home/js/vendor/modernizr-2.6.2.min.js"></script> {% block extrahead %}{%
endblock extrahead %} {% block extrastyle %}{% endblock extrastyle %}
Tidy 删除了我添加的中断并重新格式化了正确的代码。这会导致 Django 出错 (Invalid block tag on line 5: 'endwith', expected 'endblock'. Did you forget to register or load this tag?
)。
Tidy 行宽为 99
并且它填充所有行,如果没有任何块元素(我的意思是导致换行的 Tidy 块标记)并且它忽略我的自定义中断并重新编写那些也低于 99 个字符行。
这是我的 Tidy 配置文件:
indent: auto
indent-spaces: 2
wrap: 99
markup: yes
show-warnings: yes
uppercase-tags: no
new-inline-tags: cfif, cfelse, math, mroot,
mrow, mi, mn, mo, msqrt, mfrac, msubsup, munderover,
munder, mover, mmultiscripts, msup, msub, mtext,
mprescripts, mtable, mtr, mtd, mth
new-blocklevel-tags: cfoutput, cfquery
new-empty-tags: cfelse
sort-attributes: alpha
replace-color:yes
您可以使用 HTML 注释标签 <!-- -->
使 Tidy 输出一个换行符,如下所示
{% block extrahead %}{% endblock extrahead %}
<!-- @tidy -->
{% block extrastyle %}{% endblock extrastyle %}
输出
{% block extrahead %}{% endblock extrahead %} <!-- @tidy -->
{% block extrastyle %}{% endblock extrastyle %}
只是避免它被意外删除。