js-beautify неправильно форматирует простой HTML

Я установил js-beautify с помощью npm:

npm -g install js-beautify

И я использую очень простой однострочный эхо, чтобы проверить это.

Это, кажется, работает хорошо:

echo '<div><div></div></div>' | js-beautify --type html -s 2
// 
<div>
  <div></div>
</div>⏎  

Но это не так:

echo '<h2><strong><a href="http://awesome.com">AwesomeCom</a></strong>is awesome</h2>' | js-beautify --type html -s 2
//
<h2><strong><a href="http://awesome.com">AwesomeCom</a></strong>is awesome</h2>⏎      

И это не так:

echo '<div><h2>This is awesome</h2></div>' | js-beautify --type html -s 4
//
<div>
    <h2>This is awesome</h2></div>⏎   

Что дает? Я ожидаю увидеть что-то похожее на это:

<h2>
    <strong>
        <a href="http://awesome.com">AwesomeCom</a>
    </strong>
    <span>is awesome</span>
</h2>

Или, по крайней мере, это:

<div>
    <h2>This is awesome</h2>
</div>

Вот HTML, который я на самом деле хочу отформатировать:

<address>
                  <strong>Twitter, Inc.</strong><br/>795 Folsom Ave, Suite 600<br/>San Francisco, CA 94107<br/><abbr title="Phone">P:</abbr> (123) 456-7890
                  </address>

<address>
                  <strong>Full Name</strong><br/>
                  <a href="mailto:#">first.last@example.com</a>
                </address>

Ожидая, что (согласно http://codebeautify.org/htmlviewer/) это будет выглядеть так:

<address>
    <strong>Twitter, Inc.</strong>
    <br/>795 Folsom Ave, Suite 600
    <br/>San Francisco, CA 94107
    <br/>
    <abbr title="Phone">P:</abbr> (123) 456-7890

</address>
<address>
    <strong>Full Name</strong>
    <br/>
    <a href="mailto:#">first.last@example.com</a>
</address>

Но JS-beautify, кажется, даже не меняет это вообще. Я что то не так делаю? Или js-beautify просто не в состоянии форматировать html так, как я хочу?

0 ответов

Другие вопросы по тегам