Как сделать HTML в формате Tidy (libtidy5) со встроенными элементами, которые рассматриваются как блочные элементы - PullRequest
0 голосов
/ 10 января 2019

Новый tidy (libtidy5) великолепен, но я не могу понять, как переформатировать html-файл с каждым тегом на новой строке, а также встроенными тегами.

Это стандартный вывод:

echo "<p><b>Hi</b><i>Tom</i></p>" | tidy -i

<!DOCTYPE html>
<html>
<head>
  <meta name="generator" content=
  "HTML Tidy for HTML5 for Linux version 5.2.0">
  <title></title>
</head>
<body>
  <p><b>Hi</b><i>Tom</i></p>
</body>
</html>

Что мне нужно, так это вывод:

 <html>
    <head>
      <meta name="generator" content=
      "HTML Tidy for HTML5 for Linux version 5.2.0">
      <title></title>
    </head>
    <body>
      <p>
       <b>Hi</b>
       <i>Tom</i>
     </p>
    </body>
    </html>

Есть ли параметр CLI для этого?

(Не нравится обходной путь для определения каждого элемента html как элемента блока, Было бы неплохо, если бы вы могли легко переформатировать между обычный и весь блок )

1 Ответ

0 голосов
/ 10 января 2019

Выводится как xml:

tidy -i -q -xml

Итак:

echo "<p><b>Hi</b><i>Tom</i></p>" | tidy -i -q -xml

<p>
  <b>Hi</b>
  <i>Tom</i>
</p>

Или --output-xml 1

echo "<p><b>Hi</b><i>Tom</i></p>" | tidy -iq  --output-xml 1  --show-warnings 0

<html>
  <head>
    <meta name="generator"
    content="HTML Tidy for HTML5 for Linux version 5.2.0" />
    <title></title>
  </head>
  <body>
    <p>
      <b>Hi</b>
      <i>Tom</i>
    </p>
  </body>
</html>
...