Warning, /frameworks/syntax-highlighting/data/syntax/tcl.xml is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0" encoding="UTF-8"?> 0002 <!DOCTYPE language> 0003 0004 <!-- Authors: Alexander Dederer & JM. Philippe --> 0005 <!-- Copyright: BSD copyright & Irsid - Arcelor Innovation R&D --> 0006 <!-- Ported to Kate 2.0/ KWrite 4.0 by Joseph Wenninger (Updated by Simon Robins)--> 0007 <!-- 0008 Updated by Pawel Salawa (boogie at scripts dot one dot pl) 0009 0010 Revision history: 0011 1.11: 0012 - added new commands of Tcl/tk 8.5, released in 2007 0013 1.10: 0014 - Fixed problem with single ':' character after variable name (it's no longer variable, 0015 because only double-colon is namespace delimiter and can be part of variable name). 0016 - Fixed problem with matching quote character next to regular character, for example: 0017 puts {"string"} 0018 In that case left bracked was marked as string, but it's no longer like that. 0019 - Fixed problem with variable names like: ${text\}test} 0020 It whole is valid variable name, because of escape character. 0021 - Fixed problem with marking ';' character as a comment when '#' character was after the ';'. 0022 - Fixed problem with marking options. '-' character after word-delimiter character caused 0023 marking that word-delimiter character as option too, even it wasn't white-space. 0024 - Few other minor optimalizations. 0025 1.09: 0026 - Added fast comments support (Ctrl+d or whatever your shortcut is) 0027 - Fixed single-character variables detection 0028 - Fixed detection of varaibles with names containing serval namespace delimiters (::) 0029 --> 0030 0031 <language name="Tcl/Tk" version="8" kateversion="5.62" section="Scripts" extensions="*.tcl;*.tk" mimetype="text/x-tcl" license="BSD"> 0032 <highlighting> 0033 <list name="keywords"> 0034 <item>after</item> 0035 <item>append</item> 0036 <item>AppleScript</item> 0037 <item>argv</item> 0038 <item>argc</item> 0039 <item>array</item> 0040 <item>auto_execk</item> 0041 <item>auto_execok</item> 0042 <item>auto_import</item> 0043 <item>auto_load</item> 0044 <item>auto_mkindex</item> 0045 <item>auto_mkindex_old</item> 0046 <item>auto_path</item> 0047 <item>auto_qualify</item> 0048 <item>auto_reset</item> 0049 <item>beep</item> 0050 <item>bell</item> 0051 <item>binary</item> 0052 <item>bind</item> 0053 <item>bindtags</item> 0054 <item>bgerror</item> 0055 <item>break</item> 0056 <item>button</item> 0057 <item>canvas</item> 0058 <item>case</item> 0059 <item>catch</item> 0060 <item>cd</item> 0061 <item>chan</item> 0062 <item>checkbutton</item> 0063 <item>clipboard</item> 0064 <item>clock</item> 0065 <item>close</item> 0066 <item>combobox</item> 0067 <item>concat</item> 0068 <item>console</item> 0069 <item>continue</item> 0070 <item>dde</item> 0071 <item>destroy</item> 0072 <item>dict</item> 0073 <item>else</item> 0074 <item>elseif</item> 0075 <item>encoding</item> 0076 <item>entry</item> 0077 <item>env</item> 0078 <item>eof</item> 0079 <item>error</item> 0080 <item>errorCode</item> 0081 <item>errorInfo</item> 0082 <item>eval</item> 0083 <item>event</item> 0084 <item>exec</item> 0085 <item>exit</item> 0086 <item>expr</item> 0087 <item>fblocked</item> 0088 <item>fconfigure</item> 0089 <item>fcopy</item> 0090 <item>file</item> 0091 <item>fileevent</item> 0092 <item>flush</item> 0093 <item>focus</item> 0094 <item>font</item> 0095 <item>for</item> 0096 <item>foreach</item> 0097 <item>format</item> 0098 <item>frame</item> 0099 <item>gets</item> 0100 <item>glob</item> 0101 <item>global</item> 0102 <item>grab</item> 0103 <item>grid</item> 0104 <item>history</item> 0105 <item>if</item> 0106 <item>image</item> 0107 <item>incr</item> 0108 <item>info</item> 0109 <item>interp</item> 0110 <item>join</item> 0111 <item>label</item> 0112 <item>labelframe</item> 0113 <item>lappend</item> 0114 <item>lassign</item> 0115 <item>lindex</item> 0116 <item>linsert</item> 0117 <item>list</item> 0118 <item>listbox</item> 0119 <item>llength</item> 0120 <item>load</item> 0121 <item>lower</item> 0122 <item>lrange</item> 0123 <item>lremove</item> 0124 <item>lrepeat</item> 0125 <item>lreplace</item> 0126 <item>lreverse</item> 0127 <item>lsearch</item> 0128 <item>lset</item> 0129 <item>lsort</item> 0130 <item>menu</item> 0131 <item>menubutton</item> 0132 <item>message</item> 0133 <item>namespace</item> 0134 <item>notebook</item> 0135 <item>open</item> 0136 <item>option</item> 0137 <item>OptProc</item> 0138 <item>pack</item> 0139 <item>package</item> 0140 <item>panedwindow</item> 0141 <item>parray</item> 0142 <item>pid</item> 0143 <item>place</item> 0144 <item>pkg_mkIndex</item> 0145 <item>proc</item> 0146 <item>progressbar</item> 0147 <item>puts</item> 0148 <item>pwd</item> 0149 <item>radiobutton</item> 0150 <item>raise</item> 0151 <item>read</item> 0152 <item>regexp</item> 0153 <item>registry</item> 0154 <item>regsub</item> 0155 <item>rename</item> 0156 <item>resource</item> 0157 <item>return</item> 0158 <item>scale</item> 0159 <item>scan</item> 0160 <item>scrollbar</item> 0161 <item>seek</item> 0162 <item>selection</item> 0163 <item>send</item> 0164 <item>separator</item> 0165 <item>set</item> 0166 <item>sizegrip</item> 0167 <item>socket</item> 0168 <item>source</item> 0169 <item>spinbox</item> 0170 <item>split</item> 0171 <item>string</item> 0172 <item>style</item> 0173 <item>subst</item> 0174 <item>switch</item> 0175 <item>tclLog</item> 0176 <item>tcl_endOfWord</item> 0177 <item>tcl_findLibrary</item> 0178 <item>tcl_library</item> 0179 <item>tcl_patchLevel</item> 0180 <item>tcl_platform</item> 0181 <item>tcl_precision</item> 0182 <item>tcl_rcFileName</item> 0183 <item>tcl_rcRsrcName</item> 0184 <item>tcl_startOfNextWord</item> 0185 <item>tcl_startOfPreviousWord</item> 0186 <item>tcl_traceCompile</item> 0187 <item>tcl_traceExec</item> 0188 <item>tcl_version</item> 0189 <item>tcl_wordBreakAfter</item> 0190 <item>tcl_wordBreakBefore</item> 0191 <item>tell</item> 0192 <item>text</item> 0193 <item>time</item> 0194 <item>tk</item> 0195 <item>tkTabToWindow</item> 0196 <item>tkwait</item> 0197 <item>tk_chooseColor</item> 0198 <item>tk_chooseDirectory</item> 0199 <item>tk_focusFollowMouse</item> 0200 <item>tk_focusNext</item> 0201 <item>tk_focusPrev</item> 0202 <item>tk_getOpenFile</item> 0203 <item>tk_getSaveFile</item> 0204 <item>tk_library</item> 0205 <item>tk_menuSetFocus</item> 0206 <item>tk_messageBox</item> 0207 <item>tk_optionMenu</item> 0208 <item>tk_patchLevel</item> 0209 <item>tk_popup</item> 0210 <item>tk_strictMotif</item> 0211 <item>tk_textCopy</item> 0212 <item>tk_textCut</item> 0213 <item>tk_textPaste</item> 0214 <item>tk_version</item> 0215 <item>toplevel</item> 0216 <item>trace</item> 0217 <item>traverseTo</item> 0218 <item>treeview</item> 0219 <item>unknown</item> 0220 <item>unload</item> 0221 <item>unset</item> 0222 <item>update</item> 0223 <item>uplevel</item> 0224 <item>upvar</item> 0225 <item>variable</item> 0226 <item>vwait</item> 0227 <item>while</item> 0228 <item>winfo</item> 0229 <item>wm</item> 0230 </list> 0231 0232 <list name="keywords-opt"> 0233 <item>add</item> 0234 <item>args</item> 0235 <item>atime</item> 0236 <item>attributes</item> 0237 <item>body</item> 0238 <item>bytelength</item> 0239 <item>cancel</item> 0240 <item>channels</item> 0241 <item>clicks</item> 0242 <item>cmdcount</item> 0243 <item>commands</item> 0244 <item>compare</item> 0245 <item>complete</item> 0246 <item>convertfrom</item> 0247 <item>convertto</item> 0248 <item>copy</item> 0249 <item>default</item> 0250 <item>delete</item> 0251 <item>dirname</item> 0252 <item>equal</item> 0253 <item>executable</item> 0254 <item>exists</item> 0255 <item>extension</item> 0256 <item>first</item> 0257 <item>forget</item> 0258 <item>format</item> 0259 <item>functions</item> 0260 <item>globals</item> 0261 <item>hostname</item> 0262 <item>idle</item> 0263 <item>ifneeded</item> 0264 <item>index</item> 0265 <item>info</item> 0266 <item>is</item> 0267 <item>isdirectory</item> 0268 <item>isfile</item> 0269 <item>join</item> 0270 <item>last</item> 0271 <item>length</item> 0272 <item>level</item> 0273 <item>library</item> 0274 <item>link</item> 0275 <item>loaded</item> 0276 <item>locals</item> 0277 <item>lstat</item> 0278 <item>map</item> 0279 <item>match</item> 0280 <item>mkdir</item> 0281 <item>mtime</item> 0282 <item>nameofexecutable</item> 0283 <item>names</item> 0284 <item>nativename</item> 0285 <item>normalize</item> 0286 <item>number</item> 0287 <item>owned</item> 0288 <item>patchlevel</item> 0289 <item>pathtype</item> 0290 <item>present</item> 0291 <item>procs</item> 0292 <item>provide</item> 0293 <item>range</item> 0294 <item>readable</item> 0295 <item>readlink</item> 0296 <item>remove</item> 0297 <item>rename</item> 0298 <item>repeat</item> 0299 <item>replace</item> 0300 <item>require</item> 0301 <item>rootname</item> 0302 <item>scan</item> 0303 <item>script</item> 0304 <item>seconds</item> 0305 <item>separator</item> 0306 <item>sharedlibextension</item> 0307 <item>size</item> 0308 <item>split</item> 0309 <item>stat</item> 0310 <item>system</item> 0311 <item>tail</item> 0312 <item>tclversion</item> 0313 <item>tolower</item> 0314 <item>totitle</item> 0315 <item>toupper</item> 0316 <item>trim</item> 0317 <item>trimleft</item> 0318 <item>trimright</item> 0319 <item>type</item> 0320 <item>unknown</item> 0321 <item>variable</item> 0322 <item>vars</item> 0323 <item>vcompare</item> 0324 <item>vdelete</item> 0325 <item>versions</item> 0326 <item>vinfo</item> 0327 <item>volumes</item> 0328 <item>vsatisfies</item> 0329 <item>wordend</item> 0330 <item>wordstart</item> 0331 <item>writable</item> 0332 0333 <item>activate</item> 0334 <item>actual</item> 0335 <item>addtag</item> 0336 <item>append</item> 0337 <item>appname</item> 0338 <item>aspect</item> 0339 <item>atom</item> 0340 <item>atomname</item> 0341 <item>bbox</item> 0342 <item>bind</item> 0343 <item>broadcast</item> 0344 <item>canvasx</item> 0345 <item>canvasy</item> 0346 <item>caret</item> 0347 <item>cells</item> 0348 <item>cget</item> 0349 <item>children</item> 0350 <item>class</item> 0351 <item>clear</item> 0352 <item>client</item> 0353 <item>clone</item> 0354 <item>colormapfull</item> 0355 <item>colormapwindows</item> 0356 <item>command</item> 0357 <item>configure</item> 0358 <item>containing</item> 0359 <item>coords</item> 0360 <item>create</item> 0361 <item>current</item> 0362 <item>curselection</item> 0363 <item>dchars</item> 0364 <item>debug</item> 0365 <item>deiconify</item> 0366 <item>delta</item> 0367 <item>depth</item> 0368 <item>deselect</item> 0369 <item>dlineinfo</item> 0370 <item>dtag</item> 0371 <item>dump</item> 0372 <item>edit</item> 0373 <item>entrycget</item> 0374 <item>entryconfigure</item> 0375 <item>families</item> 0376 <item>find</item> 0377 <item>flash</item> 0378 <item>focus</item> 0379 <item>focusmodel</item> 0380 <item>fpixels</item> 0381 <item>fraction</item> 0382 <item>frame</item> 0383 <item>generate</item> 0384 <item>geometry</item> 0385 <item>get</item> 0386 <item>gettags</item> 0387 <item>grid</item> 0388 <item>group</item> 0389 <item>handle</item> 0390 <item>height</item> 0391 <item>hide</item> 0392 <item>iconbitmap</item> 0393 <item>iconify</item> 0394 <item>iconmask</item> 0395 <item>iconname</item> 0396 <item>iconposition</item> 0397 <item>iconwindow</item> 0398 <item>icursor</item> 0399 <item>id</item> 0400 <item>identify</item> 0401 <item>image</item> 0402 <item>insert</item> 0403 <item>interps</item> 0404 <item>inuse</item> 0405 <item>invoke</item> 0406 <item>ismapped</item> 0407 <item>itemcget</item> 0408 <item>itemconfigure</item> 0409 <item>keys</item> 0410 <item>lower</item> 0411 <item>manager</item> 0412 <item>mark</item> 0413 <item>maxsize</item> 0414 <item>measure</item> 0415 <item>metrics</item> 0416 <item>minsize</item> 0417 <item>move</item> 0418 <item>name</item> 0419 <item>nearest</item> 0420 <item>overrideredirect</item> 0421 <item>own</item> 0422 <item>panecget</item> 0423 <item>paneconfigure</item> 0424 <item>panes</item> 0425 <item>parent</item> 0426 <item>pathname</item> 0427 <item>pixels</item> 0428 <item>pointerx</item> 0429 <item>pointerxy</item> 0430 <item>pointery</item> 0431 <item>positionfrom</item> 0432 <item>post</item> 0433 <item>postcascade</item> 0434 <item>postscript</item> 0435 <item>protocol</item> 0436 <item>proxy</item> 0437 <item>raise</item> 0438 <item>release</item> 0439 <item>reqheight</item> 0440 <item>reqwidth</item> 0441 <item>resizable</item> 0442 <item>rgb</item> 0443 <item>rootx</item> 0444 <item>rooty</item> 0445 <item>scale</item> 0446 <item>scaling</item> 0447 <item>screen</item> 0448 <item>screencells</item> 0449 <item>screendepth</item> 0450 <item>screenheight</item> 0451 <item>screenmmheight</item> 0452 <item>screenmmwidth</item> 0453 <item>screenvisual</item> 0454 <item>screenwidth</item> 0455 <item>search</item> 0456 <item>see</item> 0457 <item>select</item> 0458 <item>selection</item> 0459 <item>server</item> 0460 <item>set</item> 0461 <item>show</item> 0462 <item>sizefrom</item> 0463 <item>stackorder</item> 0464 <item>state</item> 0465 <item>status</item> 0466 <item>tag</item> 0467 <item>title</item> 0468 <item>toplevel</item> 0469 <item>transient</item> 0470 <item>types</item> 0471 <item>unpost</item> 0472 <item>useinputmethods</item> 0473 <item>validate</item> 0474 <item>values</item> 0475 <item>viewable</item> 0476 <item>visual</item> 0477 <item>visualid</item> 0478 <item>visualsavailable</item> 0479 <item>vrootheight</item> 0480 <item>vrootwidth</item> 0481 <item>vrootx</item> 0482 <item>vrooty</item> 0483 <item>width</item> 0484 <item>window</item> 0485 <item>windowingsystem</item> 0486 <item>withdraw</item> 0487 <item>x</item> 0488 <item>xview</item> 0489 <item>y</item> 0490 </list> 0491 0492 <contexts> 0493 <context name = "Base" attribute = "Normal Text" lineEndContext="#stay"> 0494 0495 <!-- Virtual blocks --> 0496 <RegExpr attribute="Region Marker" context="#stay" String="#\s*BEGIN.*$" beginRegion="region" firstNonSpace="true"/> 0497 <RegExpr attribute="Region Marker" context="#stay" String="#\s*END.*$" endRegion="region" firstNonSpace="true"/> 0498 0499 <!-- Standard --> 0500 <keyword String = "keywords" attribute = "Keyword" context="#stay"/> 0501 <keyword String = "keywords-opt" attribute = "Parameter" context="#stay"/> 0502 <Float attribute = "Float" context="#stay"/> 0503 <Int attribute ="Decimal" context="#stay"/> 0504 <RegExpr String="\\." attribute = "Char" context = "#stay"/> 0505 0506 <!-- Options --> 0507 <RegExpr String = "\s-\w+" attribute = "Parameter" context="#stay"/> 0508 0509 <!-- Variables --> 0510 <RegExpr String = "\$\{([^\}]|\\\})+\}|\$(::|\w)+" attribute = "Variable" context="#stay"/> 0511 0512 <!-- Strings --> 0513 <Detect2Chars char = """ char1 = """ attribute = "String" context="#stay"/> 0514 <DetectChar char = """ attribute = "String" context="String"/> 0515 0516 <!-- Comments --> 0517 <DetectChar char = ";" attribute = "Normal Text" context="New command line" /> 0518 <DetectChar char = "#" attribute = "Comment" context="Comment" firstNonSpace="true"/> 0519 0520 <!-- Braces, brackets, etc --> 0521 <DetectChar char = "{" attribute = "Keyword" context="#stay" beginRegion="block"/> 0522 <DetectChar char = "}" attribute = "Keyword" context="#stay" endRegion="block"/> 0523 <AnyChar String= "[]" attribute = "Keyword" context="#stay"/> 0524 0525 </context> 0526 0527 <context name = "String" attribute = "String" lineEndContext="#stay"> 0528 <RegExpr String="\\." attribute = "Char" context = "#stay"/> 0529 <DetectChar char=""" attribute = "String" context = "#pop"/> 0530 <DetectChar char = "$" attribute = "Variable" context="#stay"/> 0531 </context> 0532 0533 <context name = "Comment" attribute = "Comment" lineEndContext="#pop"> 0534 <DetectSpaces /> 0535 <IncludeRules context="##Comments"/> 0536 </context> 0537 0538 <context name = "New command line" attribute = "Normal Text" lineEndContext="#stay" fallthroughContext="#pop"> 0539 <DetectSpaces attribute="Normal Text" context="#stay"/> 0540 <DetectChar char="#" attribute="Comment" context="Comment" /> 0541 </context> 0542 </contexts> 0543 0544 <itemDatas> 0545 <itemData name = "Normal Text" defStyleNum = "dsNormal"/> 0546 <itemData name = "Keyword" defStyleNum = "dsKeyword"/> 0547 <itemData name = "Decimal" defStyleNum = "dsDecVal"/> 0548 <itemData name = "Float" defStyleNum = "dsFloat"/> 0549 <itemData name = "String" defStyleNum = "dsString"/> 0550 <itemData name = "Comment" defStyleNum = "dsComment"/> 0551 <itemData name = "Parameter" defStyleNum = "dsOthers"/> 0552 <itemData name = "Variable" defStyleNum = "dsDataType"/> 0553 <itemData name = "Char" defStyleNum="dsChar"/> 0554 <itemData name = "Region Marker" defStyleNum="dsRegionMarker"/> 0555 </itemDatas> 0556 0557 </highlighting> 0558 0559 <general> 0560 <comments> 0561 <comment name="singleLine" start="#" /> 0562 </comments> 0563 <keywords casesensitive="1"/> 0564 </general> 0565 0566 </language> 0567 <!-- kate: replace-tabs on; indent-width 2; -->