File indexing completed on 2024-05-12 04:02:09

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>test.mkiv</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (ConTeXt) - Theme (Breeze Dark)"/>
0006 </head><body style="background-color:#232629;color:#cfcfc2"><pre>
0007 <span style="color:#7a7c7d">% ConTeXt test file for Kate's syntax highlighting and code folding</span>
0008 
0009 
0010 <span style="color:#7a7c7d">%% Comments</span>
0011 <span style="color:#7a7c7d">%   This is a comment</span>
0012 <span style="color:#8e44ad">\%</span>  Not a comment
0013 <span style="color:#8e44ad">\\</span><span style="color:#7a7c7d">% This is a comment</span>
0014 
0015 <span style="color:#7a7c7d">% Titles should be bold</span>
0016 <span style="font-weight:bold">\subject</span><span style="color:#3daee9">{</span>Subject<span style="color:#3daee9">}</span>
0017 <span style="font-weight:bold">\subsubject</span><span style="color:#3daee9">{</span>Sub-subject<span style="color:#3daee9">}</span>
0018 <span style="font-weight:bold">\subsubsubject</span><span style="color:#3daee9">{</span>Sub-sub-subject<span style="color:#3daee9">}</span>
0019 <span style="font-weight:bold">\subsubsubsubject</span><span style="color:#3daee9">{</span>Sub-sub-sub-subject<span style="color:#3daee9">}</span>
0020 <span style="font-weight:bold">\subsubsubsubsubject</span><span style="color:#3daee9">{</span>Sub-sub-sub-sub-subject<span style="color:#3daee9">}</span>
0021 <span style="font-weight:bold">\section</span><span style="color:#3daee9">{</span>Section<span style="color:#3daee9">}</span>
0022 <span style="font-weight:bold">\subsection</span><span style="color:#3daee9">{</span>Sub-section<span style="color:#3daee9">}</span>
0023 <span style="font-weight:bold">\subsubsection</span><span style="color:#3daee9">{</span>Sub-sub-section<span style="color:#3daee9">}</span>
0024 <span style="font-weight:bold">\subsubsubsection</span><span style="color:#3daee9">{</span>Sub-sub-sub-section<span style="color:#3daee9">}</span>
0025 <span style="font-weight:bold">\subsubsubsubsection</span><span style="color:#3daee9">{</span>Sub-sub-sub-sub-section<span style="color:#3daee9">}</span>
0026 
0027 <span style="color:#7a7c7d">%% Start/stop blocks</span>
0028 <span style="color:#2980b9;background-color:#153042">\startsection</span>
0029 Can be nested
0030 <span style="color:#2980b9;background-color:#153042">\startitemize</span>
0031 <span style="color:#8e44ad">\item</span> normal
0032 <span style="color:#2980b9;background-color:#153042">\stopitemize</span>
0033 normal
0034 <span style="color:#2980b9;background-color:#153042">\stopsection</span>
0035 <span style="color:#7a7c7d">% \startblock \stopblock should be comments</span>
0036 
0037 
0038 <span style="color:#7a7c7d">%% Commands</span>
0039 <span style="color:#8e44ad">\def</span><span style="color:#2980b9;background-color:#153042">\startstuff</span><span style="color:#3daee9">{</span>Custom environment start<span style="color:#3daee9">}</span>
0040 <span style="color:#8e44ad">\def</span><span style="color:#2980b9;background-color:#153042">\stopstuff</span><span style="color:#3daee9">{</span>Custom environment stop<span style="color:#3daee9">}</span>
0041 <span style="color:#2980b9;background-color:#153042">\startstuff</span> should not be normal command colour (it is an error to miss <span style="color:#2980b9;background-color:#153042">\stopstuff</span>)
0042 
0043 <span style="color:#8e44ad">\def\sayHello</span><span style="color:#3daee9">{</span>Héllò Wø®łÐ<span style="color:#3daee9">}</span>
0044 <span style="color:#7a7c7d">% This prints Héllò Wø®łÐ@@@ , If it were \sayHelloAAA it would be</span>
0045 <span style="color:#7a7c7d">% an error, so the @ is not in the macro</span>
0046 <span style="color:#8e44ad">\sayHello</span>@@@
0047 
0048 <span style="color:#8e44ad">\def\testUnderscores</span><span style="color:#3daee9">{</span>Text_With_Underscores<span style="color:#3daee9">}</span>
0049 <span style="color:#7a7c7d">% This prints Text_With_Underscores_ note the final underscore and no error</span>
0050 <span style="color:#8e44ad">\testUnderscores</span>_
0051 
0052 <span style="color:#8e44ad">\def\€</span><span style="color:#3daee9">{</span>Macro with sign<span style="color:#3daee9">}</span>
0053 <span style="color:#7a7c7d">% This is a single macro</span>
0054 <span style="color:#8e44ad">\€</span> <span style="color:#7a7c7d">% This prints Macro with sign</span>
0055 <span style="color:#8e44ad">\€</span>A <span style="color:#7a7c7d">% This prints Macro with signA   (not an error)</span>
0056 
0057 <span style="color:#8e44ad">\setupindenting</span>[yes, big]
0058 
0059 
0060 <span style="color:#7a7c7d">%% Inline math</span>
0061 <span style="color:#2980b9;background-color:#153042">$</span><span style="color:#27ae60">equations are green, </span><span style="color:#8e44ad">\commands</span><span style="color:#27ae60"> somewhat darker</span>
0062 <span style="color:#27ae60">it can also run over multiple lines</span>
0063 <span style="color:#7a7c7d">% Comment</span>
0064 <span style="color:#2980b9;background-color:#153042">$</span>
0065 normal
0066 <span style="color:#2980b9;background-color:#153042">\mathematics</span><span style="color:#3daee9">{</span><span style="color:#27ae60">equations are green, </span><span style="color:#8e44ad">\commands</span><span style="color:#27ae60"> somewhat darker</span>
0067 <span style="color:#27ae60">it can also run over multiple lines</span>
0068 <span style="color:#8e44ad">\mathematics</span><span style="color:#3daee9">{</span><span style="color:#27ae60">nested math should be green</span><span style="color:#3daee9">}</span><span style="color:#27ae60"> this should still be green</span>
0069 <span style="color:#7a7c7d">% Comment</span>
0070 <span style="color:#3daee9">}</span>
0071 normal
0072 <span style="color:#2980b9;background-color:#153042">\math</span><span style="color:#3daee9">{</span><span style="color:#27ae60">equations are green, </span><span style="color:#8e44ad">\commands</span><span style="color:#27ae60"> somewhat darker</span>
0073 <span style="color:#27ae60">it can also run over multiple lines</span>
0074 <span style="color:#8e44ad">\math</span><span style="color:#3daee9">{</span><span style="color:#27ae60">nested math should be green</span><span style="color:#3daee9">}</span><span style="color:#27ae60"> this should still be green</span>
0075 <span style="color:#7a7c7d">% Comment</span>
0076 <span style="color:#3daee9">}</span>
0077 normal
0078 <span style="color:#2980b9;background-color:#153042">\m</span><span style="color:#3daee9">{</span><span style="color:#27ae60">equations are green, </span><span style="color:#8e44ad">\commands</span><span style="color:#27ae60"> somewhat darker</span>
0079 <span style="color:#27ae60">it can also run over multiple lines</span>
0080 <span style="color:#8e44ad">\m</span><span style="color:#3daee9">{</span><span style="color:#27ae60">nested math should be green</span><span style="color:#3daee9">}</span><span style="color:#27ae60"> this should still be green</span>
0081 <span style="color:#7a7c7d">% Comment</span>
0082 <span style="color:#3daee9">}</span>
0083 normal
0084 <span style="color:#2980b9;background-color:#153042">\mathematics</span><span style="color:#27ae60"> t</span>he first character should be green <span style="color:#3daee9">{}</span>
0085 <span style="color:#2980b9;background-color:#153042">\math</span><span style="color:#27ae60">        t</span>he first character should be green <span style="color:#3daee9">{}</span>
0086 <span style="color:#2980b9;background-color:#153042">\m</span><span style="color:#27ae60">           t</span>he first character should be green <span style="color:#3daee9">{}</span>
0087 <span style="color:#2980b9;background-color:#153042">\formula</span><span style="color:#27ae60">     t</span>he first character should be green <span style="color:#3daee9">{}</span>
0088 normal
0089 <span style="color:#7a7c7d">% $should$ \mathematics{still} \math{be} \m{commented}</span>
0090 
0091 <span style="color:#7a7c7d">% The underscore after sum should be blue, not macro color</span>
0092 Math macro with underscores <span style="color:#2980b9;background-color:#153042">\m</span><span style="color:#27ae60"> </span><span style="color:#3daee9">{</span><span style="color:#27ae60"> v = </span><span style="color:#8e44ad">\sum</span><span style="color:#3daee9">_</span><span style="color:#27ae60">0</span><span style="color:#3daee9">^</span><span style="color:#27ae60">1</span><span style="color:#3daee9">{</span><span style="color:#27ae60"> </span><span style="color:#8e44ad">\sqrt</span><span style="color:#3daee9">{</span><span style="color:#27ae60">2</span><span style="color:#3daee9">}</span><span style="color:#27ae60"> </span><span style="color:#3daee9">}</span><span style="color:#27ae60">! </span><span style="color:#3daee9">}</span>
0093 
0094 <span style="color:#7a7c7d">%% Display math</span>
0095 <span style="color:#2980b9;background-color:#153042">$$</span>
0096 <span style="color:#27ae60">equations are green, </span><span style="color:#8e44ad">\commands</span><span style="color:#27ae60"> somewhat darker</span>
0097 <span style="color:#27ae60">it can also run over multiple lines</span>
0098 <span style="color:#7a7c7d">% Comment</span>
0099 <span style="color:#2980b9;background-color:#153042">$$</span>
0100 normal
0101 <span style="color:#2980b9;background-color:#153042">\startformula</span>
0102 <span style="color:#27ae60">equations are green, </span><span style="color:#8e44ad">\commands</span><span style="color:#27ae60"> somewhat darker</span>
0103 <span style="color:#27ae60">it can also run over multiple lines</span>
0104 <span style="color:#7a7c7d">% Comment</span>
0105 
0106 <span style="color:#27ae60">Nested formulae should not work</span>
0107 <span style="color:#27ae60">The following should be red:</span>
0108 <span style="color:#da4453;text-decoration:underline">\startformula</span>
0109 <span style="color:#27ae60">Should still be math colour</span>
0110 <span style="color:#2980b9;background-color:#153042">\stopformula</span>
0111 normal
0112 
0113 <span style="color:#7a7c7d">% This is a regular macro, not math macro</span>
0114 <span style="color:#8e44ad">\def\mathematicsMacroShouldNotMatchThis</span><span style="color:#3daee9">{</span>Not Math<span style="color:#3daee9">}</span>
0115 
0116 <span style="color:#7a7c7d">%% Verbatim</span>
0117 <span style="color:#2980b9;background-color:#153042">\starttyping</span>
0118 <span style="color:#f44f4f">All text in here should be verbatim colour</span>
0119 <span style="color:#f44f4f">% This should not be a comment</span>
0120 <span style="color:#f44f4f">&amp;@@#^%&amp;^#$</span>
0121 
0122 <span style="color:#f44f4f">Nested typing should be displayed in verbatim colour</span>
0123 <span style="color:#f44f4f">\starttyping</span>
0124 <span style="color:#f44f4f">\stoptyping</span>
0125 <span style="color:#f44f4f">should still be verbatim colour</span>
0126 <span style="color:#f44f4f">% This should not be a comment</span>
0127 <span style="color:#2980b9;background-color:#153042">\stoptyping</span>
0128 
0129 normal
0130 
0131 
0132 <span style="color:#7a7c7d">%% Tables</span>
0133 <span style="color:#2980b9;background-color:#153042">\starttabulate</span>[|c|c|c|]
0134 <span style="color:#8e44ad">\FL</span>
0135 <span style="color:#8e44ad">\NC</span> header1 <span style="color:#8e44ad">\NC</span> header2 <span style="color:#8e44ad">\NC</span> header3 <span style="color:#8e44ad">\NR</span>
0136 <span style="color:#8e44ad">\ML</span>
0137 <span style="color:#8e44ad">\NC</span> value1 <span style="color:#8e44ad">\NC</span> value2 <span style="color:#8e44ad">\NC</span> value3 <span style="color:#8e44ad">\NR</span>
0138 <span style="color:#8e44ad">\NC</span> value4 <span style="color:#8e44ad">\NC</span> value5 <span style="color:#8e44ad">\NC</span> value6 <span style="color:#8e44ad">\NR</span>
0139 <span style="color:#8e44ad">\BL</span>
0140 <span style="color:#2980b9;background-color:#153042">\stoptabulate</span>
0141 
0142 Commands for TABLE environment (<span style="color:#2980b9;background-color:#153042">\bTABLE</span> and <span style="color:#2980b9;background-color:#153042">\eTABLE</span>, <span style="color:#2980b9;background-color:#153042">\bTD</span> and <span style="color:#2980b9;background-color:#153042">\eTD</span>, etc.) should emulate start/stop blocks
0143 <span style="color:#2980b9;background-color:#153042">\bTABLE</span>[split=yes]
0144   <span style="color:#2980b9;background-color:#153042">\bTR</span> <span style="color:#2980b9;background-color:#153042">\bTD</span> value1 <span style="color:#2980b9;background-color:#153042">\eTD</span> <span style="color:#2980b9;background-color:#153042">\bTD</span> value2 <span style="color:#2980b9;background-color:#153042">\eTD</span> <span style="color:#2980b9;background-color:#153042">\bTD</span> value3 <span style="color:#2980b9;background-color:#153042">\eTD</span> <span style="color:#2980b9;background-color:#153042">\eTR</span>
0145   <span style="color:#2980b9;background-color:#153042">\bTR</span> <span style="color:#2980b9;background-color:#153042">\bTD</span> value4 <span style="color:#2980b9;background-color:#153042">\eTD</span> <span style="color:#2980b9;background-color:#153042">\bTD</span> value5 <span style="color:#2980b9;background-color:#153042">\eTD</span> <span style="color:#2980b9;background-color:#153042">\bTD</span> value6 <span style="color:#2980b9;background-color:#153042">\eTD</span> <span style="color:#2980b9;background-color:#153042">\eTR</span>
0146 <span style="color:#2980b9;background-color:#153042">\eTABLE</span>
0147 
0148 <span style="color:#2980b9;background-color:#153042">\startxtable</span>
0149   <span style="color:#2980b9;background-color:#153042">\startxrow</span>
0150     <span style="color:#2980b9;background-color:#153042">\startxcell</span> value1 <span style="color:#2980b9;background-color:#153042">\stopxcell</span>
0151     <span style="color:#2980b9;background-color:#153042">\startxcell</span> value2 <span style="color:#2980b9;background-color:#153042">\stopxcell</span>
0152   <span style="color:#2980b9;background-color:#153042">\stopxrow</span>
0153   <span style="color:#2980b9;background-color:#153042">\startxrow</span>
0154     <span style="color:#2980b9;background-color:#153042">\startxcell</span> value3 <span style="color:#2980b9;background-color:#153042">\stopxcell</span>
0155     <span style="color:#2980b9;background-color:#153042">\startxcell</span> value5 <span style="color:#2980b9;background-color:#153042">\stopxcell</span>
0156   <span style="color:#2980b9;background-color:#153042">\stopxrow</span>
0157 <span style="color:#2980b9;background-color:#153042">\stopxtable</span>
0158 
0159 
0160 
0161 <span style="font-weight:bold">\subject</span><span style="color:#3daee9">{</span> Languajes directly usable in <span style="color:#8e44ad">\CONTEXT</span> <span style="color:#3daee9">}</span>
0162 
0163 <span style="color:#7a7c7d">% These three sould have their own separate syntax highlighting</span>
0164 
0165 <span style="color:#2980b9;background-color:#153042">\startluacode</span>
0166     <span style="color:#27aeae">context</span><span style="color:#3f8058">.</span>chapter<span style="color:#3f8058">({</span><span style="color:#27aeae">first</span><span style="color:#3f8058">},</span> <span style="color:#f44f4f">"Some title"</span><span style="color:#3f8058">)</span>
0167     <span style="color:#27aeae">context</span><span style="color:#3f8058">.</span>startcolumns<span style="color:#3f8058">({</span><span style="color:#27aeae">n</span> <span style="color:#3f8058">=</span> <span style="color:#f67400">3</span><span style="color:#3f8058">,</span> <span style="color:#27aeae">rule</span> <span style="color:#3f8058">=</span> <span style="color:#f44f4f">"on"</span><span style="color:#3f8058">})</span>
0168         context<span style="color:#3f8058">(</span><span style="color:#f44f4f">"Hello one"</span><span style="color:#3f8058">)</span>
0169     <span style="color:#27aeae">context</span><span style="color:#3f8058">.</span>column<span style="color:#3f8058">()</span>
0170         context<span style="color:#3f8058">(</span><span style="color:#f44f4f">"Hello two"</span><span style="color:#3f8058">)</span>
0171     <span style="color:#27aeae">context</span><span style="color:#3f8058">.</span>column<span style="color:#3f8058">()</span>
0172         context<span style="color:#3f8058">(</span><span style="color:#f44f4f">"Hello three"</span><span style="color:#3f8058">)</span>
0173     <span style="color:#27aeae">context</span><span style="color:#3f8058">.</span>stopcolumns<span style="color:#3f8058">()</span>
0174 <span style="color:#2980b9;background-color:#153042">\stopluacode</span>
0175 
0176 <span style="color:#2980b9;background-color:#153042">\startMPcode</span>
0177     <span style="color:#2980b9">transform</span> pagecoords;
0178     pagecoords <span style="color:#3f8058">:=</span> <span style="font-weight:bold">identity</span> <span style="color:#2980b9">scaled</span> <span style="color:#f67400">10</span>mm <span style="color:#2980b9">shifted</span> (<span style="color:#f67400">100</span>mm,<span style="color:#f67400">150</span>mm);
0179     <span style="font-weight:bold">fill</span> ( (<span style="color:#f67400">0</span>,<span style="color:#f67400">0</span>) <span style="color:#3f8058">--</span> (<span style="color:#f67400">2</span>,<span style="color:#f67400">0</span>) <span style="color:#3f8058">--</span> (<span style="color:#f67400">2</span>,<span style="color:#f67400">1</span>) <span style="color:#3f8058">--</span> (<span style="color:#f67400">1</span>,<span style="color:#f67400">1</span>) <span style="color:#3f8058">--</span> (<span style="color:#f67400">1</span>,<span style="color:#f67400">2</span>) <span style="color:#3f8058">--</span> <span style="color:#2980b9">cycle</span> )
0180         <span style="color:#2980b9">transformed</span> pagecoords <span style="color:#2980b9">withcolor</span> <span style="font-weight:bold">green</span>;
0181     <span style="font-weight:bold">draw</span> ( (<span style="color:#f67400">2</span>,<span style="color:#f67400">0</span>) <span style="color:#3f8058">..</span> (<span style="color:#f67400">2</span>,<span style="color:#f67400">1</span>) <span style="color:#3f8058">..</span> (<span style="color:#f67400">1</span>,<span style="color:#f67400">1</span>) <span style="color:#3f8058">..</span> (<span style="color:#f67400">1</span>,<span style="color:#f67400">2</span>) <span style="color:#3f8058">..</span> (<span style="color:#f67400">0</span>,<span style="color:#f67400">2</span>) )
0182         <span style="color:#2980b9">transformed</span> pagecoords;
0183     <span style="font-weight:bold">drawarrow</span> ( (<span style="color:#f67400">0</span>,<span style="color:#f67400">0</span>) <span style="color:#3f8058">--</span> (<span style="color:#f67400">2</span>,<span style="color:#f67400">2</span>) ) <span style="color:#2980b9">transformed</span> pagecoords;
0184 <span style="color:#2980b9;background-color:#153042">\stopMPcode</span>
0185 
0186 <span style="color:#2980b9;background-color:#153042">\startXML</span>
0187 &lt;<span style="font-weight:bold">context</span><span style="color:#27ae60"> name</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"MathModeMacroFind"</span><span style="color:#27ae60"> attribute</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"Math"</span><span style="color:#27ae60"> lineEndContext</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"#stay"</span>>
0188     &lt;<span style="font-weight:bold">DetectChar</span><span style="color:#27ae60"> char</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"{"</span><span style="color:#27ae60">              attribute</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"Brace"</span><span style="color:#27ae60"> context</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"#pop!MathModeMacro"</span>/>
0189     &lt;<span style="font-weight:bold">RegExpr</span><span style="color:#27ae60">    String</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"</span><span style="color:#f67400">&amp;macro_math;</span><span style="color:#f44f4f">"</span><span style="color:#27ae60"> attribute</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"Macro"</span><span style="color:#27ae60"> context</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"#pop"</span>/> <span style="color:#7a7c7d">&lt;!-- 1 token --></span>
0190     &lt;<span style="font-weight:bold">RegExpr</span><span style="color:#27ae60">    String</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"[[:graph:]]"</span><span style="color:#27ae60">  attribute</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"Math"</span><span style="color:#27ae60">  context</span><span style="color:#27ae60">=</span><span style="color:#f44f4f">"#pop"</span>/> <span style="color:#7a7c7d">&lt;!-- 1 token --></span>
0191 &lt;/<span style="font-weight:bold">context</span>>
0192 <span style="color:#2980b9;background-color:#153042">\stopXML</span>
0193 
0194 </pre></body></html>