VSCode html автоформат на шаблоне django
Я люблю VSCode на save autoformat, пока он не испортил мой код шаблона.
он неправильно форматирует мой синтаксис шаблона django в одну строку кода (иногда очень длинную строку). Поэтому вместо того, чтобы иметь этот код
{% for row in 'ABCDEFGH' %}
<tr>
{% for col in '123456789012345' %}
<td>
{% with forloop.counter|stringformat:"s" as counter %}
{% with row|add:counter as seat_num %}
{% if seat_num not in oc_seats %}
<input type="checkbox" value="{{ row }}{{ forloop.counter }}" name="seats">
{% endif %}
<br> {{ seat_num }}
{% endwith %}
{% endwith %}
</td>
{% endfor %}
</tr>
{% endfor %}
в конечном итоге у меня есть этот код
{% for row in 'ABCDEFGH' %}
<tr>
{% for col in '123456789012345' %}
<td style="text-align: center; border: 1px solid #aaa;">
{% with forloop.counter|stringformat:"s" as counter %} {% with row|add:counter as seat_num %} {% if seat_num not in oc_seats %}
<input type="checkbox" value="{{ row }}{{ forloop.counter }}" name="seats"> {% endif %} {{ seat_num }} {% endwith %} {% endwith %}
</td>
{% endfor %}
</tr>
{% endfor %}
Я попытался отключить формат при сохранении, изменив настройки пользователя на {"editor.formatOnSave": false}
но все равно не повезло.
есть ли плагин или настройки, которые я могу использовать, чтобы сделать это лучше работать?
PS: Я использую VSCode версии 1.9 на Sierra MacOSx
2 ответов
вы можете отключить форматирование html по умолчанию, goto File > Preferences > User или Workspace Settings, в настройках HTML вы найдете:
// Enable/disable default HTML formatter (requires restart)
"html.format.enable": true,
Я думаю, что VSCode использует js-beautify в качестве форматирования по умолчанию, вы можете использовать украсить расширение чтобы переопределить его настройки .jsbeautifyrc в каталоге проекта
имел ту же проблему, нашел сообщение, где человек отключил расширение JS-CSS-HTML Formatter (https://stackoverflow.com/a/42100808/4812548) и это исправило проблему. Протестировано на моем, и, похоже, тоже сработало. Надеюсь, это поможет