Björn Höhrmann: HTML Tidy - Vorschläge, Bugs, etc.

Moin,

HTML Tidy ist ein von Dave Raggett (Openwave/W3C) entwickeltes Programm zum Aufräumen von HTML/XHTML-Dokumenten. Tidy kann dabei viele Fehler selber beheben und lenkt die Aufmerksamkeit des Benutzers auf Fehler, die es nicht ohne weiteres beheben kann. Das Programm ist unter

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

zu finden.

Die letzte Version ist vom 4. August 2000. Dave Raggett hatte seit dem nicht mehr die Zeit, eine neue Version zu veröffentlichen. Aus einer Reihe von Gründen habe ich im April auf der mailing liste html-tidy@w3.org diverse Vorschläge zur Verbesserung von Tidy gemacht, am wichtigsten dabei, HTML Tidy in eine C-Bibliothek zu verwandeln. Nach der Überwindung einiger Hürden, insbesondere Dave an einer Diskussion darüber zu beteiligen, haben dann mehrere Gleichgesinnte mit mir damit begonnen, den Quellcode von HTML Tidy zu überarbeiten. Das ganze ist ein Project bei SourceForge:

http://sourceforge.net/projects/tidy
  http://tidy.sourceforge.net/

Wir haben die an html-tidy@w3.org gesandten Bugs und Verbesserungsvorschläge zusammengesammelt und sind momentan dabei, diese zu korrigieren/umzusetzen, ebenso wie wir die letzten Arbeitsdateien von Dave in die Codebase einarbeiten und sonstige Verbesserungen vornehmen. Wir sind damit schon recht weit gekommen und planen jetzt eine neue Version zum Jahrestag der vorigen zu veröffentlichen, danach wird die Umstellung zur Bibliothek in Angriff genommen.

Neben der eigenständigen Version gibt es auch viele andere Programme, die von HTML Tidy Gebrauch machen, so z.B. TidyGUI, HTML-Kit und Homesite um nur einige zu nennen. Eine passende Bibliothek wird es noch leichter machen, Tidy in andere Software einzubinden.

Ich zum Beispiel werde ein Perl-Interface schreiben, dass dann auch z.B. im W3C Validator Verwendung finden wird. Das Projekt findet sich auch bei Sourceforge

http://sourceforge.net/projects/ptidy

allerdings wird es noch seine Zeit dauern, bis sich dort Inhalte finden. Ebenso gibt es einen Java-Port von HTML Tidy, JTidy:

http://sourceforge.net/projects/jtidy

Die Entwickler warten noch darauf, dass wir mit der C-Version weit genug sind, dass es sich lohnt, die Versionen anzugleichen, momentan basiert JTidy auf der 04 Aug 2000 Version.

Ich möchte hiermit dazu aufrufen, sich in irgend einer Form an den verschiedenen Entwicklungen zu beteiligen. Wer Bugs kennt oder sich schon lange das eine odere andere Feature gewünscht hat, oder sich sonstwie beteiligen möchte, sollte das jetzt tun.

Für Bugs gibt es den Bug Tracker:

http://sourceforge.net/tracker/?group_id=27659&atid=390963

Für feature requests:

http://sourceforge.net/tracker/?atid=390966&group_id=27659&func=browse

Es gibt auch eine Mailing liste:

http://sourceforge.net/mail/?group_id=27659

Ich werde in Zukunft aktuelle Win32 Binaries zur Verfügung stellen, wenn jemand also prüfen will, ob es einen Bug immernoch gibt oder ob neue drin sind oder sonstwas tun möchte, kann sich diese unter

http://www.websitedev.de/tidy/current/tidy.exe

besorgen.

Falls hier zufällig jemand zu den Perl XS Hackern gehört und Interesse an einem HTML::Parser::Tidy Modul hat, sollte er sich vielleicht mal bei mir melden, ich habe bestimmt Arbeit :-)

Grüsse,
  Björn Höhrmann

  1. Hallo Bjoern,

    schoen, hier von dir zu lesen. :-)

    HTML Tidy ist ein von Dave Raggett (Openwave/W3C) entwickeltes Programm zum Aufräumen von HTML/XHTML-Dokumenten. ....

    ...

    Ich möchte hiermit dazu aufrufen, sich in irgend einer Form an den verschiedenen Entwicklungen zu beteiligen. Wer Bugs kennt oder sich schon lange das eine odere andere Feature gewünscht hat, oder sich sonstwie beteiligen möchte, sollte das jetzt tun.

    Es gibt wohl keinen Dauergast in diesem Forum, der Tidy nicht kennt. Hm, oder etwa doch? *hoffentlich ruft jetzt niemand hier ;-)*
    Selbst arbeite ich regelmaessig damit und habe mir schon lange das eine oder andere Feature gewuenscht. Ich werde also ganz sicher in den naechsten Tagen einmal vorbeisehen, welche Vorschlaege bereits eingereicht oder diskutiert wurden, und meinen bescheidenen Beitrag leisten.
    Ich wuensche mir, dass deinem Aufruf moeglichst viele hier mit konstruktiven Vorschlaegen und vielleicht auch tatkraeftiger Hilfe folgen. Denn die Verbreitung von Tidy hilft hoffentlich auch dem vielfach vollkommen unoetigen Wildwuchs proprietaerer Entwicklungen und banaler Anfaengerfehler enttgegen zu wirken - fuer ein schrankenloses Web :-)

    Falls hier zufällig jemand zu den Perl XS Hackern gehört und Interesse an einem HTML::Parser::Tidy Modul hat, sollte er sich vielleicht mal bei mir melden, ich habe bestimmt Arbeit :-)

    Argh, zieh uns hier nicht die besten Leute ab, wir haben selbst Arbeit genug *gg*

    Viele Gruesse
     Kess

  2. Hi Bjoern,

    ich finde die Sache mit der C-Bibliothek sehr interessant -
    vielleicht ist das SELFHtml-Forum nicht der richtige Ort fuer solche Fragen,
    aber ich stelle sie trotzdem mal hier:
    Was wird die Bibliothek alles umfassen? Geht es wirklich nur um das "Aufraeumen"
    am Schluss, oder wird es Moeglichkeiten geben, z.B. eine Liste mit erlaubten
    Tags+Parametern abzufragen?
    Ich frage das vor allem wegen Bluefish, ein HTML-Editor an dem ich mitarbeite.
    Wir benutzen dort einen selbstgebauten DTD-Parser, der die erlaubten Tags
    herausfiltert und zur Autocompletion benutzt (wobei das natuerlich nicht
    die einzige Einsatzmoeglichkeit fuer so etwas ist).
    Je nach Funktionsumfang der Bibliothek wuerde es dort wirklich Sinn machen,
    Tidy direkt zu "includieren" (bitte jetzt lachen, Regulars ;-)
    Momentan ist Tidy als externer Filter eingebaut, und verrichtet dort auch
    schon sehr gute Arbeit.

    Viele Gruesse,
    Gero

    1. Was wird die Bibliothek alles umfassen?

      Das wissen wir noch nicht :-)

      Geht es wirklich nur um das "Aufraeumen"
      am Schluss, oder wird es Moeglichkeiten geben, z.B. eine Liste mit erlaubten
      Tags+Parametern abzufragen?

      Das wissen wir noch nicht :-) Wenn du das gerne als Feature hättest, kannst du es gerne vorschlagen. Ich bin mir allerdings nicht sicher, ob du das wirklich willst, die

      Element => Version

      und

      Attribut => Version

      zuordnung ist nämlich nicht ganz optimal gelöst zur Zeit, wenn du

      Ich frage das vor allem wegen Bluefish, ein HTML-Editor an dem ich mitarbeite.
      Wir benutzen dort einen selbstgebauten DTD-Parser, der die erlaubten Tags
      herausfiltert und zur Autocompletion benutzt (wobei das natuerlich nicht
      die einzige Einsatzmoeglichkeit fuer so etwas ist).

      wirklich mit einer bestimmten DTD arbeiten kannst, bist du in jedem Fall besser dran als mit Tidy, für den Moment zumindest.

  3. moin moin björn,

    ... viel gelöscht ...

    das ist wirklich eine ausgesprochen gute idee!
    ich nutze tidy auch des öfteren und habe auch mal dies oder das gewüscht, ;-) - wer wohl nicht - deshalb freue ich mich, dass du und die anderen nun auch was tun wollt in diese richtung.
    dass ich was selbst beitragen könnte, wird angesichts meiner perl unkentnisse wohl nicht der fall, aber ich werde sicher die neue versionen begrüßen und nützen.

    schöne grüße in den "hohen" norden
    thomas