Warning, /frameworks/syntax-highlighting/autotests/reference/test.mss.ref is written in an unsupported language. File is not indexed.

0001 <Comment>/* </Comment><Keyword>kate:</Keyword><Comment> </Comment><Variable>hl</Variable><String> CartoCSS</String><br/>
0002 <Comment>   This file contains some content coming from</Comment><br/>
0003 <Comment>   https://github.com/gravitystorm/openstreetmap-carto</Comment><br/>
0004 <Comment>   with CC0 license. This file is just for testing</Comment><br/>
0005 <Comment>   katepart highlighting engine.</Comment><br/>
0006 <Comment>   */</Comment><br/>
0007 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0008 <Comment>/* This is</Comment><br/>
0009 <Comment>a multiline comment. */</Comment><br/>
0010 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0011 <Comment>// This is a single-line comment.</Comment><br/>
0012 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0013 <Layer ID>#world</Layer ID><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
0014 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// various styles to define colors (all except the color function are rendered the same way):</Comment><br/>
0015 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// Numbers are always treated as floating-point and highlighted. This syntax</Comment><br/>
0016 <Mapnik Symbolizer Parameter>    polygon-opacity</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>50%</Number><Operator>;</Operator><br/>
0017 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// is equivalent to</Comment><br/>
0018 <Mapnik Symbolizer Parameter>    polygon-opacity</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>0.5</Number><Operator>;</Operator><br/>
0019 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// This is a coma-separated list of numbers:</Comment><br/>
0020 <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/>
0021 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// Also function calls are possible. Function calls like “url” get special highlighting:</Comment><br/>
0022 <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/>
0023 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// Within function calls, strings can contains fields like [width] which get special highlighting:</Comment><br/>
0024 <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/>
0025 <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/>
0026 <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/>
0027 <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/>
0028 <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/>
0029 <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/>
0030 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Comment>// everything else is simply interpreted as keyword:</Comment><br/>
0031 <Mapnik Symbolizer Parameter>    line-clip</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> false</Keyword><Operator>;</Operator><br/>
0032 <Mapnik Symbolizer Parameter>    line-clip</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> abcdef</Keyword><Operator>;</Operator><br/>
0033 <Operator>}</Operator><br/>
0034 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0035 <Comment>// You can define macros called “CartoCSS variables” with arbitrary values and types.</Comment><br/>
0036 <Comment>// They do not behave much like variable, but more like macros.</Comment><br/>
0037 <CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Number>15</Number><Operator>;</Operator><br/>
0038 <CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Color>#123456</Color><Operator>;</Operator><br/>
0039 <CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Color>white</Color><Operator>;</Operator><br/>
0040 <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/>
0041 <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/>
0042 <Comment>// Variables can also contain strings:</Comment><br/>
0043 <CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>:</Operator><Keyword> </Keyword><Expression String>'abc'</Expression String><Operator>;</Operator><br/>
0044 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0045 <Comment>// These variables can be used later as values</Comment><br/>
0046 <Layer ID>#world</Layer ID><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
0047 <Mapnik Symbolizer Parameter>    polygon-fill</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><CartoCSS Variable>@myvariable</CartoCSS Variable><Operator>;</Operator><br/>
0048 <Operator>}</Operator><br/>
0049 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0050 <Comment>/* Typically, in MSS files you declare filters like “#world[zoom >= 17]”</Comment><br/>
0051 <Comment>followed by curly braces with parameters like “size” for Mapnik symbolizers like “text”. */</Comment><br/>
0052 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0053 <Comment>// Each Mapnik symbolizer parameter can be on its own line:</Comment><br/>
0054 <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/>
0055 <Mapnik Symbolizer Parameter>  text-wrap-width</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>20</Number><Operator>;</Operator><br/>
0056 <Mapnik Symbolizer Parameter>  text-size</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>11</Number><Operator>;</Operator><br/>
0057 <Operator>}</Operator><br/>
0058 <Comment>// Or you can put various of them into the same line:</Comment><br/>
0059 <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/>
0060 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0061 <Comment>// It is allowed to omit the final “;” for the last Mapnik symbolizer parameter within a block:</Comment><br/>
0062 <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/>
0063 <Comment>// Also after an omitted final “;” the following code is nevertheless highlighted correctly:</Comment><br/>
0064 <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/>
0065 <Comment>// “null” and “zoom” are special keywords within filters, and highlighted as such:</Comment><br/>
0066 <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/>
0067 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0068 <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/>
0069 <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/>
0070 <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/>
0071 <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/>
0072 <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/>
0073 <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/>
0074 <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/>
0075 <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/>
0076 <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/>
0077 <Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// The name of the named instance gets special highlighting:</Comment><br/>
0078 <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/>
0079 <Mapnik Symbolizer Parameter>      line-color</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><CartoCSS Variable>@admin-boundaries</CartoCSS Variable><Operator>;</Operator><br/>
0080 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
0081 <Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
0082 <Operator>}</Operator><br/>
0083 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0084 <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/>
0085 <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/>
0086 <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/>
0087 <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/>
0088 <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/>
0089 <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/>
0090 <Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// of the @ it has nothing to do with ordinary variables):</Comment><br/>
0091 <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/>
0092 <Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// Here the same thing as simple expression:</Comment><br/>
0093 <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/>
0094 <Mapnik Symbolizer Parameter>      </Mapnik Symbolizer Parameter><Comment>// runtime variable anymore, but to an ordinary CartoCSS variable:</Comment><br/>
0095 <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/>
0096 <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/>
0097 <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/>
0098 <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/>
0099 <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/>
0100 <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/>
0101 <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/>
0102 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
0103 <Mapnik Symbolizer Parameter>  </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
0104 <Operator>}</Operator><br/>
0105 <Mapnik Symbolizer Parameter></Mapnik Symbolizer Parameter><br/>
0106 <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/>
0107 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Attachment>::fill</Attachment><Mapnik Symbolizer Parameter> </Mapnik Symbolizer Parameter><Operator>{</Operator><br/>
0108 <Mapnik Symbolizer Parameter>        </Mapnik Symbolizer Parameter><Comment>/* The :: syntax defined “attachments” (a sort of sub-layer within normal layers), here “::fill”.</Comment><br/>
0109 <Comment>        Everything that is defined within an attachment is applied in the order of the first occurrence</Comment><br/>
0110 <Comment>        of the attachment, instead of following the normal appliance order. Therefore attachments are</Comment><br/>
0111 <Comment>        highlighted as dsControlFlow by default. */</Comment><br/>
0112 <Mapnik Symbolizer Parameter>        opacity</Mapnik Symbolizer Parameter><Operator>:</Operator><Keyword> </Keyword><Number>0.05</Number><Operator>;</Operator><br/>
0113 <Mapnik Symbolizer Parameter>    </Mapnik Symbolizer Parameter><Operator>}</Operator><br/>
0114 <Operator>}</Operator><br/>