用vim些django模版时,比如说:
<li> {% if sth %} <p>something</p> {% endif %} </li>
我要求的缩进是上面的样子,但是在vim里会强制自动把"<p>"这一行向前缩进,变成了:
<li> {% if sth %} <p>something</p> {% endif %} </lil>
必须将"<p>"这行输完了,手动改缩进。。
我理解的是,因为这是html文件,所以vim就把它当作普通html缩进格式处理了,而忽略了django中if标签。
所以该怎么处理,能够让vim把"{% %}"也当作html中的标签处理呢?
我可不可以认为你代码中的 {% if * %} 和 <li> 是一个等级的?或者下面这样的写法更符合要求,不会破坏 HTML 的缩进结构。
在VS2010中的自动缩进为第一种,我倒认为VIM的处理是正确的。
因为相对ul来说,li缩进一个tab才是良好的缩进。