TYPO3: RTE-Standardkonfiguration für YAML
TYPO3: RTE-Standardkonfiguration für YAML
Für TYPO3 existieren eine Vielzahl von RTE-Standardkonfigurationen (z.B. die von sk-typo3), allerdings keine wirklich gute für YAML. Dieser Artikel stellt eine Lösung vor.
Es wird angenommen, dass die YAML-Vorlagen-Datei content.css im Verzeichnis fileadmin/css/screen/ liegt. Falls nicht, muss der Pfad angepasst werden.
Für das TS-Template genügt es, wenn man content (default) und cset Stylesheet in der Seite integriert – css_styled_content ist eher hinderlich, wenn man YAML verwendet.
Die Datei content.css wird um folgende TYPO3-relevante Einträge ergänzt:
- Quelltext: Alles auswählen | Zeilennummerierung an/aus
-
- .align-right { text-align: right; }
- .align-left { text-align: left; }
- .align-justify { text-align: justify; }
- .align-center { text-align: center; }
Damit wird sichergestellt, dass die Ausrichtung der Absätze korrekt vorgenommen wird. RTE wird im Seiten(!)-Setup der Wurzelseite wie folgt eingerichtet:
- Quelltext: Alles auswählen | Zeilennummerierung an/aus
-
- #*** RTE Classe des Interface (Ausrichtung)
- RTE.classes {
- align-left {
- name = Linksbündig
- value = text-align: left;
- }
- align-right {
- name = Rechtsbündig
- value = text-align: right;
- }
- align-justify {
- name = Blocksatz
- }
- align-center {
- name = Zentriert
- value = text-align: center;
- }
- float_left {
- name = Links mit Textumfluss
- value = text-align: left;
- }
- center {
- name = Zentriert (Bild)
- value = text-align: center;
- }
- float_right {
- name = Rechts mit Textumfluss
- value = text-align: right;
- }
- highlight {
- name = Hervorhebung
- value = color:#c30;
- }
- dimmed {
- name = Ausgegraut
- value = color:#888;
- }
- info {
- name = Info
- value = background:#f8f8f8; color:#666;
- }
- note {
- name = Anmerkung
- value = background:#efe; color:#040;
- }
- important {
- name = Wichtig
- value = background:#ffe; color:#440;
- }
- warning {
- name = Warnung
- value = background:#fee; color:#400;
- }
- }
- #
- # *** Entfernt das Bild vor den Links
- RTE.classesAnchor {
- internalLink {
- class = internal-link
- type = page
- image >
- }
- externalLink {
- class = external-link
- type = url
- image >
- }
- externalLinkInNewWindow {
- class = external-link-new-window
- type = url
- image >
- }
- internalLinkInNewWindow {
- class = internal-link-new-window
- type = page
- image >
- }
- download {
- class = download
- type = file
- image >
- }
- mail {
- class = mail
- type = mail
- image >
- }
- }
- ## RTE Konfiguration
- RTE.default {
- # Zuweisung der CSS-Datei - ggf. ändern!
- contentCSS = fileadmin/css/screen/content.css
- ## Markup options
- enableWordClean = 1
- removeTrailingBR = 1
- removeComments = 1
- removeTags = center, sdfield
- removeTagsAndContents = style,script
- # Buttons die gezeigt/versteckt werden
- showButtons = formatblock, textstyle, textstylelabel, blockstyle, blockstylelabel, bold, italic, underline, orderedlist, unorderedlist, insertcharacter, line, link, image, removeformat, table, toggleborders, tableproperties, rowproperties, rowinsertabove, rowinsertunder, rowdelete, rowsplit, columninsertbefore, columninsertafter, columndelete, columnsplit, cellproperties, cellinsertbefore, cellinsertafter, celldelete, cellsplit, cellmerge, findreplace, insertcharacter, undo, redo, showhelp, about, chMode, left, center, right
- hideButtons = fontstyle, fontsize, strikethrough,lefttoright, righttoleft, textcolor, bgcolor, textindicator, emoticon, user, spellcheck, inserttag, outdent, indent, justifyfull, subscript, superscript, acronym, copy, cut, paste
- # Hält die RTE Icons gegroupt zusammen
- keepButtonGroupTogether = 1
- # blendet Statusbar in htmlarea aus
- showStatusBar = 0
- ## Add styles Left, center and right alignment of text in paragraphs and cells.
- inlineStyle.text-alignment (
- p.float_left, h1.float_left, h2.float_left, h3.float_left, h4.float_left, h5.float_left, h6.float_left, td.float_left { float: left; }
- p.center, h1.center, h2.center, h3.center, h4.center, h5.center, h6.center, td.center { text-align: center; }
- p.float_right, h1.float_right, h2.float_right, h3.float_right, h4.float_right, h5.float_right, h6.float_right, td.float_right { float: right; }
- p.align-left, h1.align-left, h2.align-left, h3.align-left, h4.align-left, h5.align-left, h6.align-left, td.align-left { text-align: left; }
- p.align-center, h1.align-center, h2.align-center, h3.align-center, h4.align-center, h5.align-center, h6.align-center, td.align-center { text-align: center; }
- p.align-right, h1.align-right, h2.align-right, h3.align-right, h4.align-right, h5.align-right, h6.align-right, td.align-right { text-align: right; }
- )
- ## Use stylesheet file rather than the above mainStyleOverride and inlineStyle properties to style the contents (htmlArea RTE only)
- ignoreMainStyleOverride = 1
- proc {
- # tags die erlaubt / verboten sind
- allowTags = table, tbody, tr, th, td, h1, h2, h3, h4, h5, h6, div, p, br, span, ul, ol, li, re, blockquote, strong, em, b, i, u, sub, sup, strike, a, img, nobr, hr, tt, q, cite, abbr, acronym, center
- denyTags = font
- # br wird nicht zu p konvertiert
- dontConvBRtoParagraph = 1
- # tags sind erlaubt außerhalt von p, div
- allowTagsOutside = img,hr,typohead
- # erlaubte attribute in p, div tags
- keepPDIVattribs = align,class,style,id
- # List all class selectors that are allowed on the way to the database
- allowedClasses (
- external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail,
- align-left, align-center, align-right, align-justify, float_left, float_right, center, highlight, dimmed, note, important, info, warning
- )
- # html parser einstellungen
- HTMLparser_rte {
- # tags die erlaubt/verboten sind
- allowTags < RTE.default.proc.allowTags
- denyTags < RTE.default.proc.denyTags
- # tags die untersagt sind
- removeTags = font
- # entfernt html-kommentare
- removeComments = 1
- # tags die nicht übereinstimmen werden nicht entfernt (protect / 1 / 0)
- keepNonMatchedTags = 0
- }
- # Content to database
- entryHTMLparser_db = 1
- entryHTMLparser_db {
- # tags die erlaubt/verboten sind
- allowTags < RTE.default.proc.allowTags
- denyTags < RTE.default.proc.denyTags
- # CLEAN TAGS
- noAttrib = b, i, u, strike, sub, sup, strong, em, quote, blockquote, cite, tt, br, center
- rmTagIfNoAttrib = span,div,font
- # htmlSpecialChars = 1
- ## align attribute werden erlaubt
- tags {
- p.fixAttrib.align.unset >
- p.allowedAttribs = class,style,align
- div.fixAttrib.align.unset >
- hr.allowedAttribs = class
- # b und i tags werden ersetzt (em / strong)
- b.remap = strong
- i.remap = em
- ## img tags werden erlaubt
- img >
- h1.remap = typohead type="1"
- h2.remap = typohead type="2"
- h3.remap = typohead type="3"
- h4.remap = typohead type="4"
- h5.remap = typohead type="5"
- h6.remap = typohead type="6"
- }
- }
- }
- # Classes: Ausrichtung
- classesParagraph (
- align-left, align-right, align-justify, align-center, float_left, float_right, note, important, info, warning
- )
- # Classes: Eigene Stile
- classesCharacter = highlight, dimmed
- classesImage= float_left, float_right, center
- # Classes für Links (These classes should also be in the list of allowedClasses)
- classesAnchor = external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail
- classesAnchor.default {
- page = internal-link
- url = external-link-new-window
- file = download
- mail = mail
- }
- # zeigt alle CSS-Klassen die in formate.css vorhanden sind
- showTagFreeClasses = 1
- # Do not allow insertion of the following tags
- hideTags = font
- # Tabellen Optionen in der RTE Toolbar
- hideTableOperationsInToolbar = 0
- keepToggleBordersInToolbar = 1
- # Tabellen Editierungs-Optionen (cellspacing/ cellpadding / border)
- disableSpacingFieldsetInTableOperations = 1
- disableAlignmentFieldsetInTableOperations=1
- disableColorFieldsetInTableOperations=1
- disableLayoutFieldsetInTableOperations=1
- disableBordersFieldsetInTableOperations=0
- }
- # Use same processing as on entry to database to clean content pasted into the editor
- # FE RTE configuration (htmlArea RTE only)
- RTE.default.FE < RTE.default
- RTE.default.FE.userElements >
- RTE.default.FE.userLinks >
- # Breite des RTE in Fullscreen-Ansicht
- TCEFORM.tt_content.bodytext.RTEfullScreenWidth= 80%
- 2 Kommentare
Super
Traum-Konfig, vielen Dank.
Re: Super
Freut mich, wenn es nützt :-)