Настройка и использование HTML Tidy - PullRequest
5 голосов
/ 13 сентября 2009

Я хотел бы использовать встроенную в Textmate функциональность Tidy (Ctrl + Shift + H) для отступа моего HTML «без каких-либо изменений» в коде. Я уже пишу довольно аккуратный HTML, мне просто нужно, чтобы Tidy сделал отступ для своего кода с помощью Soft-tabs.

В настоящее время это ломает много вещей, и форматирование тоже не идеально. Может кто-нибудь, пожалуйста, напишите конфигурацию Tidy для меня, которая делает это:

1 - Только отступы, ничего больше.

2 - Мне не нужны определенные теги для переноса на новую строку. Например: Tidy делает это:

<li>
  <a href="#">link</a>
</li>

Оригинальный код (или Что мне нужно):

<li><a href="#">link</a></li>

.. так что, если я смогу заранее определить, какие теги должны быть встроены, это было бы здорово.

По сути, я хотел бы дублировать функциональность HTML-форматирования Dreamweaver с Tidy, но две вещи, упомянутые выше, действительно важны.

Я думаю, что это мой текущий (по умолчанию?) Tidy config:

${TM_TIDY:-tidy}" -f /tmp/tm_tidy_errors -iq -utf8 \
      -wrap 0 --tab-size $TM_TAB_SIZE --indent-spaces $TM_TAB_SIZE \
    --indent yes \
      ${TM_XHTML:+-asxhtml --output-xhtml yes} \
      ${TM_SELECTED_TEXT:+--show-body-only yes} \
      --enclose-text yes \
      --doctype strict \
    --wrap-php no \
      --tidy-mark no`

Я был бы очень признателен за любую помощь. Спасибо!

Ответы [ 7 ]

6 голосов
/ 02 октября 2009

Tidy не предназначен для того, чтобы делать это так, как вы хотите. Это не универсальная библиотека форматирования кода, это инструмент для очистки HTML. С на главную страницу :

Несколько человек спрашивали, если Тиди может сохранить первоначальный макет. я извините, что это будет очень трудно поддерживать из-за способа Приборка реализована. Tidy начинается с построить чистое дерево разбора из исходный файл. Дерево разбора не содержать любую информацию о оригинальный макет.

Я действительно не думаю, что есть хороший способ заставить его делать то, что вы хотите, но вы можете поиграть с полным списком опций и посмотреть, какие из них ближе к вашему идеалу.

2 голосов
/ 11 декабря 2011

Попробуйте Pretty Diff. Он украсит ваш код, не делая никаких предположений о вашем коде. Вы можете отправить небольшие неполные фрагменты кода, и Pretty Diff выведет этот небольшой фрагмент с отступом.

http://prettydiff.com/?m=beautify&html

1 голос
/ 17 сентября 2013

Надеюсь, это будет полезно людям, спотыкающимся на этой странице:

Если вы выберете текст, который вы хотите отформатировать (он же повторный отступ), TextMate будет применять определенные действия только к этому выделению. Итак, если вы CMD + A вашего документа и затем примените Tidy (либо из меню Bundles> HTML, либо с помощью CTRL + SHIFT + H ярлык), он будет делать отступ для выбора, пропуская предупреждения о проверке, которые происходят, когда вы запускаете Tidy без выбора. Эти оповещения иногда могут быть ненужными, так как мы часто работаем над фрагментами страниц (по крайней мере, я делаю).

1 голос
/ 13 сентября 2009

В файле конфигурации tiddy установите параметр отступа на номер.

http://www.w3.org/People/Raggett/tidy/

0 голосов
/ 28 апреля 2010

Изменение --indent yes на --indent auto работает для меня. Его нельзя настроить, но, похоже, он хорошо справляется с большинством случаев.

0 голосов
/ 20 января 2010

итак, Nimbuz, вы также упомянули: «В настоящее время он ломает много вещей» - вы имеете в виду, что он вводит разрывы строк или генерирует HTML, который не отображается должным образом? Потому что последнее происходит со мной довольно плохо, и если у вас есть это для работы со специальным конфигом, я хотел бы увидеть его (пытаясь сделать то же самое, что вы хотите ... просто форматирование). Спасибо!

0 голосов
/ 07 октября 2009

Разобрался со встроенными тегами, работает сейчас!

...