xref: /vim-8.2.3635/runtime/syntax/spup.vim (revision 6c391a74)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:     Speedup, plant simulator from AspenTech
3071d4279SBram Moolenaar" Maintainer:   Stefan.Schwarzer <[email protected]>
4071d4279SBram Moolenaar" URL:		http://www.ndh.net/home/sschwarzer/download/spup.vim
5b8ff1fb5SBram Moolenaar" Last Change:  2012 Feb 03 by Thilo Six
6071d4279SBram Moolenaar" Filename:     spup.vim
7071d4279SBram Moolenaar
8071d4279SBram Moolenaar" Bugs
9071d4279SBram Moolenaar" - in the appropriate sections keywords are always highlighted
10071d4279SBram Moolenaar"   even if they are not used with the appropriate meaning;
11071d4279SBram Moolenaar"   example: in
12071d4279SBram Moolenaar"       MODEL demonstration
13071d4279SBram Moolenaar"       TYPE
14071d4279SBram Moolenaar"      *area AS area
15071d4279SBram Moolenaar"   both "area" are highlighted as spupType.
16071d4279SBram Moolenaar"
17071d4279SBram Moolenaar" If you encounter problems or have questions or suggestions, mail me
18071d4279SBram Moolenaar
19071d4279SBram Moolenaar" Remove old syntax stuff
2089bcfda6SBram Moolenaar" quit when a syntax file was already loaded
2189bcfda6SBram Moolenaarif exists("b:current_syntax")
22071d4279SBram Moolenaar    finish
23071d4279SBram Moolenaarendif
24071d4279SBram Moolenaar
25b8ff1fb5SBram Moolenaarlet s:cpo_save = &cpo
26b8ff1fb5SBram Moolenaarset cpo&vim
27b8ff1fb5SBram Moolenaar
28*6c391a74SBram Moolenaar" don't highlight several keywords like subsections
29071d4279SBram Moolenaar"let strict_subsections = 1
30071d4279SBram Moolenaar
31071d4279SBram Moolenaar" highlight types usually found in DECLARE section
32071d4279SBram Moolenaarif !exists("hightlight_types")
33071d4279SBram Moolenaar    let highlight_types = 1
34071d4279SBram Moolenaarendif
35071d4279SBram Moolenaar
36071d4279SBram Moolenaar" one line comment syntax (# comments)
37071d4279SBram Moolenaar" 1. allow appended code after comment, do not complain
38*6c391a74SBram Moolenaar" 2. show code beginning with the second # as an error
39071d4279SBram Moolenaar" 3. show whole lines with more than one # as an error
40071d4279SBram Moolenaarif !exists("oneline_comments")
41071d4279SBram Moolenaar    let oneline_comments = 2
42071d4279SBram Moolenaarendif
43071d4279SBram Moolenaar
44071d4279SBram Moolenaar" Speedup SECTION regions
45071d4279SBram Moolenaarsyn case ignore
46071d4279SBram Moolenaarsyn region spupCdi	  matchgroup=spupSection start="^CDI"	     end="^\*\*\*\*" contains=spupCdiSubs,@spupOrdinary
47071d4279SBram Moolenaarsyn region spupConditions matchgroup=spupSection start="^CONDITIONS" end="^\*\*\*\*" contains=spupConditionsSubs,@spupOrdinary,spupConditional,spupOperator,spupCode
48071d4279SBram Moolenaarsyn region spupDeclare    matchgroup=spupSection start="^DECLARE"    end="^\*\*\*\*" contains=spupDeclareSubs,@spupOrdinary,spupTypes,spupCode
49071d4279SBram Moolenaarsyn region spupEstimation matchgroup=spupSection start="^ESTIMATION" end="^\*\*\*\*" contains=spupEstimationSubs,@spupOrdinary
50071d4279SBram Moolenaarsyn region spupExternal   matchgroup=spupSection start="^EXTERNAL"   end="^\*\*\*\*" contains=spupExternalSubs,@spupOrdinary
51071d4279SBram Moolenaarsyn region spupFlowsheet  matchgroup=spupSection start="^FLOWSHEET"  end="^\*\*\*\*" contains=spupFlowsheetSubs,@spupOrdinary,spupStreams,@spupTextproc
52071d4279SBram Moolenaarsyn region spupFunction   matchgroup=spupSection start="^FUNCTION"   end="^\*\*\*\*" contains=spupFunctionSubs,@spupOrdinary,spupHelp,spupCode,spupTypes
53071d4279SBram Moolenaarsyn region spupGlobal     matchgroup=spupSection start="^GLOBAL"     end="^\*\*\*\*" contains=spupGlobalSubs,@spupOrdinary
54071d4279SBram Moolenaarsyn region spupHomotopy   matchgroup=spupSection start="^HOMOTOPY"   end="^\*\*\*\*" contains=spupHomotopySubs,@spupOrdinary
55071d4279SBram Moolenaarsyn region spupMacro      matchgroup=spupSection start="^MACRO"      end="^\*\*\*\*" contains=spupMacroSubs,@spupOrdinary,@spupTextproc,spupTypes,spupStreams,spupOperator
56071d4279SBram Moolenaarsyn region spupModel      matchgroup=spupSection start="^MODEL"      end="^\*\*\*\*" contains=spupModelSubs,@spupOrdinary,spupConditional,spupOperator,spupTypes,spupStreams,@spupTextproc,spupHelp
57071d4279SBram Moolenaarsyn region spupOperation  matchgroup=spupSection start="^OPERATION"  end="^\*\*\*\*" contains=spupOperationSubs,@spupOrdinary,@spupTextproc
58071d4279SBram Moolenaarsyn region spupOptions    matchgroup=spupSection start="^OPTIONS"    end="^\*\*\*\*" contains=spupOptionsSubs,@spupOrdinary
59071d4279SBram Moolenaarsyn region spupProcedure  matchgroup=spupSection start="^PROCEDURE"  end="^\*\*\*\*" contains=spupProcedureSubs,@spupOrdinary,spupHelp,spupCode,spupTypes
60071d4279SBram Moolenaarsyn region spupProfiles   matchgroup=spupSection start="^PROFILES"   end="^\*\*\*\*" contains=@spupOrdinary,@spupTextproc
61071d4279SBram Moolenaarsyn region spupReport     matchgroup=spupSection start="^REPORT"     end="^\*\*\*\*" contains=spupReportSubs,@spupOrdinary,spupHelp,@spupTextproc
62071d4279SBram Moolenaarsyn region spupTitle      matchgroup=spupSection start="^TITLE"      end="^\*\*\*\*" contains=spupTitleSubs,spupComment,spupConstant,spupError
63071d4279SBram Moolenaarsyn region spupUnit       matchgroup=spupSection start="^UNIT"       end="^\*\*\*\*" contains=spupUnitSubs,@spupOrdinary
64071d4279SBram Moolenaar
65071d4279SBram Moolenaar" Subsections
66071d4279SBram Moolenaarsyn keyword spupCdiSubs	       INPUT FREE OUTPUT LINEARTIME MINNONZERO CALCULATE FILES SCALING contained
67071d4279SBram Moolenaarsyn keyword spupDeclareSubs    TYPE STREAM contained
68071d4279SBram Moolenaarsyn keyword spupEstimationSubs ESTIMATE SSEXP DYNEXP RESULT contained
69071d4279SBram Moolenaarsyn keyword spupExternalSubs   TRANSMIT RECEIVE contained
70071d4279SBram Moolenaarsyn keyword spupFlowsheetSubs  STREAM contained
71071d4279SBram Moolenaarsyn keyword spupFunctionSubs   INPUT OUTPUT contained
72071d4279SBram Moolenaarsyn keyword spupGlobalSubs     VARIABLES MAXIMIZE MINIMIZE CONSTRAINT contained
73071d4279SBram Moolenaarsyn keyword spupHomotopySubs   VARY OPTIONS contained
74071d4279SBram Moolenaarsyn keyword spupMacroSubs      MODEL FLOWSHEET contained
75071d4279SBram Moolenaarsyn keyword spupModelSubs      CATEGORY SET TYPE STREAM EQUATION PROCEDURE contained
76071d4279SBram Moolenaarsyn keyword spupOperationSubs  SET PRESET INITIAL SSTATE FREE contained
77071d4279SBram Moolenaarsyn keyword spupOptionsSubs    ROUTINES TRANSLATE EXECUTION contained
78071d4279SBram Moolenaarsyn keyword spupProcedureSubs  INPUT OUTPUT SPACE PRECALL POSTCALL DERIVATIVE STREAM contained
79071d4279SBram Moolenaar" no subsections for Profiles
80071d4279SBram Moolenaarsyn keyword spupReportSubs     SET INITIAL FIELDS FIELDMARK DISPLAY WITHIN contained
81071d4279SBram Moolenaarsyn keyword spupUnitSubs       ROUTINES SET contained
82071d4279SBram Moolenaar
83071d4279SBram Moolenaar" additional keywords for subsections
84071d4279SBram Moolenaarif !exists( "strict_subsections" )
85071d4279SBram Moolenaar    syn keyword spupConditionsSubs STOP PRINT contained
86071d4279SBram Moolenaar    syn keyword spupDeclareSubs    UNIT SET COMPONENTS THERMO OPTIONS contained
87071d4279SBram Moolenaar    syn keyword spupEstimationSubs VARY MEASURE INITIAL contained
88071d4279SBram Moolenaar    syn keyword spupFlowsheetSubs  TYPE FEED PRODUCT INPUT OUTPUT CONNECTION OF IS contained
89071d4279SBram Moolenaar    syn keyword spupMacroSubs      CONNECTION STREAM SET INPUT OUTPUT OF IS FEED PRODUCT TYPE contained
90071d4279SBram Moolenaar    syn keyword spupModelSubs      AS ARRAY OF INPUT OUTPUT CONNECTION contained
91071d4279SBram Moolenaar    syn keyword spupOperationSubs  WITHIN contained
92071d4279SBram Moolenaar    syn keyword spupReportSubs     LEFT RIGHT CENTER CENTRE UOM TIME DATE VERSION RELDATE contained
93071d4279SBram Moolenaar    syn keyword spupUnitSubs       IS A contained
94071d4279SBram Moolenaarendif
95071d4279SBram Moolenaar
96071d4279SBram Moolenaar" Speedup data types
97071d4279SBram Moolenaarif exists( "highlight_types" )
98071d4279SBram Moolenaar    syn keyword spupTypes act_coeff_liq area coefficient concentration contained
99071d4279SBram Moolenaar    syn keyword spupTypes control_signal cond_liq cond_vap cp_mass_liq contained
100071d4279SBram Moolenaar    syn keyword spupTypes cp_mol_liq cp_mol_vap cv_mol_liq cv_mol_vap contained
101071d4279SBram Moolenaar    syn keyword spupTypes diffus_liq diffus_vap delta_p dens_mass contained
102071d4279SBram Moolenaar    syn keyword spupTypes dens_mass_sol dens_mass_liq dens_mass_vap dens_mol contained
103071d4279SBram Moolenaar    syn keyword spupTypes dens_mol_sol dens_mol_liq dens_mol_vap enthflow contained
104071d4279SBram Moolenaar    syn keyword spupTypes enth_mass enth_mass_liq enth_mass_vap enth_mol contained
105071d4279SBram Moolenaar    syn keyword spupTypes enth_mol_sol enth_mol_liq enth_mol_vap entr_mol contained
106071d4279SBram Moolenaar    syn keyword spupTypes entr_mol_sol entr_mol_liq entr_mol_vap fraction contained
107071d4279SBram Moolenaar    syn keyword spupTypes flow_mass flow_mass_liq flow_mass_vap flow_mol contained
108071d4279SBram Moolenaar    syn keyword spupTypes flow_mol_vap flow_mol_liq flow_vol flow_vol_vap contained
109071d4279SBram Moolenaar    syn keyword spupTypes flow_vol_liq fuga_vap fuga_liq fuga_sol contained
110071d4279SBram Moolenaar    syn keyword spupTypes gibb_mol_sol heat_react heat_trans_coeff contained
111071d4279SBram Moolenaar    syn keyword spupTypes holdup_heat holdup_heat_liq holdup_heat_vap contained
112071d4279SBram Moolenaar    syn keyword spupTypes holdup_mass holdup_mass_liq holdup_mass_vap contained
113071d4279SBram Moolenaar    syn keyword spupTypes holdup_mol holdup_mol_liq holdup_mol_vap k_value contained
114071d4279SBram Moolenaar    syn keyword spupTypes length length_delta length_short liqfraction contained
115071d4279SBram Moolenaar    syn keyword spupTypes liqmassfraction mass massfraction molefraction contained
116071d4279SBram Moolenaar    syn keyword spupTypes molweight moment_inertia negative notype percent contained
117071d4279SBram Moolenaar    syn keyword spupTypes positive pressure press_diff press_drop press_rise contained
118071d4279SBram Moolenaar    syn keyword spupTypes ratio reaction reaction_mass rotation surf_tens contained
119071d4279SBram Moolenaar    syn keyword spupTypes temperature temperature_abs temp_diff temp_drop contained
120071d4279SBram Moolenaar    syn keyword spupTypes temp_rise time vapfraction vapmassfraction contained
121071d4279SBram Moolenaar    syn keyword spupTypes velocity visc_liq visc_vap volume zmom_rate contained
122071d4279SBram Moolenaar    syn keyword spupTypes seg_rate smom_rate tmom_rate zmom_mass seg_mass contained
123071d4279SBram Moolenaar    syn keyword spupTypes smom_mass tmom_mass zmom_holdup seg_holdup contained
124071d4279SBram Moolenaar    syn keyword spupTypes smom_holdup tmom_holdup contained
125071d4279SBram Moolenaarendif
126071d4279SBram Moolenaar
127071d4279SBram Moolenaar" stream types
128071d4279SBram Moolenaarsyn keyword spupStreams  mainstream vapour liquid contained
129071d4279SBram Moolenaar
130071d4279SBram Moolenaar" "conditional" keywords
131071d4279SBram Moolenaarsyn keyword spupConditional  IF THEN ELSE ENDIF contained
132071d4279SBram Moolenaar" Operators, symbols etc.
133071d4279SBram Moolenaarsyn keyword spupOperator  AND OR NOT contained
134071d4279SBram Moolenaarsyn match spupSymbol  "[,\-+=:;*/\"<>@%()]" contained
135071d4279SBram Moolenaarsyn match spupSpecial  "[&\$?]" contained
136071d4279SBram Moolenaar" Surprisingly, Speedup allows no unary + instead of the -
137071d4279SBram Moolenaarsyn match spupError  "[(=+\-*/]\s*+\d\+\([ed][+-]\=\d\+\)\=\>"lc=1 contained
138071d4279SBram Moolenaarsyn match spupError  "[(=+\-*/]\s*+\d\+\.\([ed][+-]\=\d\+\)\=\>"lc=1 contained
139071d4279SBram Moolenaarsyn match spupError  "[(=+\-*/]\s*+\d*\.\d\+\([ed][+-]\=\d\+\)\=\>"lc=1 contained
140071d4279SBram Moolenaar" String
141071d4279SBram Moolenaarsyn region spupString  start=+"+  end=+"+  oneline contained
142071d4279SBram Moolenaarsyn region spupString  start=+'+  end=+'+  oneline contained
143071d4279SBram Moolenaar" Identifier
144071d4279SBram Moolenaarsyn match spupIdentifier  "\<[a-z][a-z0-9_]*\>" contained
145071d4279SBram Moolenaar" Textprocessor directives
146071d4279SBram Moolenaarsyn match spupTextprocGeneric  "?[a-z][a-z0-9_]*\>" contained
147071d4279SBram Moolenaarsyn region spupTextprocError matchgroup=spupTextprocGeneric start="?ERROR"  end="?END"he=s-1 contained
148071d4279SBram Moolenaar" Number, without decimal point
149071d4279SBram Moolenaarsyn match spupNumber  "-\=\d\+\([ed][+-]\=\d\+\)\=" contained
150071d4279SBram Moolenaar" Number, allows 1. before exponent
151071d4279SBram Moolenaarsyn match spupNumber  "-\=\d\+\.\([ed][+-]\=\d\+\)\=" contained
152071d4279SBram Moolenaar" Number allows .1 before exponent
153071d4279SBram Moolenaarsyn match spupNumber  "-\=\d*\.\d\+\([ed][+-]\=\d\+\)\=" contained
154071d4279SBram Moolenaar" Help subsections
155071d4279SBram Moolenaarsyn region spupHelp  start="^HELP"hs=e+1  end="^\$ENDHELP"he=s-1 contained
156071d4279SBram Moolenaar" Fortran code
157071d4279SBram Moolenaarsyn region spupCode  start="^CODE"hs=e+1  end="^\$ENDCODE"he=s-1 contained
158071d4279SBram Moolenaar" oneline comments
159071d4279SBram Moolenaarif oneline_comments > 3
160071d4279SBram Moolenaar    oneline_comments = 2   " default
161071d4279SBram Moolenaarendif
162071d4279SBram Moolenaarif oneline_comments == 1
163071d4279SBram Moolenaar    syn match spupComment  "#[^#]*#\="
164071d4279SBram Moolenaarelseif oneline_comments == 2
165071d4279SBram Moolenaar    syn match spupError  "#.*$"
166071d4279SBram Moolenaar    syn match spupComment  "#[^#]*"  nextgroup=spupError
167071d4279SBram Moolenaarelseif oneline_comments == 3
168071d4279SBram Moolenaar    syn match spupComment  "#[^#]*"
169071d4279SBram Moolenaar    syn match spupError  "#[^#]*#.*"
170071d4279SBram Moolenaarendif
171071d4279SBram Moolenaar" multiline comments
172071d4279SBram Moolenaarsyn match spupOpenBrace "{" contained
173071d4279SBram Moolenaarsyn match spupError  "}"
174071d4279SBram Moolenaarsyn region spupComment  matchgroup=spupComment2  start="{"  end="}"  keepend  contains=spupOpenBrace
175071d4279SBram Moolenaar
176071d4279SBram Moolenaarsyn cluster spupOrdinary  contains=spupNumber,spupIdentifier,spupSymbol
177071d4279SBram Moolenaarsyn cluster spupOrdinary  add=spupError,spupString,spupComment
178071d4279SBram Moolenaarsyn cluster spupTextproc  contains=spupTextprocGeneric,spupTextprocError
179071d4279SBram Moolenaar
180*6c391a74SBram Moolenaar" define synchronizing; especially OPERATION sections can become very large
181071d4279SBram Moolenaarsyn sync clear
182071d4279SBram Moolenaarsyn sync minlines=100
183071d4279SBram Moolenaarsyn sync maxlines=500
184071d4279SBram Moolenaar
185071d4279SBram Moolenaarsyn sync match spupSyncOperation  grouphere spupOperation  "^OPERATION"
186071d4279SBram Moolenaarsyn sync match spupSyncCdi	  grouphere spupCdi	   "^CDI"
187071d4279SBram Moolenaarsyn sync match spupSyncConditions grouphere spupConditions "^CONDITIONS"
188071d4279SBram Moolenaarsyn sync match spupSyncDeclare    grouphere spupDeclare    "^DECLARE"
189071d4279SBram Moolenaarsyn sync match spupSyncEstimation grouphere spupEstimation "^ESTIMATION"
190071d4279SBram Moolenaarsyn sync match spupSyncExternal   grouphere spupExternal   "^EXTERNAL"
191071d4279SBram Moolenaarsyn sync match spupSyncFlowsheet  grouphere spupFlowsheet  "^FLOWSHEET"
192071d4279SBram Moolenaarsyn sync match spupSyncFunction   grouphere spupFunction   "^FUNCTION"
193071d4279SBram Moolenaarsyn sync match spupSyncGlobal     grouphere spupGlobal     "^GLOBAL"
194071d4279SBram Moolenaarsyn sync match spupSyncHomotopy   grouphere spupHomotopy   "^HOMOTOPY"
195071d4279SBram Moolenaarsyn sync match spupSyncMacro      grouphere spupMacro      "^MACRO"
196071d4279SBram Moolenaarsyn sync match spupSyncModel      grouphere spupModel      "^MODEL"
197071d4279SBram Moolenaarsyn sync match spupSyncOperation  grouphere spupOperation  "^OPERATION"
198071d4279SBram Moolenaarsyn sync match spupSyncOptions    grouphere spupOptions    "^OPTIONS"
199071d4279SBram Moolenaarsyn sync match spupSyncProcedure  grouphere spupProcedure  "^PROCEDURE"
200071d4279SBram Moolenaarsyn sync match spupSyncProfiles   grouphere spupProfiles   "^PROFILES"
201071d4279SBram Moolenaarsyn sync match spupSyncReport     grouphere spupReport     "^REPORT"
202071d4279SBram Moolenaarsyn sync match spupSyncTitle      grouphere spupTitle      "^TITLE"
203071d4279SBram Moolenaarsyn sync match spupSyncUnit       grouphere spupUnit       "^UNIT"
204071d4279SBram Moolenaar
205071d4279SBram Moolenaar" Define the default highlighting.
20689bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
207071d4279SBram Moolenaar
208f37506f6SBram Moolenaarhi def link spupCdi	    spupSection
209f37506f6SBram Moolenaarhi def link spupConditions   spupSection
210f37506f6SBram Moolenaarhi def link spupDeclare	    spupSection
211f37506f6SBram Moolenaarhi def link spupEstimation   spupSection
212f37506f6SBram Moolenaarhi def link spupExternal	    spupSection
213f37506f6SBram Moolenaarhi def link spupFlowsheet    spupSection
214f37506f6SBram Moolenaarhi def link spupFunction	    spupSection
215f37506f6SBram Moolenaarhi def link spupGlobal	    spupSection
216f37506f6SBram Moolenaarhi def link spupHomotopy	    spupSection
217f37506f6SBram Moolenaarhi def link spupMacro	    spupSection
218f37506f6SBram Moolenaarhi def link spupModel	    spupSection
219f37506f6SBram Moolenaarhi def link spupOperation    spupSection
220f37506f6SBram Moolenaarhi def link spupOptions	    spupSection
221f37506f6SBram Moolenaarhi def link spupProcedure    spupSection
222f37506f6SBram Moolenaarhi def link spupProfiles	    spupSection
223f37506f6SBram Moolenaarhi def link spupReport	    spupSection
224f37506f6SBram Moolenaarhi def link spupTitle	    spupConstant  " this is correct, truly ;)
225f37506f6SBram Moolenaarhi def link spupUnit	    spupSection
226071d4279SBram Moolenaar
227f37506f6SBram Moolenaarhi def link spupCdiSubs	      spupSubs
228f37506f6SBram Moolenaarhi def link spupConditionsSubs spupSubs
229f37506f6SBram Moolenaarhi def link spupDeclareSubs    spupSubs
230f37506f6SBram Moolenaarhi def link spupEstimationSubs spupSubs
231f37506f6SBram Moolenaarhi def link spupExternalSubs   spupSubs
232f37506f6SBram Moolenaarhi def link spupFlowsheetSubs  spupSubs
233f37506f6SBram Moolenaarhi def link spupFunctionSubs   spupSubs
234f37506f6SBram Moolenaarhi def link spupHomotopySubs   spupSubs
235f37506f6SBram Moolenaarhi def link spupMacroSubs      spupSubs
236f37506f6SBram Moolenaarhi def link spupModelSubs      spupSubs
237f37506f6SBram Moolenaarhi def link spupOperationSubs  spupSubs
238f37506f6SBram Moolenaarhi def link spupOptionsSubs    spupSubs
239f37506f6SBram Moolenaarhi def link spupProcedureSubs  spupSubs
240f37506f6SBram Moolenaarhi def link spupReportSubs     spupSubs
241f37506f6SBram Moolenaarhi def link spupUnitSubs	      spupSubs
242071d4279SBram Moolenaar
243f37506f6SBram Moolenaarhi def link spupCode	       Normal
244f37506f6SBram Moolenaarhi def link spupComment	       Comment
245f37506f6SBram Moolenaarhi def link spupComment2	       spupComment
246f37506f6SBram Moolenaarhi def link spupConditional     Statement
247f37506f6SBram Moolenaarhi def link spupConstant	       Constant
248f37506f6SBram Moolenaarhi def link spupError	       Error
249f37506f6SBram Moolenaarhi def link spupHelp	       Normal
250f37506f6SBram Moolenaarhi def link spupIdentifier      Identifier
251f37506f6SBram Moolenaarhi def link spupNumber	       Constant
252f37506f6SBram Moolenaarhi def link spupOperator	       Special
253f37506f6SBram Moolenaarhi def link spupOpenBrace       spupError
254f37506f6SBram Moolenaarhi def link spupSection	       Statement
255f37506f6SBram Moolenaarhi def link spupSpecial	       spupTextprocGeneric
256f37506f6SBram Moolenaarhi def link spupStreams	       Type
257f37506f6SBram Moolenaarhi def link spupString	       Constant
258f37506f6SBram Moolenaarhi def link spupSubs	       Statement
259f37506f6SBram Moolenaarhi def link spupSymbol	       Special
260f37506f6SBram Moolenaarhi def link spupTextprocError   Normal
261f37506f6SBram Moolenaarhi def link spupTextprocGeneric PreProc
262f37506f6SBram Moolenaarhi def link spupTypes	       Type
263071d4279SBram Moolenaar
264071d4279SBram Moolenaar
265071d4279SBram Moolenaarlet b:current_syntax = "spup"
266071d4279SBram Moolenaar
267b8ff1fb5SBram Moolenaarlet &cpo = s:cpo_save
268b8ff1fb5SBram Moolenaarunlet s:cpo_save
269b8ff1fb5SBram Moolenaar" vim:ts=8
270