2009-09-13 8 views
5

Chciałbym użyć wbudowanej funkcji Textmate Tidy (Ctrl + Shift + H) do wcięcia mojego kodu HTML "bez modyfikacji czegokolwiek" w kodzie. Piszę już całkiem zgrabny HTML, potrzebuję tylko Tidy do wcięcia mojego kodu za pomocą Soft-tabs.Konfigurowanie i używanie HTML Tidy

Obecnie łamie wiele rzeczy, a formatowanie również nie jest doskonałe. Czy ktoś może napisać dla mnie konfigurację Tidy, która to robi:

1 - Tylko wcięcia, nic więcej.

2 - Nie potrzebuję niektórych znaczników do pchania na linie nowej. Na przykład: Tidy robi to:

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

oryginalny kod (lub co muszę):

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

..so jeśli mogę wstępnie określić, które tagi mają być przechowywane inline, która byłaby wspaniały.

Zasadniczo chciałbym powielić funkcję formatowania HTML programu Dreamweaver za pomocą Tidy, ale dwie rzeczy wymienione powyżej są naprawdę ważne.

myślę, że to jest mój obecny Tidy config (domyślnie):

${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` 

będę bardzo wdzięczny za każdą pomoc. Dzięki!

Odpowiedz

1

W pliku konfiguracyjnym Tiddy ustaw opcję wcięcia na no.

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

+0

Powinienem ustawić wcięcie na NIE, mimo że chcę wcięcia? – 3zzy

+0

@Nimbuz, tak, to prawda. "--indent yes" spowoduje przepisanie, którego próbujesz uniknąć. Spróbuj sam. –

6

Tidy nie ma naprawdę to zrobić tak, jak chcesz go użyć. Nie jest to uniwersalna biblioteka formatowania kodów, jest to narzędzie do czyszczenia HTML. Od the homepage:

Kilka osób zapytało, czy Tidy może zachować oryginalny układ. I Przykro mi to powiedzieć, że będzie to bardzo trudne do obsłużenia ze względu na sposób, w jaki jest realizowany Tidy . Tidy rozpoczyna się od budowania czystego drzewa parsowania z pliku źródłowego . Drzewo analizy nie zawiera żadnych informacji na temat oryginalnego układu .

I naprawdę nie sądzę, jest to dobry sposób, aby dostać się do tego, co chcesz, ale można grać z whole list of options i zobaczyć, które z nich są bliżej do ideału.

+0

Dzięki za informacje, ale spróbowałem użyć tagów inline, nigdy nie działają zgodnie z oczekiwaniami. – 3zzy

-3

Wyliczyłem inline-tags, działa już teraz!

+1

To nie pomaga ludziom, którzy również mają ten sam problem. Pamiętaj, aby rozwinąć znalezione rozwiązania. –

-1

Tak, Nimbuz, wspomniałeś również "Obecnie łamie wiele rzeczy" - masz na myśli wprowadzenie łamania linii lub generowanie HTML, który nie wyświetla się poprawnie? Ponieważ to drugie dzieje się ze mną bardzo źle, a jeśli udało ci się to zrobić z użyciem specjalnej konfiguracji, chciałbym to zobaczyć (próbując zrobić to samo, co chcesz ... po prostu formatowanie). dzięki!

0

Zmiana --indent yes na --indent auto działa dla mnie. Nie można jej konfigurować, ale wydaje się, że dobrze poradzi sobie w większości przypadków.

1

Mam nadzieję, że to być użyteczne dla ludzi potykając się na tej stronie:

Jeśli zaznaczyć tekst, który chcesz sformatować (aka reindent) TextMate zastosuje konkretnych działań tylko do ten wybór. Tak więc, jeśli CMD + dokument, a następnie zastosować schludne (albo z wiązek> Menu HTML lub z CTRL + SHIFT + H skrót) będzie wciąć wybór, pomijanie powiadomień na sprawdzanie poprawności, które ma miejsce po uruchomieniu funkcji Tidy bez żadnego wyboru. Te ostrzeżenia mogą czasami być niepotrzebne, ponieważ często pracujemy nad fragmentami stron (przynajmniej tak robię).

Powiązane problemy