Как заставить HTML Tidy не помещать символ новой строки перед закрытием тегов?

HTML У Tidy есть эта причудливая привычка помещать ярлык перед. Например:

<p>Some text</p>

становится

<p>Some text
</p>

Как сообщить Tidy оставить закрывающий тег на той же строке, что и конец содержимого?

Btw, я запускаю Tidy через Notepad ++, если это имеет значение.

Ответы

Ответ 1

Убедитесь, что для параметра vertical-space установлено значение no. После долгих разочарований я узнал единственное, что делает этот коммутатор, - это испортить ваш уже довольно хорошо отформатированный html, добавив новые строки, где вы их не хотите.

Это то, что я использую для минимально-инвазивного tidying (без добавления doctypes/head tags и т.д.):

tidy -mqi --doctype omit --show-body-only true --show-warnings no --vertical-space no --wrap 0

Ответ 2

hmm Я не вижу его в окнах.

Я использую Tidy с ruby ​​

   @tidy.options.output_xhtml = true
   @tidy.options.show_body_only = true
   @tidy.clean('<p>Some text</p>')

Я также запускал опцию script в unbuntu (tidy -m test.htm), но не видел эту проблему. Вы можете управлять интервалом, используя параметры в http://tidy.sourceforge.net/docs/quickref.html#PrettyPrintHeader

Ответ 3

В php вы можете использовать:

$buffer = preg_replace('/\n<\//smUi','</',$buffer);