[TYPO3-german] RTE & echte Zeilenumbrüche
Peter Linzenkirchner
liste at lisardo.de
Thu Jan 6 18:46:26 CET 2011
Hallo Markus,
also dem RTE abzugewöhnen, dass er <br> innerhalb des <pre> schreibt, dürfte zu aufwändig sein, da hängen einfach zu viele Transformationen dran. Wenn ich richtig verstanden habe, geht es dir darum, dass im Browser des Besuchers der <pre>-Tag korrekt aufgebaut ist - wie er im RTE besammen ist, spielt eigentlich keine Rolle. Also würde ich da ansetzen.
1. im RTE einen <pre>-Tag einfügen, z. B. über Blockformat "Vorformatiert"
2. über die Zwischenablage in diesen Tag den Quellcode einkopieren.
Dabei werden die Zeilenschaltungen im Quellcode zu <br>. Klappt zumindest bei mir im Firefox ganz gut.
Wenn man im RTE weiterschreiben will, muss für Zeilenschaltungen Umschalt-Return gedrückt werden, sonst entstehen lauter <pre>-Tags pro Zeile.
Damit erhalte ich einen <pre>-Tag, der von <br> durchsetzt ist, der aber im RTE gut bearbeitet werden kann.
3. Ins Typoscript-Setup diesen Code:
includeLibs.userFunc = fileadmin/scripts/userFunc.php
lib.parseFunc_RTE.externalBlocks := addToList(pre)
lib.parseFunc_RTE.externalBlocks.pre.stdWrap.postUserFunc = user_userFunc->replaceBR
Damit wird pre als externer Block definiert und über die stdWrap-Funktion eine userfunc aufgerufen, die den externen Block abarbeitet.
4. In fileadmin/scripts/userFunc.php dann diesen Code (oder halt so ähnlich ...):
class user_userFunc{
function replaceBR(&$content, $pars) {
$content = str_replace ( "<br>" , "\n" , $content);
$content = str_replace ( "<br />" , "\n" , $content);
return $content;
}
}
Bei mir funktionierts soweit ... Geht vielleicht eleganter, aber was besseres fällt mir nicht ein.
Gruß
Peter
--
Xing: http://www.xing.com/profile/Peter_Linzenkirchner
Web: http://www.typo3-lisardo.de
Facebook: http://tinyurl.com/lisardo-multimedia
More information about the TYPO3-german
mailing list