dad864556481aeb0b597142cc513001a7cc88dc6
[Packages/TYPO3.CMS.git] / typo3 / sysext / fluid_styled_content / Configuration / TypoScript / Helper / ParseFunc.txt
1 # Creates persistent ParseFunc setup for non-HTML content.
2 lib.parseFunc {
3 makelinks = 1
4 makelinks {
5 http {
6 keep = {$styles.content.links.keep}
7 extTarget = {$styles.content.links.extTarget}
8 }
9 mailto {
10 keep = path
11 }
12 }
13 tags {
14 link = TEXT
15 link {
16 current = 1
17 typolink {
18 parameter.data = parameters : allParams
19 extTarget = {$styles.content.links.extTarget}
20 }
21 parseFunc.constants = 1
22 }
23 a = TEXT
24 a {
25 current = 1
26 typolink {
27 parameter.data = parameters:href
28 title.data = parameters:title
29 ATagParams.data = parameters:allParams
30 target.data = parameters:target
31 extTarget = {$styles.content.links.extTarget}
32 extTarget.override.data = parameters:target
33 }
34 }
35 }
36 allowTags = {$styles.content.allowTags}
37 denyTags = *
38 sword = <span class="ce-sword">|</span>
39 constants = 1
40 nonTypoTagStdWrap {
41 HTMLparser = 1
42 HTMLparser {
43 keepNonMatchedTags = 1
44 htmlSpecialChars = 2
45 }
46 }
47 }
48
49
50 # Creates persistent ParseFunc setup for RTE content (which is mainly HTML) based on the "ts_css" transformation.
51 lib.parseFunc_RTE < lib.parseFunc
52 lib.parseFunc_RTE {
53 # Processing <table> and <blockquote> blocks separately
54 externalBlocks = article, aside, blockquote, div, dd, dl, footer, header, nav, ol, section, table, ul, pre
55 externalBlocks {
56 # The blockquote content is passed into parseFunc again...
57 blockquote {
58 stripNL = 1
59 callRecursive = 1
60 callRecursive {
61 tagStdWrap {
62 HTMLparser = 1
63 HTMLparser.tags.blockquote.overrideAttribs = style="margin-bottom:0;margin-top:0;"
64 }
65 }
66 }
67 ol {
68 stripNL = 1
69 stdWrap.parseFunc = < lib.parseFunc
70 }
71 ul {
72 stripNL = 1
73 stdWrap.parseFunc = < lib.parseFunc
74 }
75 table {
76 stripNL = 1
77 stdWrap {
78 HTMLparser = 1
79 HTMLparser {
80 tags.table.fixAttrib.class {
81 default = contenttable
82 always = 1
83 list = contenttable
84 }
85 keepNonMatchedTags = 1
86 }
87 }
88 HTMLtableCells = 1
89 HTMLtableCells {
90 # Recursive call to self but without wrapping non-wrapped cell content
91 default.stdWrap {
92 parseFunc = < lib.parseFunc_RTE
93 parseFunc.nonTypoTagStdWrap.encapsLines.nonWrappedTag =
94 }
95 addChr10BetweenParagraphs = 1
96 }
97 }
98 div {
99 stripNL = 1
100 callRecursive = 1
101 }
102 article < .div
103 aside < .div
104 footer < .div
105 header < .div
106 nav < .div
107 section < .div
108 dl < .div
109 dd < .div
110 }
111 nonTypoTagStdWrap {
112 encapsLines {
113 encapsTagList = p,pre,h1,h2,h3,h4,h5,h6,hr,dt
114 remapTag.DIV = P
115 nonWrappedTag = P
116 innerStdWrap_all.ifBlank = &nbsp;
117 }
118 }
119 nonTypoTagStdWrap {
120 HTMLparser = 1
121 HTMLparser {
122 keepNonMatchedTags = 1
123 htmlSpecialChars = 2
124 }
125 }
126 }