annotate runtime/syntax/tcl.vim @ 1125:96cd8222a819

updated for version 7.1a
author vimboss
date Sat, 05 May 2007 18:24:42 +0000
parents 3fc0f57ecb91
children 7bc41231fbc7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 " Language: TCL/TK
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
3 " Maintainer: Brett Cannon <brett@python.org>
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
4 " (previously Dean Copsey <copsey@cs.ucdavis.edu>)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 " (previously Matt Neumann <mattneu@purpleturtle.com>)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6 " (previously Allan Kelly <allan@fruitloaf.co.uk>)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 " Original: Robin Becker <robin@jessikat.demon.co.uk>
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
8 " Last Change: 2006 Nov 17
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 " Keywords TODO: format clock click anchor
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 " For version 5.x: Clear all syntax items
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 " For version 6.x: Quit when a syntax file was already loaded
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 if version < 600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 syntax clear
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 elseif exists("b:current_syntax")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 " A bunch of useful keywords
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
21 syn keyword tclStatement tell socket subst open eof pwd glob list exec pid
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
22 syn keyword tclStatement auto_load_index time unknown eval lrange fblocked
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
23 syn keyword tclStatement lsearch auto_import gets lappend proc variable llength
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
24 syn keyword tclStatement auto_execok return linsert error catch clock info
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
25 syn keyword tclStatement split array fconfigure concat join lreplace source
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
26 syn keyword tclStatement fcopy global auto_qualify update close cd auto_load
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
27 syn keyword tclStatement file append format read package set binary namespace
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
28 syn keyword tclStatement scan trace seek flush after vwait uplevel lset rename
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
29 syn keyword tclStatement fileevent regexp upvar unset encoding expr load regsub
96cd8222a819 updated for version 7.1a
vimboss
parents: 7
diff changeset
30 syn keyword tclStatement interp exit puts incr lindex lsort tclLog string
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 syn keyword tclLabel case default
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 syn keyword tclConditional if then else elseif switch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 syn keyword tclRepeat while for foreach break continue
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 syn keyword tcltkSwitch contained insert create polygon fill outline tag
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 " WIDGETS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 " commands associated with widgets
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 syn keyword tcltkWidgetSwitch contained background highlightbackground insertontime cget
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 syn keyword tcltkWidgetSwitch contained selectborderwidth borderwidth highlightcolor insertwidth
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 syn keyword tcltkWidgetSwitch contained selectforeground cursor highlightthickness padx setgrid
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 syn keyword tcltkWidgetSwitch contained exportselection insertbackground pady takefocus
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 syn keyword tcltkWidgetSwitch contained font insertborderwidth relief xscrollcommand
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 syn keyword tcltkWidgetSwitch contained foreground insertofftime selectbackground yscrollcommand
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 syn keyword tcltkWidgetSwitch contained height spacing1 spacing2 spacing3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 syn keyword tcltkWidgetSwitch contained state tabs width wrap
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 " button
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 syn keyword tcltkWidgetSwitch contained command default
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 " canvas
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49 syn keyword tcltkWidgetSwitch contained closeenough confine scrollregion xscrollincrement yscrollincrement orient
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 " checkbutton, radiobutton
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 syn keyword tcltkWidgetSwitch contained indicatoron offvalue onvalue selectcolor selectimage state variable
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 " entry, frame
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 syn keyword tcltkWidgetSwitch contained show class colormap container visual
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54 " listbox, menu
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 syn keyword tcltkWidgetSwitch contained selectmode postcommand selectcolor tearoff tearoffcommand title type
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 " menubutton, message
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 syn keyword tcltkWidgetSwitch contained direction aspect justify
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 " scale
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59 syn keyword tcltkWidgetSwitch contained bigincrement digits from length resolution showvalue sliderlength sliderrelief tickinterval to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60 " scrollbar
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 syn keyword tcltkWidgetSwitch contained activerelief elementborderwidth
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 " image
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 syn keyword tcltkWidgetSwitch contained delete names types create
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 " variable reference
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 " ::optional::namespaces
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 syn match tclVarRef "$\(\(::\)\?\([[:alnum:]_.]*::\)*\)\a[a-zA-Z0-9_.]*"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 " ${...} may contain any character except '}'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 syn match tclVarRef "${[^}]*}"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69 " menu, mane add
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 syn keyword tcltkWidgetSwitch contained active end last none cascade checkbutton command radiobutton separator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 syn keyword tcltkWidgetSwitch contained activebackground actveforeground accelerator background bitmap columnbreak
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 syn keyword tcltkWidgetSwitch contained font foreground hidemargin image indicatoron label menu offvalue onvalue
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 syn keyword tcltkWidgetSwitch contained selectcolor selectimage state underline value variable
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 syn keyword tcltkWidgetSwitch contained add clone configure delete entrycget entryconfigure index insert invoke
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 syn keyword tcltkWidgetSwitch contained post postcascade type unpost yposition activate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 "syn keyword tcltkWidgetSwitch contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 "syn match tcltkWidgetSwitch contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<button\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<scale\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<canvas\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<checkbutton\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<entry\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<frame\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<image\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<listbox\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<menubutton\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<message\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<radiobutton\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\<scrollbar\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 " These words are dual purpose.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 " match switches
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 "syn match tcltkWidgetSwitch contained "-text"hs=s+1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 syn match tcltkWidgetSwitch contained "-text\(var\)\?"hs=s+1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 syn match tcltkWidgetSwitch contained "-menu"hs=s+1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 syn match tcltkWidgetSwitch contained "-label"hs=s+1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 " match commands - 2 lines for pretty match.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 "variable
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 " Special case - If a number follows a variable region, it must be at the end of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 " the pattern, by definition. Therefore, (1) either include a number as the region
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 " end and exclude tclNumber from the contains list, or (2) make variable
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 " keepend. As (1) would put variable out of step with everything else, use (2).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 syn region tcltkCommand matchgroup=tcltkCommandColor start="^\<variable\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tclString,tclNumber,tclVarRef,tcltkCommand
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 syn region tcltkCommand matchgroup=tcltkCommandColor start="\s\<variable\>\|\[\<variable\>"hs=s+1 matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tclString,tclNumber,tclVarRef,tcltkCommand
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 " menu
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 syn region tcltkWidget matchgroup=tcltkWidgetColor start="^\<menu\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\s\<menu\>\|\[\<menu\>"hs=s+1 matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 " label
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109 syn region tcltkWidget matchgroup=tcltkWidgetColor start="^\<label\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\s\<label\>\|\[\<label\>"hs=s+1 matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 " text
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112 syn region tcltkWidget matchgroup=tcltkWidgetColor start="^\<text\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidget,tcltkWidgetSwitch,tcltkSwitch,tclNumber,tclVarRef,tclString
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 syn region tcltkWidget matchgroup=tcltkWidgetColor start="\s\<text\>\|\[\<text\>"hs=s+1 matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidget,tcltkWidgetSwitch,tclString,tcltkSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115 " This isn't contained (I don't think) so it's OK to just associate with the Color group.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 " TODO: This could be wrong.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 syn keyword tcltkWidgetColor toplevel
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 syn region tcltkPackConf matchgroup=tcltkPackConfColor start="\<configure\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tcltkPackConfSwitch,tclNumber,tclVarRef keepend
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 syn region tcltkPackConf matchgroup=tcltkPackConfColor start="\<cget\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"me=e-1 contains=tclLineContinue,tcltkWidgetSwitch,tclString,tcltkSwitch,tcltkPackConfSwitch,tclNumber,tclVarRef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 " NAMESPACE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 " commands associated with namespace
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126 syn keyword tcltkNamespaceSwitch contained children code current delete eval
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 syn keyword tcltkNamespaceSwitch contained export forget import inscope origin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128 syn keyword tcltkNamespaceSwitch contained parent qualifiers tail which command variable
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129 syn region tcltkCommand matchgroup=tcltkCommandColor start="\<namespace\>" matchgroup=NONE skip="^\s*$" end="{\|}\|]\|\"\|[^\\]*\s*$"me=e-1 contains=tclLineContinue,tcltkNamespaceSwitch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 " EXPR
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 " commands associated with expr
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 syn keyword tcltkMaths contained acos cos hypot sinh
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 syn keyword tcltkMaths contained asin cosh log sqrt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 syn keyword tcltkMaths contained atan exp log10 tan
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 syn keyword tcltkMaths contained atan2 floor pow tanh
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 syn keyword tcltkMaths contained ceil fmod sin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 syn region tcltkCommand matchgroup=tcltkCommandColor start="\<expr\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"me=e-1 contains=tclLineContinue,tcltkMaths,tclNumber,tclVarRef,tclString,tcltlWidgetSwitch,tcltkCommand,tcltkPackConf
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 " format
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 syn region tcltkCommand matchgroup=tcltkCommandColor start="\<format\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"me=e-1 contains=tclLineContinue,tcltkMaths,tclNumber,tclVarRef,tclString,tcltlWidgetSwitch,tcltkCommand,tcltkPackConf
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143 " PACK
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 " commands associated with pack
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 syn keyword tcltkPackSwitch contained forget info propogate slaves
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 syn keyword tcltkPackConfSwitch contained after anchor before expand fill in ipadx ipady padx pady side
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 syn region tcltkCommand matchgroup=tcltkCommandColor start="\<pack\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkPackSwitch,tcltkPackConf,tcltkPackConfSwitch,tclNumber,tclVarRef,tclString,tcltkCommand keepend
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 " STRING
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 " commands associated with string
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 syn keyword tcltkStringSwitch contained compare first index last length match range tolower toupper trim trimleft trimright wordstart wordend
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 syn region tcltkCommand matchgroup=tcltkCommandColor start="\<string\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkStringSwitch,tclNumber,tclVarRef,tclString,tcltkCommand
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 " ARRAY
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 " commands associated with array
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 syn keyword tcltkArraySwitch contained anymore donesearch exists get names nextelement size startsearch set
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 " match from command name to ] or EOL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 syn region tcltkCommand matchgroup=tcltkCommandColor start="\<array\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkArraySwitch,tclNumber,tclVarRef,tclString,tcltkCommand
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 " LSORT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 " switches for lsort
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 syn keyword tcltkLsortSwitch contained ascii dictionary integer real command increasing decreasing index
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163 " match from command name to ] or EOL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 syn region tcltkCommand matchgroup=tcltkCommandColor start="\<lsort\>" matchgroup=NONE skip="^\s*$" end="]\|[^\\]*\s*$"he=e-1 contains=tclLineContinue,tcltkLsortSwitch,tclNumber,tclVarRef,tclString,tcltkCommand
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166 syn keyword tclTodo contained TODO
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
168
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 " String and Character contstants
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170 " Highlight special characters (those which have a backslash) differently
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
171 syn match tclSpecial contained "\\\d\d\d\=\|\\."
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
172 " A string needs the skip argument as it may legitimately contain \".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
173 " Match at start of line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
174 syn region tclString start=+^"+ end=+"+ contains=tclSpecial skip=+\\\\\|\\"+
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
175 "Match all other legal strings.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
176 syn region tclString start=+[^\\]"+ms=s+1 end=+"+ contains=tclSpecial skip=+\\\\\|\\"+
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178 syn match tclLineContinue "\\\s*$"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
179
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 "integer number, or floating point number without a dot and with "f".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181 syn case ignore
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
182 syn match tclNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
183 "floating point number, with dot, optional exponent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184 syn match tclNumber "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
185 "floating point number, starting with a dot, optional exponent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186 syn match tclNumber "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 "floating point number, without dot, with exponent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 syn match tclNumber "\<\d\+e[-+]\=\d\+[fl]\=\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189 "hex number
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 syn match tclNumber "0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191 "syn match tclIdentifier "\<[a-z_][a-z0-9_]*\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192 syn case match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
194 syn region tclComment start="^\s*\#" skip="\\$" end="$" contains=tclTodo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
195 syn region tclComment start=/;\s*\#/hs=s+1 skip="\\$" end="$" contains=tclTodo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197 "syn sync ccomment tclComment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
198
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
199 " Define the default highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200 " For version 5.7 and earlier: only when not done already
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
201 " For version 5.8 and later: only when an item doesn't have highlighting yet
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
202 if version >= 508 || !exists("did_tcl_syntax_inits")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203 if version < 508
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204 let did_tcl_syntax_inits = 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205 command -nargs=+ HiLink hi link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
206 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
207 command -nargs=+ HiLink hi def link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
208 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
209
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
210 HiLink tcltkSwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
211 HiLink tclLabel Label
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
212 HiLink tclConditional Conditional
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
213 HiLink tclRepeat Repeat
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214 HiLink tclNumber Number
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
215 HiLink tclError Error
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
216 HiLink tclStatement Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
217 "HiLink tclStatementColor Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
218 HiLink tclString String
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
219 HiLink tclComment Comment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
220 HiLink tclSpecial Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
221 HiLink tclTodo Todo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
222 " Below here are the commands and their options.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
223 HiLink tcltkCommandColor Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
224 HiLink tcltkWidgetColor Structure
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
225 HiLink tclLineContinue WarningMsg
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
226 HiLink tcltkStringSwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
227 HiLink tcltkArraySwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
228 HiLink tcltkLsortSwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
229 HiLink tcltkPackSwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
230 HiLink tcltkPackConfSwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
231 HiLink tcltkMaths Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
232 HiLink tcltkNamespaceSwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
233 HiLink tcltkWidgetSwitch Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
234 HiLink tcltkPackConfColor Identifier
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
235 "HiLink tcltkLsort Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
236 HiLink tclVarRef Identifier
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238 delcommand HiLink
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
240
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
241 let b:current_syntax = "tcl"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
242
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
243 " vim: ts=8