File: test.mss.ref

package info (click to toggle)
kf6-syntax-highlighting 6.13.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 47,568 kB
  • sloc: xml: 197,750; cpp: 12,850; python: 3,023; sh: 955; perl: 546; ruby: 488; pascal: 393; javascript: 161; php: 150; jsp: 132; lisp: 131; haskell: 124; ada: 119; ansic: 107; makefile: 96; f90: 94; ml: 85; cobol: 81; yacc: 71; csh: 62; erlang: 54; sql: 51; java: 47; objc: 37; awk: 31; asm: 30; tcl: 29; fortran: 18; cs: 10
file content (114 lines) | stat: -rw-r--r-- 23,878 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<Comment>/* </Comment><Keyword>kate:</Keyword><Comment> </Comment><Variable>hl</Variable><String> CartoCSS</String><br/>
<Comment>   This file contains some content coming from</Comment><br/>
<Comment>   https://github.com/gravitystorm/openstreetmap-carto</Comment><br/>
<Comment>   with CC0 license. This file is just for testing</Comment><br/>
<Comment>   katepart highlighting engine.</Comment><br/>
<Comment>   */</Comment><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Comment>/* This is</Comment><br/>
<Comment>a multiline comment. */</Comment><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Comment>// This is a single-line comment.</Comment><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Layer ID>#world</Layer ID><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// various styles to define colors (all except the color function are rendered the same way):</Comment><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// Numbers are always treated as floating-point and highlighted. This syntax</Comment><br/>
<Mapnik Symbolizer Parameter>    polygon-opacity</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>50%</Number><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// is equivalent to</Comment><br/>
<Mapnik Symbolizer Parameter>    polygon-opacity</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>0.5</Number><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// This is a coma-separated list of numbers:</Comment><br/>
<Mapnik Symbolizer Parameter>    line-dasharray</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>6</Number><Operator>,</Operator><Number>3</Number><Operator>,</Operator><Number>2</Number><Operator>,</Operator><Number>3</Number><Operator>,</Operator><Number>2</Number><Operator>,</Operator><Number>3</Number><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// Also function calls are possible. Function calls like “url” get special highlighting:</Comment><br/>
<Mapnik Symbolizer Parameter>    shield-file</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Function>url</Function><Operator>(</Operator><Expression String>"myfile.svg"</Expression String><Operator>);</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// Within function calls, strings can contains fields like [width] which get special highlighting:</Comment><br/>
<Mapnik Symbolizer Parameter>    shield-file</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Function>url</Function><Operator>(</Operator><Expression String>"symbols/shields/motorway_</Expression String><Data Field>[width]</Data Field><Expression String>x</Expression String><Data Field>[height]</Data Field><Expression String>.svg"</Expression String><Operator>);</Operator><br/>
<Mapnik Symbolizer Parameter>    polygon-fill</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Color>white</Color><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// List of known colors</Comment><br/>
<Mapnik Symbolizer Parameter>    polygon-fill</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Color>#ffffff</Color><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// Six-digit hex color</Comment><br/>
<Mapnik Symbolizer Parameter>    polygon-fill</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Color>#fff</Color><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// Three-digit hex color</Comment><br/>
<Mapnik Symbolizer Parameter>    polygon-fill</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> #ffff</Keyword><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// Invalid hex color</Comment><br/>
<Mapnik Symbolizer Parameter>    polygon-fill</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Function>rgba</Function><Operator>(</Operator><Number>255</Number><Operator>,</Operator><Number>255</Number><Operator>,</Operator><Number>255</Number><Operator>,</Operator><Number>1</Number><Operator>);</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// define a color by a special function</Comment><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// everything else is simply interpreted as keyword:</Comment><br/>
<Mapnik Symbolizer Parameter>    line-clip</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> false</Keyword><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>    line-clip</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> abcdef</Keyword><Operator>;</Operator><br/>
<Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Comment>// You can define macros called “CartoCSS variables” with arbitrary values and types.</Comment><br/>
<Comment>// They do not behave much like variable, but more like macros.</Comment><br/>
<CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Number>15</Number><Operator>;</Operator><br/>
<CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Color>#123456</Color><Operator>;</Operator><br/>
<CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Color>white</Color><Operator>;</Operator><br/>
<CartoCSS Variable>@myothervariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// this variable gets defined by the value of another variable</Comment><br/>
<CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Function>darken</Function><Operator>(</Operator><Color>white</Color><Operator>,</Operator><Keyword> </Keyword><Number>5%</Number><Operator>);</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// A variable defined by the result of a function. The function “darken” gets special highlighting.</Comment><br/>
<Comment>// Variables can also contain strings:</Comment><br/>
<CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Expression String>'abc'</Expression String><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Comment>// These variables can be used later as values</Comment><br/>
<Layer ID>#world</Layer ID><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>    polygon-fill</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>;</Operator><br/>
<Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Comment>/* Typically, in MSS files you declare filters like “#world[zoom >= 17]”</Comment><br/>
<Comment>followed by curly braces with parameters like “size” for Mapnik symbolizers like “text”. */</Comment><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Comment>// Each Mapnik symbolizer parameter can be on its own line:</Comment><br/>
<Layer ID>#world</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>17</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>  text-wrap-width</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>20</Number><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>  text-size</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>11</Number><Operator>;</Operator><br/>
<Operator>}</Operator><br/>
<Comment>// Or you can put various of them into the same line:</Comment><br/>
<Layer ID>#world</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>19</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><Mapnik Symbolizer Parameter> text-wrap-width</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>20</Number><Operator>;</Operator><Mapnik Symbolizer Parameter> text-size</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>11</Number><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Comment>// It is allowed to omit the final “;” for the last Mapnik symbolizer parameter within a block:</Comment><br/>
<Layer ID>#world</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>19</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><Mapnik Symbolizer Parameter> text-wrap-width</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>20</Number><Operator>;</Operator><Mapnik Symbolizer Parameter> text-size</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>11</Number><Keyword> </Keyword><Operator>}</Operator><br/>
<Comment>// Also after an omitted final “;” the following code is nevertheless highlighted correctly:</Comment><br/>
<Layer ID>#world</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>19</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><Mapnik Symbolizer Parameter> text-wrap-width</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>20</Number><Operator>;</Operator><Mapnik Symbolizer Parameter> text-size</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>11</Number><Keyword> </Keyword><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Comment>// “null” and “zoom” are special keywords within filters, and highlighted as such:</Comment><br/>
<Operator>[</Operator><Data Field>"name" </Data Field><Operator>!=</Operator><Keyword> null</Keyword><Operator>][</Operator><Data Field>"ref" </Data Field><Operator>=</Operator><Keyword> null</Keyword><Operator>][</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>19</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><Mapnik Symbolizer Parameter> text-wrap-width</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>20</Number><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Layer ID>#admin-low-zoom</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator><</Operator><Keyword> </Keyword><Number>11</Number><Operator>]</Operator><Mapnik Symbolizer Parameter>, </Mapnik Symbolizer Parameter><Comment>// You can make coma-separated lists of various filters</Comment><br/>
<Layer ID>#admin-mid-zoom</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>11</Number><Operator>][</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator><</Operator><Keyword> </Keyword><Number>13</Number><Operator>]</Operator><Mapnik Symbolizer Parameter>, </Mapnik Symbolizer Parameter><Comment>// like this one.</Comment><br/>
<Layer ID>#admin-high-zoom</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>13</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>=</Operator><Keyword> </Keyword><Number>15</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// “zoom” has special behaviour within filters and gets its own highlighting</Comment><br/>
<Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>[</Operator><Data Field>admin_level </Data Field><Operator>=</Operator><Keyword> </Keyword><Normal String>'2'</Normal String><Operator>]</Operator><Mapnik Symbolizer Parameter>, </Mapnik Symbolizer Parameter><Comment>// data fields like “admin_level” can be referenced by their name and get highlighting as data fields</Comment><br/>
<Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>[</Operator><Data Field>"admin_level" </Data Field><Operator>=</Operator><Keyword> </Keyword><Normal String>'2'</Normal String><Operator>]</Operator><Mapnik Symbolizer Parameter>, </Mapnik Symbolizer Parameter><Comment>// data fields like “admin_level” can be referenced by their name in quotes and get highlighting as data fields</Comment><br/>
<Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>[</Operator><Data Field>admin_level </Data Field><Operator>=</Operator><Keyword> </Keyword><Normal String>'3'</Normal String><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>4</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// You can create additional “Named instances” of Mapnik symbolizers by adding a “myname/” before the symbolizer.</Comment><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// The name of the named instance gets special highlighting:</Comment><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Named instances>background/</Named instances><Mapnik Symbolizer Parameter>line-color</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Color>white</Color><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>      line-color</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><CartoCSS Variable>@admin-boundaries</CartoCSS Variable><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Layer ID>#admin-mid-zoom</Layer ID><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>11</Number><Operator>][</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator><</Operator><Keyword> </Keyword><Number>13</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>[</Operator><Data Field>admin_level </Data Field><Operator>=</Operator><Keyword> </Keyword><Normal String>'abc'</Normal String><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// The string 'abc' is highlighted as a verbatim string, not as an expression string.</Comment><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>[</Operator><Keyword>zoom</Keyword><Data Field> </Data Field><Operator>>=</Operator><Keyword> </Keyword><Number>4</Number><Operator>]</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Data Field>[test]</Data Field><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// simplified reference to the value of the data field “test”</Comment><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Expression String>"</Expression String><Data Field>[test]</Data Field><Expression String>"</Expression String><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// another reference to the data field “test”, this time within an expression string</Comment><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// A rather complex expression string that will do some math; @zoom is a special runtime value (in spite</Comment><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// of the @ it has nothing to do with ordinary variables):</Comment><br/>
<Mapnik Symbolizer Parameter>      text-size</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Expression String>"(</Expression String><Data Field>[way_area]</Data Field><Expression String>*pow(4,</Expression String><Mapnik Render-Time Variable>@zoom</Mapnik Render-Time Variable><Expression String>)/24505740000)"</Expression String><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// Here the same thing as simple expression:</Comment><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// Note that @zoom now is highlighted in another color, because in this context it does not reference to a</Comment><br/>
<Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// runtime variable anymore, but to an ordinary CartoCSS variable:</Comment><br/>
<Mapnik Symbolizer Parameter>      text-size</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Operator>(</Operator><Data Field>[way_area]</Data Field><Operator>*</Operator><Function>pow</Function><Operator>(</Operator><Number>4</Number><Operator>,</Operator><CartoCSS Variable>@zoom</CartoCSS Variable><Operator>)/</Operator><Number>24505740000</Number><Operator>);</Operator><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Expression String>"</Expression String><Normal String>'Value: '</Normal String><Data Field>[test]</Data Field><Expression String>"</Expression String><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// A verbatim string 'Value: ' as part of an expression string.</Comment><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Expression String>'</Expression String><Normal String>"Value: "</Normal String><Data Field>[test]</Data Field><Expression String>'</Expression String><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// " and ' are interchangeable. The outer is always the expression string and the inner the verbatim string.</Comment><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Expression String>"</Expression String><Data Field>[field]</Data Field><Expression String>\n"</Expression String><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// Expression strings however do not have escape sequences, so \n gets no special highlighting here. [field] however is highlighted as data field.</Comment><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Expression String>"</Expression String><Data Field>[field]</Data Field><Expression String>+</Expression String><Normal String>'</Normal String><Escape Sequenze>\n</Escape Sequenze><Normal String>'</Normal String><Expression String>+</Expression String><Data Field>[otherfield]</Data Field><Expression String>"</Expression String><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// Inner strings, here the single-quoted string, are normal strings and highlight escape sequences like \n.</Comment><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Expression String>"</Expression String><Data Field>[field]</Data Field><Expression String>+</Expression String><Normal String>'[testfield]'</Normal String><Expression String>+</Expression String><Data Field>[otherfield]</Data Field><Expression String>"</Expression String><Operator>;</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// Inner strings, here the single-quoted string, are normal strings and do not highlight any fields like [testfield].</Comment><br/>
<Mapnik Symbolizer Parameter>      text-name</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Data Field>[name]</Data Field><Keyword> </Keyword><Operator>+</Operator><Keyword> </Keyword><Operator>/*</Operator><Keyword> Comments are not allowed within expressions</Keyword><Operator>,</Operator><Keyword> so no special comment highlighting here. </Keyword><Operator>*/</Operator><Keyword> </Keyword><Expression String>"\n"</Expression String><Keyword> </Keyword><Operator>+</Operator><Keyword> </Keyword><Data Field>[ref]</Data Field><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Operator>}</Operator><br/>
<Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
<Class>.nature</Class><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Comment>// .nature references a class, which is similar to a layer like #nature, so both are rendered the same way</Comment><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Attachment>::fill</Attachment><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
<Mapnik Symbolizer Parameter>        </Mapnik Symbolizer Parameter><Comment>/* The :: syntax defined “attachments” (a sort of sub-layer within normal layers), here “::fill”.</Comment><br/>
<Comment>        Everything that is defined within an attachment is applied in the order of the first occurrence</Comment><br/>
<Comment>        of the attachment, instead of following the normal appliance order. Therefore attachments are</Comment><br/>
<Comment>        highlighted as dsControlFlow by default. */</Comment><br/>
<Mapnik Symbolizer Parameter>        opacity</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>0.05</Number><Operator>;</Operator><br/>
<Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
<Operator>}</Operator><br/>