Strana: 1

Štítek: tidy

Převod nevalidního HTML na validní XHTML

Naštěstí je dostatečně známý program TiDy, ale bohužel obsahuje i docela velkou škálu nastavení. Uvádím zde ty, které jsem použil já a s docela dobrým výsledkem. Jediné s čím si TiDy neporadilo bylo <a name="2013344"></a>. Ale s tím už se dá žít a samozřejmě odstranit jinak.

TiDy z konzole

TiDy si můžete celkem snadno nainstalovat příkazem urpmi tidy. Pokud patříte k nešťastníkům s MS Windows navštivte stránku projektu TiDy, je tam něco i pro vás.

TiDy má samozřejmě i spoustu grafických nadstaveb. Je integrována například do editoru PSPad, do výborného rozšíření HTML Validator pro Firefox a podobně.

Spuštění TiDy z konzole:

tidy -f chyby.txt -config config.txt zdroj.html > vysledek.html

V souboru chyby.txt najdete chyby, které TiDy nedokázalo ze souboru odstranit.

Nastavení TiDy je uloženo v souboru config.txt (více k nastavení TiDy):

char-encoding:                  utf8
indent:                         true
show-body-only:                 false
output-xhtml:                   true
add-xml-decl:                   true
doctype:                        strict
clean:                          true
drop-proprietary-attributes     true
enclose-block-text:             true
enclose-text:                   true
bare:                           true
logical-emphasis:               true
alt-text:                       obrazek
fix-uri:                        true
wrap:                           200

To samé v PHP

Podobně můžete s TiDy pracovat v PHP, potřebujete samozřejmě nainstalované rozšíření PHP TiDy.

// promenna $html obsahuje vstupni, nevalidni, HTML
$config = array(
        'indent'                => true,
        'show-body-only'        => false,
        'output-xhtml'          => true,
        'add-xml-decl'          => true,
        'doctype'               => "strict",
        'clean'                 => true,
        'enclose-block-text'    => true,
        'enclose-text'          => true,
        'repeated-attributes'   => true,
        'bare'                  => true,
        'logical-emphasis'      => true,
        'alt-text'              => "obrazek",
        'fix-uri'               => true,
        'wrap'                  => 200,
        'drop-proprietary-attributes' => true
        );
$tidy = new tidy;
$tidy->parseString($html, $config, 'utf8');
$tidy->cleanRepair();
echo $tidy;

Pokud s TiDy „nečistíte“ celou HTML stránku, ale jen její část, tak si nastavte show-body-only na true. Můžete si tak třeba vyčistit své články, uložené v databázi, nebo třeba komentáře.

| | Články | Trvalý odkaz | Komentáře (8) | Štítky: , ,