Hallo!
Ich hab meine erste Extension zusammen gefrickelt, dank der heftigen Hilfe hier im Forum läuft sie auch! Ich halte Sie aber für ewas arg gefbastelt, deswegen stelle ich sie nicht ins Repository. Aber vielleicht ist sie ja doch für wen interessant, deswegen häng ich sie mal hier an.
Es ist eine Integration von SmartyPants in TYPOlight. Die Erweiterung kann:
- Gerade Gänsefüßschen in richtige wandeln,
- falsche Leerzeichen vor Satzzeichen entfernen,
- --, und --- in die passenden Geviertstrich umwandeln,
- aus drei Punkten die Ellipse machen,
- ect.
An und abgestellt wird das ganze auf dem "Startpunkt einer Webseite", da verschiedene Sprachen unterschiedliche Regeln für die entsprechenden Gänsefüßschen haben, wird auch die Sprache der Startseite ausgelesen.
Was mir nicht gelungen: Ich hab es nicht geschafft, im Backend eine funktionierende Eingabe der Entitäten über ein Formular zu machen. Irgendwie haben Browser und PHP da immer übel zusammengespielt und aus Eingaben wie „ das entsprechende Zeichen gemacht, oder übleres. :-(
Als Ausweg hab ich es mir leicht gemacht, in jedem Sprachverzeichnis liegt jetzt auch eine Datei "typography.php", die die Definitionen für die entsprechende Sprache enthält (im Moment Deutsch und Englisch). Finde ich nicht so elegant, jetzt muss man eine Datei bearbeiten, wenn man statt Gänsefüßchen die im Deutschen auch zulässigen >>französchen Anführungszeichen<< haben will.
Was mir auch nicht gefällt ist, dass ich die orginal smartypants.php vom oben genannten Link ziemlich ungehackt habe, um meine Einstellungen durch reichen zu können. Aber im Orginal wird das alles über Konstanten definiert! :-(
Alles in allem ist ein ziemliches Frickelwerk geworden, aber es funktioniert! Vielleicht interessiert das ganze ja wen hier im Forum!
Live zu sehen ist das ganze unter: http://rw.larp-welt.de/ (wenn die Seite fertig ist, zieht sie um auf http://www.rodgauer-workshop.de/).
Noch was, das mir aufgefallen ist: Dateisystempfade werden in den meisten Erweiterungen direkt angegeben
PHP-Code:
TL_ROOT.'/folder/folder/folder/file.php'
Wäre es nicht besser da OS-unabhängig
PHP-Code:
TL_ROOT.DS.'folder'.DS.'folder'.DS.'folder'.DS.'file.php'
zu nehmen?
Tschüss
Marcus (aka Tiggr)
Lesezeichen