2010-03-22 4 views
15

HTML Tidy имеет эту причудливую привычку положить новую строку до закрывающий тег. Например:Как мне получить HTML Tidy, чтобы не поставить новую строку перед закрытием тегов?

<p>Some text</p> 

становится

<p>Some text 
</p> 

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

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

ответ

1

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

Я использую Tidy с рубином

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

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

+0

Я смотрел на эти варианты, прежде чем, и ни один из них не кажется, сделать потребу. Кстати, я запускаю TIDY через Notepad ++, если это имеет значение. – markvgti

+0

не знаю, как это сделать с помощью NotePad ++, но может помочь 'wrap = 160'. Но проблема, которую вы видите, может быть связана с notePad ++ – surajz

-7

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

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

Вопрос не о php ... –

12

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

Это то, что я использую для минимально инвазивной уборки (не добавляющих DOCTYPES/головы тегов и т.д.):

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