我正在寻找一种将VSCode配置为格式化HTML (以及一般的标记文件,如.vue)的方法,就像Visual所做的那样。
例如,在Visual中,如果我编写类似于:
<div id="testid" class="test" style="display: block;">
    <p class="p1"></p>
</div>我可以决定在哪里拆分属性的行,所以如果我在类后面插入一个换行符,我将拥有:
<div id="testid" class="test" 
     style="display: block;">
    <p class="p1"></p>
</div>或者我可以在身份证后打破界限:
<div id="testid" 
     class="test" style="display: block;">
    <p class="p1"></p>
</div>等等..。
关键是Visual知道我插入的换行符,所以如果我按CTRL+K键,它实际上会格式化我的文档,但是会根据我的选择来维护换行符,并且换行符上的属性只是对齐标记行中的第一个属性。
这是我在VSCode中无法模仿的东西,我尝试了内置的格式,更漂亮和美丽.
真的有办法吗?
编辑
正如@Mr_b194建议的那样,我尝试了HTML扩展。与Beautify相比,这个属性实际上保留了属性之间的换行符,但是新行中的第一个属性只是缩进(在我的例子中是4个字符),因此与上一行不对齐:
    <div id="testid"
        class="test" style="display: block;">
        <p class="p1"></p>
    </div>Visual正在将“class”属性与前面行的“id”对齐。
发布于 2019-02-01 15:34:29
好吧,我找到办法了!
我使用的是美化扩展的1.4.7版本,.jsbeautifyrc文件的intellisense有一个模式失调,没有向您显示属性wrap_attributes的所有选项。
我在github和那些超级快的家伙上打开了一个问题,他们已经发布了1.4.8,它正确地显示了我正在搜索的preserve-aligned值。
因此,为了缩短时间,您可以使用以下方法为项目配置.jsbeautifyrc文件:
{
    "preserve_newlines": true,
    "wrap_attributes": "preserve-aligned"
}而且会成功的。
当我还在搜索.vue支持时,您可以用以下方法配置Vetur:
"vetur.format.defaultFormatterOptions": {
    "js-beautify-html": {
        "preserve_newlines": true,
        "wrap_attributes": "preserve-aligned"
    }
}也会以同样的方式工作。
发布于 2019-01-31 22:26:05
转到Vs代码中的扩展并安装html格式。按“重新加载”按钮,这将有助于格式化所有html代码。
https://stackoverflow.com/questions/54469947
复制相似问题