[pmwiki-users-de] Padleft im PMWiki umsetzen
Michael Engelke
PmWiki at MEngelke.de
Fr Jan 25 11:58:21 CST 2008
maglister at web.de schrieb:
> Ja, welch ein Zauber!
>
> Hab da gleich mal eine 'padleft.php' erstellt und sie in der 'cookbook_inc.php' angemeldet. Und es funktioniert auf Anhieb! Sehr schön!
> Einen klitzekleinen Schönheitsfehler gibt es da noch:
>
> Ab Seite 11 abwärts sind die Seiten natürlich nicht mehr bekannt (11-11=0). Kann man da noch eine Bedingung einbauen, welche ab "0" nur "++++" schreibt?
> Ach nein, das geht ja gar nicht! Padleft wertet ja kein Ergebnis aus, es bringt das Ergebnis in Form. Naja, auch nicht schlimm.
>
Ich verstehe das Problem nicht genau! Ich habe mal Spaßeshalber das
Markup umgeschrieben - so das eine eigene Funktion ausgeführt wird:
Markup('padleft','inline',"/\\{\\{padleft:([^|]+)\|([0-9]+)\|([^|]+)\\}\\}/e","mystrpad('$1',$2,'$3')");
function mystrpad($str,$len,$pad) {
return str_pad($str,$len,$pad,STR_PAD_LEFT);
}
Jetzt brauchst Du nur noch die Funktion mystrpad nach deinen
Vorstellungen anpassen. (PHP-Kenntnisse Vorausgesetzt)
Wenn Du sowieso MarkupExpression einsetzt, könntest Du auch folgene
Möglichkeit einsetzen:
SDV($MarkupExpr['padleft'],
'str_pad($args[0],$args[1],$args[2],STR_PAD_LEFT)');
Beispiel: {(padleft foobar 20 .)} ..............foobar
Getestet mit: pmwiki-2.2.0-beta65
> Dein Markup ist prima! Ganz herzlichen Dank dafür.
>
> Ich muß unbedingt hinter das Geheimnis dieser Aneinanderreiheung von Zeichen kommen.
http://www.php-faq.de/ch/ch-regexp.html
> Wer kümmerliche Englischkenntnisse hat (so wie ich) ist da klar im Nachteil. PHP.net brachte mich nicht weiter, trotz ausführlicher deutscher Erklärung.
Pmwiki.org hat eigentlich alles wichtige auf Deutsch erklärt:
http://www.pmwiki.org/wiki/PmWikiDe/CustomMarkup
Ich selber habe ebenfalls schlechte Englischkenntnisse, aber Google und
die Übersetzungsfunktionen helfen da manchmal weiter...
Wegen meiner Englischkenntnisse, habe meine selbstgeschriebenden
Erweiterungen auch nicht in pmwiki.org veröffentlicht:
http://mengelke.dyndns.org/pmwiki/wiki/Kochbuch
> Ich hab die passenderen Seiten noch gar nicht entdeckt im Netz.
>
Also erstmal: http://www.pmwiki.de/
Für PHP: http://www.php-faq.de/ http://www.selfphp.de/
http://www.php.net/manual/de/
Und meine wichtigste Seite: http://www.google.de/ ;-)
--
eMail: PmWiki at MEngelke.de ICQ: 267544462 Homepage: www.MEngelke.de