Hallo Leute,
kleines Update bzgl. "monobook": ich bin neuer Maintainer, und betreue von nun an "monobook". Dazu habe ich mich mal ins Zeug gelegt und das Template komplett neu geschrieben (und zuerst vorgestern als "monodoku" veröffentlich, nach Abstimmung mit Terence J. Grants und chimeric aber in "monobook" umbenannt um die Nachfolge anzutreten) und gerade eben eine neue Version
veröffentlicht (aber
ACHTUNG: an einer Update-Anleitung für bestehende Installation werkel' ich noch, für heute bin ich aber zu müde dafür).
Ich nutzte bis vor kurzem Terence J. Grant's "Monobook for DokuWiki" auch sehr intensiv (und hab deshalb als ich neulich mal Terence J. Grants Seite aufgerufen hab - noch in Weihnachtstimmung :-P - mal wieder was gespendet) und machte ebenso Sorgen um die Weiterentwicklung. Ich habe mich anschließend dazu entschlossen, mir die Rosinen sowie die echt super guten Ideen von "Monobook for DokuWiki" herauszupicken und eine eigene Version zu schreiben.
Gründe für den Rewrite:
Die Styles selbst sind eine ziemlich harte Kopie der originalen MediaWiki "monobook" css- und js-Dateien des leicht angepassten "monobook" für Wikipedia. Ich denke TJG hatte schnelle Updates damit im Sinn (heißt: wenn die Wikipedia-Website ihre styles updatet, wollte er IMHO das statische Zeug kopieren, einige Zeilen auskommentieren und damit die Portierung durchziehen). Einige Hinweise darauf finden sich in der README von TJG. Nun ist es aber so, dass dieses Vorgehen einige Nachteile mit sich bringt (dazu später) und an den für DokuWiki relevanten Parts der Styles sich praktisch nichts mehr ändert. Wenn Wikipedia ein komplett neues Layout bekommt, sollte man IMHO zudem ein neues Template anlegen anstatt das alte komplett umzumodeln - schließlich muss man die Leute, die den alten Look präferieren ja nicht unbedingt vor die Wahl stellen: komplett vom alten Look verabschieden oder von Updates abgeschnitten sein.
Die Nachteile des beschriebenen Vorgehens wiegen *für mich* (andere mögen das anders sehen) die Vorteile keinesfalls auf:
[*] Ganz schöner Overhead (der Großteil der Styles werden nicht genutzt)
[*] Große Probleme im SSL/TLS/HTTPS-Umgebungen (die Styles haben hardgecodete Verweise auf http:// Elemente, was zu unverschlüsselten Inhalten in der verschlüsselten Umgebung und damit zu entsprechenden Warnungen führt).
[*] Teilweise werden Elemente (z.B. bullet.gif sofern Englisch als Sprache eingestellt ist) direkt von
http://upload.wikimedia.org geladen (aber nicht genutzt, daran merkt man halt, dass das eigentlich Wikipedia statt der "richtigen" Monobook-Styles sind). LAN-only-Wikis bekommen daher einge Grafiken nicht... außerdem ist Traffic-Klau nicht die feine Englische Art und n' DNS-Request wird auch verpulvert ;-).
[*] Die von DokuWiki gebotene styles.ini wird nicht genutzt. Das führt zu höherem Traffic-Verbrauch (sollte aber nur für größere Sites relavant sein) und zu weitaus mehr HTTP-Requests (was den Seitenaufbau doch nicht unerheblich verlangsamt). Außerdem ist "monobook for DokuWiki" deshalb zur DokuWiki-Option "compress" (JavaScript und Stylesheets komprimieren) kompatibel.
[*] "Monobook for DokuWiki" benötigte das ebenfalls von Terence J. Grants geschriebene "Display Wiki Page"-plugin. Letzteres ist - zumindest für die im Template verwendete Art - seit der neusten DokuWiki-Version obsolet, da DokuWiki seit "Lemming" selbst die PHP-Funktionen "
tpl_include_page()" sowie "
auth_quickaclcheck()" mitbringt, die alles Erforderliche erledigen.
[*] Es sind keine mediamanager-styles vorhanden, der mediamanager sieht dementsprechend aus.
[*] Der Linkwizard funktioniert praktisch nicht, ebenfalls wegen fehlender Styles
[*] Vieles andere klappt auch nicht. Das merkt man schnell, wenn man die wiki:syntax aufruft (auch Kleinigkeiten: mail-icon, Windows-Share etc).
Naja. Jetzt hab ich das mal auf neue Füße gestellt und kann hoffentlich einigen damit ein wenig Freude bereiten. Funktionale Neuerungen und Features:
[*] Keine zusätzlichen Plugins benötigt, also auch kein "Display Wikipages"
[*] Automatisches Zusammenspiel mit dem translation- und ODT-Plugin
[*] styles.ini wird genutzt, daher keine speziellen Konfigurationen benötigt (DokuWiki-Option "compress" (JavaScript und Stylesheets komprimieren) funktioniert)
[*] Weniger HTTP-Requests und kleinere Seiten (da weniger nicht genutzes CSS übertragen wird)
[*] IMHO stark verbessertes Print-Layout (z.B. werden externe URLs per CSS :after hinter den Text geschrieben und möglichst wenig Farben genutzt).
[*] Mehr Konfigurationsmöglichkeiten. So ist z.B Verweis auf Print-Version in der Toolbox ist optional (da die styles.ini genutzt wird werden die passenden Styles automatisch genutzt, sobald ein Nutzer im Browser auf Datei\Drucken bzw. Datei\Druckvorschau klick) und ein konfigurierbarer Spendenlink vorhanden (damit man um seine eigene öffentlich Wiki finanzieren zu können nicht frickeln muss).
[*] Funktioniert besser in SSL/TLS/HTTPS und geschlossenen LAN-Umgebungen (da keine Dateien hardgecoded via http:// und/oder upload.wikimedia.org geladen werden)
[*] Vollständige Übersetzung bei "Artikel Zitieren"
Sonstige Features:
[*] Stylesheets sind up2date, alle aktuellen DokuWiki-Features sollten funktionieren.
[*] Leichtes Einbinden von eigenen print/screen/rtl-CSS und eigenem JavaScript, ohne dabei bei Updates die Änderungen immer wieder wiederholen zu müssen.
[*] Eine recht ausführliche README (denke ich jedenfalls).
Nachteile:
[*] Nicht ausgiebig mit RightToLeft-Sprachen getestet und insgesamt natürlich einfach weniger erprobt. Über Vorschläge und Bugreports würde ich mich freuen, wenngleich ich mir Mühe gegeben habe und es daher hoffentlich alles gut klappt.
[*] Nur Englisch, Deutsch und Französisch als Sprache. Weitere Übersetzungen sind natürlich willkommen :-)
[*] Nur DokuWiki 2009-12-25 "Lemming" oder neuer, ältere Versionen werden nicht unterstützt.
BTW an die Coder hier, weil ich es bei "monobook for DokuWiki" wieder gesehen habe:
1. $_REQUEST ist ggf böse, s.
http://www.suspekt.org/2008/10/01/php-53-and-delayed-cross-site-request-forgerieshijacking/. Ein (zugegebener Maßen an den Haaren herangezogenes) Beispiel: mit einem gemeinen Cookie könnte man bei "monobook for DokuWiki" z.B. das printlayout erzwingen und so dem z.B. den Seiteninhaber vorgaukelt, dass das irgendwas kaputt sei - und selbiger verzweifelt versucht, alles mögliche zu (de)aktivieren, ohne Effekt.
2. Die Inhalte von $_SERVER sollte man prüfen. Wenngleich der Name anderes suggeriert, enthalten viele $_SERVER-Werte vom Client beeinflussbare Werte.
otti_mania:1258261315 wrote
Wieso sollte das TPL weiterentwickelt werden?
1. Mal Ehrlich es läuft und ist 100% stable!
Naja... SSL anyone? ;-)
otti_mania:1258261315 wrote
2. Wird innerhalb der nächsten 6 Monate Wikipedia auch das Design ändern (siehe Beta Design Pfase).
Wie gesagt: wenn es doch arg unterschiedlich aussieht wäre meiner Meinung nach ein neues, parallel gepflegtes Template ggf. die bessere Wahl, um niemanden zwischen geliebtem Look und Updates entscheiden lassen zu müssen. Oder man macht es wenigstens Konfigurierbar, wenn das nicht zu frickelig ist.
otti_mania:1258261315 wrote
3. Bei Neuerungen von DokuWiki achten die Entwickler ja drauf das keine CSS Räume verändert werden.
Aber es kommen neue CSS-"Räume" und Features hinzu... <file>, Linkwizard etc. etc...
Kein Frage TJC hat super Arbeit geleistet, aber dennoch muss sich hin und wieder jemand um ein Template kümmern ;-). Aber das ist ja das schöne an OSS: es kann weitergehen. Ich hoffe das klappt soweit :-P.
Gruß
Andreas