mecker. mecker. mecker.

lilith – der Plan zur Weltherrschaft

Ich entwickle lilith derzeit recht aktiv weiter. Neben so hübschen Sachen wie MathML ist es jetzt auch ei­ni­ger­ma­ßen fehlerfrei. Da waren ein paar echt grobe Schnitzer drin, dass ich erstaunt war, wie gut es dennoch lief. Aber der Teufel steckt ja be­kannt­lich im Detail.

multilang support

Habe ich auf Wunsch im­ple­men­tiert, wenn auch rudimentär und noch nicht für Syn­di­ca­ti­on. Multilang sieht man hier in diesem Post. Er rendert alles, was nicht zur primären Sprache gehört, in ein eigenes File und ich erhalte Links für mein Template.

Hab das Feature auch ei­ni­ger­ma­ßen gut do­ku­men­tiert und es funk­tio­niert schon echt gut. Nebenbei habe ich noch ein kleines Projekt angefangen, was wir ähnlich wie nanoc Seiten statisch rendert. Mein Ziel ist es, nanoc so gut wie möglich in Python nach­zu­bil­den und es mit Python Do­ku­men­ta­ti­on Tools wie Sphinx kompatibel zu machen, sodass man aus der Doku gleich noch eine schöne in­di­vi­du­el­le Website rendern kann.

lilith im Vergleich

Ich lasse mich ja sehr stark von anderen statischen Blog Ge­ne­ra­to­ren be­ein­flus­sen. Denn im Prinzip gibt es ja alles. Nur nicht so, wie ich es haben will.

PyBlosxom – http://pyblosxom.bluesock.org/

Ist eigentlich sogar eine Nach­bil­dung von Blosxom, aber das Projekt krankt an modernen Features. Sie haben doch schon im Jahre 2011 die Python 2.2 (!) Kom­pa­ti­bi­li­tät gebrochen. Allgemein finde ich den Ansatz über Callbacks echt gut (hab ich ja in lilith ähnlich), nur steckt dort eine immense, kaum do­ku­men­tier­te Kom­ple­xi­tät dahinter. Und da es neben statischem Rendering auch noch CGI- und WSGI-tauglich ist, lässt es sich recht schwer mit meinem Ansatz ver­glei­chen.

Pelican – http://docs.notmyidea.org/alexis/pelican/

Ist ganz hübsch, aber versucht WordPress nach­zu­bil­den und scheitert dort kläglich. Deren Post-Layout missfällt mir auch. Jede Sprache hat inzwischen ei­ni­ger­ma­ßen gute YAML-Im­ple­men­tie­run­gen und ich weiß nicht, wie lange ich daran gesessen habe, meine 80 Einträge YAML-konform zu machen. Aber einmal dort drin, ist es wirklich frei und maschinen-lesbar. Keine user­de­fi­ned Struktur, sondern exakte Vorgaben. Damit lässt es sich auch später leichter auf ein anderes Blogsystem migrieren.

Roadmap

Known issues

Lilith ist un­er­träg­lich langsam. Das fällt bei so zehn Einträgen vielleicht gar nicht auf. Aber bei mir muss er bei jedem Run einhundert Einträge neu Rendern. Schafft er immerhin in so drei bis acht (first run) Sekunden, aber da muss noch eine schlaue Erkennung anhand des letzten Zeits­tem­pels vom File her.

Ach, erwähnte ich schon, dass ich mit dem logging-Modul vertraut geworden bin? Ich habe sogar BUNTE Ausgabe!!1 Aber das sieht noch nicht so hübsch aus. Und nebenbei räumt lilith auch nicht auf. Wer den Titel ändert, wird immer eine Leiche von dem alten im output-Ordner haben.

Aber alles in allem sollte man es mal aus­pro­bie­ren :-)

blog comments powered by Disqus