* Fixed bug 5031: htmlArea RTE incorrectly processes col tags and default proc option...
[Packages/TYPO3.CMS.git] / typo3 / sysext / rtehtmlarea / res / proc / pageTSConfig.txt
1 # ***************************************************************************************
2 # Default proc options in Page TSconfig for htmlArea RTE and Classic RTE
3 #
4 # Sets the proc options for all default configurations.
5 #
6 # Assumptions:  - CSS Styled Content is installed.
7 #               - XHTML output is expected.
8 #
9 # For documentation of RTE tranformations, see: http://typo3.org/documentation/document-library/doc_core_api/Introduction-e41faa8263/
10 # For documentation of Page TSConfig configuration of RTE processing, see: http://typo3.org/documentation/document-library/doc_core_api/Page_TSconfig/
11 # For documentation of the HTMLparser, see: http://typo3.org/documentation/document-library/doc_core_tsref/HTMLparser/
12 # For documentation of RTE settings in TCA, see: http://typo3.org/documentation/document-library/doc_core_api/Special_Configuratio-1/
13 #
14 # @author       Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
15 #
16 # TYPO3 CVS ID: $Id$
17 # ***************************************************************************************
18
19         ## Default RTE processing rules
20 RTE.default.proc {
21         
22                 ## TRANSFORMATION METHOD
23                 ## We assume that CSS Styled Content is used.
24         overruleMode = ts_css
25         
26                 ## DO NOT CONVERT BR TAGS INTO LINEBREAKS
27                 ## br tags in the content are assumed to be intentional.
28         dontConvBRtoParagraph = 1
29         
30                 ## REMAP DIV TAGS TO P TAGS
31                 ## For compatibility between Classic RTE and htmlArea RTE
32         remapParagraphTag = p
33         
34                 ## TAGS ALLOWED OUTSIDE P & DIV
35         allowTagsOutside = hr, address
36         
37                 ## TAGS ALLOWED
38                 ## Added to the default internal list: b,i,u,a,img,br,div,center,pre,font,hr,sub,sup,p,strong,em,li,ul,ol,blockquote,strike,span
39                 ## But, for the sake of clarity, we use a complete list in alphabetic order.
40                 ## center, font, o:p, strike, sdfield and  u will be removed on entry (see below).
41                 ## b and i will be remapped on exit (see below).
42                 ## Note that the link accessibility feature of htmlArea RTE does insert img tags.
43         allowTags (
44                 a, abbr, acronym, address, blockquote, b, br, caption, center, cite, code, col, colgroup, div, em, font,
45                 h1, h2, h3, h4, h5, h6, hr, i, img, li, link, ol, p, pre, q, sdfield,
46                 span, strike, strong, sub, sup, table, thead, tbody, tfoot, td, th, tr, tt, u, ul
47                 )
48         
49                 ## TAGS DENIED
50                 ## Make sure we can set rules on any tag listed in allowTags.
51         denyTags >
52         
53                 ## ALLOWED P & DIV ATTRIBUTES
54                 ## Attributes class and align are always preserved
55                 ## Align attribute will be unset on entry (see below)
56                 ## This is a list of additional attributes to keep
57         keepPDIVattribs = xml:lang
58         
59                 ## CONTENT TO DATABASE
60         entryHTMLparser_db = 1
61         entryHTMLparser_db {
62         
63                         ## TAGS ALLOWED
64                         ## Always use the same list of allowed tags.
65                 allowTags < RTE.default.proc.allowTags
66                 
67                         ## TAGS DENIED
68                         ## Make sure we can set rules on any tag listed in allowTags.
69                 denyTags >
70                 
71                         ## AVOID CONTENT BEING HSC'ed TWICE
72                 htmlSpecialChars = 0
73                 
74                 tags {
75                         
76                                 ## REMOVE IMG TAGS
77                         img.allowedAttribs = 0
78                         img.rmTagIfNoAttrib = 1
79                         
80                                 ## CLEAN ATTRIBUTES ON THE FOLLOWING TAGS
81                         span.fixAttrib.style.unset = 1
82                         p.fixAttrib.align.unset = 1
83                         div.fixAttrib.align.unset = 1
84                         hr.allowedAttribs = class
85                         b.allowedAttribs = xml:lang
86                         blockquote.allowedAttribs = xml:lang
87                         cite.allowedAttribs = xml:lang
88                         em.allowedAttribs = xml:lang
89                         i.allowedAttribs = xml:lang
90                         q.allowedAttribs = xml:lang
91                         strong.allowedAttribs = xml:lang
92                         sub.allowedAttribs = xml:lang
93                         sup.allowedAttribs = xml:lang
94                         tt.allowedAttribs = xml:lang
95                 }
96                 
97                         ## REMOVE OPEN OFFICE META DATA TAGS, WORD 2003 TAGS AND DEPRECATED HTML TAGS
98                         ## We use this rule instead of the denyTags rule so that we can protect custom tags without protecting these unwanted tags.
99                 removeTags = center, font, o:p, sdfield, strike, u
100                 
101                         ## PROTECT CUSTOM TAGS
102                 keepNonMatchedTags = protect
103         }
104         
105         HTMLparser_db {
106                         ## STRIP ALL ATTRIBUTES FROM THESE TAGS
107                         ## If this list of tags is not set, it will default to: b,i,u,br,center,hr,sub,sup,strong,em,li,ul,ol,blockquote,strike.
108                         ## However, we want to keep xml:lang attribute on most tags and tags from the default list where cleaned on entry.
109                 noAttrib = br
110         
111                         ## XHTML COMPLIANCE
112                         ## Note that applying xhtml_cleaning on exit would break non-standard attributes of typolink tags
113                 xhtml_cleaning = 1
114         }
115         
116         exitHTMLparser_db = 1
117         exitHTMLparser_db {
118                         ## REMAP B AND I TAGS
119                         ## b and i tags are used by Mozilla/Firefox in editing mode.
120                         ## This must be done on exit because the default HTMLparser_db parsing executes the reverse mapping.
121                 tags.b.remap = strong
122                 tags.i.remap = em
123                 
124                         ## KEEP ALL TAGS
125                         ## Unwanted tags were removed on entry.
126                         ## Without this rule, the parser will remove all tags! Presumably, this rule will be more efficient than repeating the allowTags rule
127                 keepNonMatchedTags = 1
128                 
129                         ## AVOID CONTENT BEING HSC'ed TWICE
130                 htmlSpecialChars = 0
131         }
132 }
133
134         ## Use same RTE processing rules in FE
135 RTE.default.FE.proc < RTE.default.proc
136
137         ## RTE processing rules for bodytext column of tt_content table
138         ## Erase settings from other extensions
139 RTE.config.tt_content.bodytext >
140
141         ## Make sure we use ts_css transformation
142 RTE.config.tt_content.bodytext.proc.overruleMode = ts_css
143 RTE.config.tt_content.bodytext.types.text.proc.overruleMode = ts_css
144 RTE.config.tt_content.bodytext.types.textpic.proc.overruleMode = ts_css