[linux-l] Das Wikidok-Projekt (was: Grammar Design)

Volker Grabsch vog at notjusthosting.com
Mi Sep 21 17:28:05 CEST 2005


On Mon, Sep 19, 2005 at 09:51:39PM +0200, Oliver Bandel wrote:
> > Wozu? Damit tust du weder dir noch der Allgemeinheit noch den Usern
> > /
> > Anfängern einen Gefallen.
> 
> Mir tue ich einen gefallen damit. Kenne mich nun mit lex/yacc ganz gut
> aus.
> Besonders mit ocamllex/ocamlyacc. Super Tools! :)
> 
> Und Spaß macht's auch. :)

Klaro. Aber wenn du so gerne Parser schreibst, dann bau doch mal an
einer Baustelle, die das /wirklich/ gebrauchen kann. Zum Beispiel gibt
es im Bereich der Wikis noch viele Ungereimtheiten, fehlende Standards,
etc.  Ich habe ein Projekt gestartet, bin aber noch in der Planung,
welches viele dieser Misstände beheben soll:

        http://wikidok.njh6.de/
        
Dort findest du meine Motivation noch etwas genauer erklärt.


> Vermutlich würde am Ende ehz XML raus kommen, ohne daß ich damit
> angefangten habe. Insofern ist Dein Einwand mit dem Wiedererfinden des
> Rades
> vielleicht garnicht so verkehrt. ;-)
> Andererseits ist's doch recht lehrreich und interessant, sowas mal
> zusammen gebaut zu haben.

Wenn du sowas wirklich machen willst, schau doch mal ins
Wikidok-Projekt. Ich habe viel Recherchiert und noch kein Projekt
gefunden, das ebenfalls diese Ansprüche erhebt. Von der Architektur
her kann nur noch das "docutils"-Projekt mithalten, da werde ich noch
genauer reinschnuppern, aber bisher unterstützen sie im Eingang nur die
"ReST"-Sprache, also "yet antoher wiki language", ein festes internes
Format haben sie auch nicht (vielleicht ist das sogar ein Vorteil, keine
Ahnung), und an verschiedene Stylesheets scheinen sie noch nicht gedacht
zu haben, so wie's aussieht.

Entweder bau ich auf docutils auf (ist übrigens ein Python-Projekt),
oder eben auf eigene Werkzeuge. Egal wie, ich will die bisherigen
Wikisprachen parsen können, bzw. eine Teilmenge von ihnen. Die
Elemente der inhaltlichen Strukturierung übernehm ich, alle Form-
Sachen (Linienbreite der Tabelle, und so'n Müll) werden
ignoriert. Wenigstens MediaWiki- und Dokuwiki-Syntax will ich
unterstützen und jemand, der mir nen Parser liefert, ist sehr
willkommen. Am bestens als Vorlage den PHP-Code der Wikis hernehmen,
um deren Grammatik sauber zu analysieren.

Weiterhin soll es eine eigene Wikisprache geben, die sich an den
vorhandenen Sprachen anlehnt, aber mehr kann und mit Zeilenumbrüchen
ordentlich umgeht. Im Mediawiki kann ich z.B. nicht schreiben:

; test : bla bl bl bl bl bl bl bl bl bl bla b bn bl bl bl bl bl
         bl bl bl bl bl bl b lb l

Nein, ich muss den "bla ..."-Kram alles in eine Zeile packen.
Naja, solche Sachen halt. Aber MediaWiki brauch ich eben trotzdem,
damit von vorhandene Texte wiederverwenden kann, und weil das die
einzige halbwegs weit verbreitete Wiki-Sprache ist, auch wenn sie
leider (wie alle Wikisprachen) nicht wirklich standisiert wurde.


Viele Grüße,

	Volker

-- 
Volker Grabsch
---<<(())>>---
Administrator
NotJustHosting GbR



Mehr Informationen über die Mailingliste linux-l