blob: 3389771b7877ac47718e1a28a0ce972d2745a357 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
Bram Moolenaareb3dc872018-05-13 22:34:24 +02002" Language: NSIS script, for version of NSIS 3.03 and later
Bram Moolenaar40962ec2018-01-28 22:47:25 +01003" Maintainer: Ken Takata
4" URL: https://github.com/k-takata/vim-nsis
5" Previous Maintainer: Alex Jakushev <Alex.Jakushev@kemek.lt>
Bram Moolenaar2c64ca12018-10-19 16:22:31 +02006" Last Change: 2018-10-02
Bram Moolenaar071d4272004-06-13 20:20:40 +00007
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02008" quit when a syntax file was already loaded
9if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +000010 finish
11endif
12
Bram Moolenaar40962ec2018-01-28 22:47:25 +010013let s:cpo_save = &cpo
14set cpo&vim
15
Bram Moolenaar071d4272004-06-13 20:20:40 +000016syn case ignore
17
18
Bram Moolenaar40962ec2018-01-28 22:47:25 +010019"Pseudo definitions
20syn match nsisLine nextgroup=@nsisPseudoStatement skipwhite "^"
21syn cluster nsisPseudoStatement contains=nsisFirstComment,nsisLocalLabel,nsisGlobalLabel
22syn cluster nsisPseudoStatement add=nsisDefine,nsisPreCondit,nsisMacro,nsisInclude,nsisSystem
23syn cluster nsisPseudoStatement add=nsisAttribute,nsisCompiler,nsisVersionInfo,nsisInstruction,nsisStatement
24
25"COMMENTS (4.1)
Bram Moolenaar071d4272004-06-13 20:20:40 +000026syn keyword nsisTodo todo attention note fixme readme
Bram Moolenaar40962ec2018-01-28 22:47:25 +010027syn region nsisComment start="[;#]" end="$" contains=nsisTodo,nsisLineContinuation,@Spell oneline
28syn region nsisComment start=".\@1<=/\*" end="\*/" contains=nsisTodo,@Spell
29syn region nsisFirstComment start="/\*" end="\*/" contained contains=nsisTodo,@Spell skipwhite
30 \ nextgroup=@nsisPseudoStatement
Bram Moolenaar071d4272004-06-13 20:20:40 +000031
Bram Moolenaar40962ec2018-01-28 22:47:25 +010032syn match nsisLineContinuation "\\$"
Bram Moolenaar071d4272004-06-13 20:20:40 +000033
Bram Moolenaar40962ec2018-01-28 22:47:25 +010034"STRINGS (4.1)
35syn region nsisString start=/"/ end=/"/ contains=@nsisStringItems,@Spell
36syn region nsisString start=/'/ end=/'/ contains=@nsisStringItems,@Spell
37syn region nsisString start=/`/ end=/`/ contains=@nsisStringItems,@Spell
Bram Moolenaar071d4272004-06-13 20:20:40 +000038
Bram Moolenaar40962ec2018-01-28 22:47:25 +010039syn cluster nsisStringItems contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar,nsisUserVar,nsisSysVar,nsisRegistry,nsisLineContinuation
Bram Moolenaar071d4272004-06-13 20:20:40 +000040
Bram Moolenaar40962ec2018-01-28 22:47:25 +010041"NUMBERS (4.1)
42syn match nsisNumber "\<[1-9]\d*\>"
43syn match nsisNumber "\<0x\x\+\>"
44syn match nsisNumber "\<0\o*\>"
45
46"STRING REPLACEMENT (5.4, 4.9.15.2, 5.3.1)
47syn region nsisPreprocSubst start="\${" end="}" contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar
48syn region nsisPreprocLangStr start="\$(" end=")" contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar
49syn region nsisPreprocEnvVar start="\$%" end="%" contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar
50
51"VARIABLES (4.2.2)
Bram Moolenaar071d4272004-06-13 20:20:40 +000052syn match nsisUserVar "$\d"
53syn match nsisUserVar "$R\d"
54syn match nsisSysVar "$INSTDIR"
55syn match nsisSysVar "$OUTDIR"
56syn match nsisSysVar "$CMDLINE"
Bram Moolenaar40962ec2018-01-28 22:47:25 +010057syn match nsisSysVar "$LANGUAGE"
58"CONSTANTS (4.2.3)
Bram Moolenaar071d4272004-06-13 20:20:40 +000059syn match nsisSysVar "$PROGRAMFILES"
Bram Moolenaar40962ec2018-01-28 22:47:25 +010060syn match nsisSysVar "$PROGRAMFILES32"
61syn match nsisSysVar "$PROGRAMFILES64"
62syn match nsisSysVar "$COMMONFILES"
63syn match nsisSysVar "$COMMONFILES32"
64syn match nsisSysVar "$COMMONFILES64"
Bram Moolenaar071d4272004-06-13 20:20:40 +000065syn match nsisSysVar "$DESKTOP"
66syn match nsisSysVar "$EXEDIR"
Bram Moolenaar40962ec2018-01-28 22:47:25 +010067syn match nsisSysVar "$EXEFILE"
68syn match nsisSysVar "$EXEPATH"
69syn match nsisSysVar "${NSISDIR}"
Bram Moolenaar071d4272004-06-13 20:20:40 +000070syn match nsisSysVar "$WINDIR"
71syn match nsisSysVar "$SYSDIR"
72syn match nsisSysVar "$TEMP"
73syn match nsisSysVar "$STARTMENU"
74syn match nsisSysVar "$SMPROGRAMS"
75syn match nsisSysVar "$SMSTARTUP"
76syn match nsisSysVar "$QUICKLAUNCH"
Bram Moolenaar40962ec2018-01-28 22:47:25 +010077syn match nsisSysVar "$DOCUMENTS"
78syn match nsisSysVar "$SENDTO"
79syn match nsisSysVar "$RECENT"
80syn match nsisSysVar "$FAVORITES"
81syn match nsisSysVar "$MUSIC"
82syn match nsisSysVar "$PICTURES"
83syn match nsisSysVar "$VIDEOS"
84syn match nsisSysVar "$NETHOOD"
85syn match nsisSysVar "$FONTS"
86syn match nsisSysVar "$TEMPLATES"
87syn match nsisSysVar "$APPDATA"
88syn match nsisSysVar "$LOCALAPPDATA"
89syn match nsisSysVar "$PRINTHOOD"
90syn match nsisSysVar "$INTERNET_CACHE"
91syn match nsisSysVar "$COOKIES"
92syn match nsisSysVar "$HISTORY"
93syn match nsisSysVar "$PROFILE"
94syn match nsisSysVar "$ADMINTOOLS"
95syn match nsisSysVar "$RESOURCES"
96syn match nsisSysVar "$RESOURCES_LOCALIZED"
97syn match nsisSysVar "$CDBURN_AREA"
Bram Moolenaar071d4272004-06-13 20:20:40 +000098syn match nsisSysVar "$HWNDPARENT"
Bram Moolenaar40962ec2018-01-28 22:47:25 +010099syn match nsisSysVar "$PLUGINSDIR"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000100syn match nsisSysVar "$\\r"
101syn match nsisSysVar "$\\n"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100102syn match nsisSysVar "$\\t"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000103syn match nsisSysVar "$\$"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100104syn match nsisSysVar "$\\["'`]"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000105
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100106"LABELS (4.3)
Bram Moolenaar2c64ca12018-10-19 16:22:31 +0200107syn match nsisLocalLabel contained "[^-+!$0-9;"'#. \t/*][^ \t:;#]*:\ze\%($\|[ \t;#]\|\/\*\)"
108syn match nsisGlobalLabel contained "\.[^-+!$0-9;"'# \t/*][^ \t:;#]*:\ze\%($\|[ \t;#]\|\/\*\)"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000109
110"CONSTANTS
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100111syn keyword nsisBoolean contained true false
112syn keyword nsisOnOff contained on off
Bram Moolenaar071d4272004-06-13 20:20:40 +0000113
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100114syn keyword nsisRegistry contained HKCR HKLM HKCU HKU HKCC HKDD HKPD SHCTX
115syn keyword nsisRegistry contained HKCR32 HKCR64 HKCU32 HKCU64 HKLM32 HKLM64
116syn keyword nsisRegistry contained HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE HKEY_CURRENT_USER HKEY_USERS
117syn keyword nsisRegistry contained HKEY_CLASSES_ROOT32 HKEY_CLASSES_ROOT64
118syn keyword nsisRegistry contained HKEY_CURRENT_USER32 HKEY_CURRENT_USER64
119syn keyword nsisRegistry contained HKEY_LOCAL_MACHINE32 HKEY_LOCAL_MACHINE64
120syn keyword nsisRegistry contained HKEY_CURRENT_CONFIG HKEY_DYN_DATA HKEY_PERFORMANCE_DATA
121syn keyword nsisRegistry contained SHELL_CONTEXT
Bram Moolenaar071d4272004-06-13 20:20:40 +0000122
123
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100124" common options
125syn cluster nsisAnyOpt contains=nsisComment,nsisLineContinuation,nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar,nsisUserVar,nsisSysVar,nsisString,nsisNumber
126syn region nsisBooleanOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBoolean
127syn region nsisOnOffOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisOnOff
128syn region nsisLangOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLangKwd
129syn match nsisLangKwd contained "/LANG\>"
130syn region nsisFontOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFontKwd
131syn match nsisFontKwd contained "/\%(ITALIC\|UNDERLINE\|STRIKE\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000132
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100133"STATEMENTS - pages (4.5)
134syn keyword nsisStatement contained Page UninstPage nextgroup=nsisPageOpt skipwhite
135syn region nsisPageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPageKwd
136syn keyword nsisPageKwd contained custom license components directory instfiles uninstConfirm
137syn match nsisPageKwd contained "/ENABLECANCEL\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000138
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100139syn keyword nsisStatement contained PageEx nextgroup=nsisPageExOpt skipwhite
140syn region nsisPageExOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPageExKwd
141syn match nsisPageExKwd contained "\<\%(un\.\)\?\%(custom\|license\|components\|directory\|instfiles\|uninstConfirm\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000142
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100143syn keyword nsisStatement contained PageExEnd PageCallbacks
Bram Moolenaar071d4272004-06-13 20:20:40 +0000144
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100145"STATEMENTS - sections (4.6.1)
146syn keyword nsisStatement contained AddSize SectionEnd SectionGroupEnd
Bram Moolenaar071d4272004-06-13 20:20:40 +0000147
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100148syn keyword nsisStatement contained Section nextgroup=nsisSectionOpt skipwhite
149syn region nsisSectionOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionKwd
150syn match nsisSectionKwd contained "/o\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000151
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100152syn keyword nsisStatement contained SectionIn nextgroup=nsisSectionInOpt skipwhite
153syn region nsisSectionInOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionInKwd
154syn keyword nsisSectionInKwd contained RO
Bram Moolenaar071d4272004-06-13 20:20:40 +0000155
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100156syn keyword nsisStatement contained SectionGroup nextgroup=nsisSectionGroupOpt skipwhite
157syn region nsisSectionGroupOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionGroupKwd
158syn match nsisSectionGroupKwd contained "/e\>"
159
160"STATEMENTS - functions (4.7.1)
161syn keyword nsisStatement contained Function FunctionEnd
Bram Moolenaar071d4272004-06-13 20:20:40 +0000162
163
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100164"STATEMENTS - LogicLib.nsh
165syn match nsisStatement "${If}"
166syn match nsisStatement "${IfNot}"
167syn match nsisStatement "${Unless}"
168syn match nsisStatement "${ElseIf}"
169syn match nsisStatement "${ElseIfNot}"
170syn match nsisStatement "${ElseUnless}"
171syn match nsisStatement "${Else}"
172syn match nsisStatement "${EndIf}"
173syn match nsisStatement "${EndUnless}"
174syn match nsisStatement "${AndIf}"
175syn match nsisStatement "${AndIfNot}"
176syn match nsisStatement "${AndUnless}"
177syn match nsisStatement "${OrIf}"
178syn match nsisStatement "${OrIfNot}"
179syn match nsisStatement "${OrUnless}"
180syn match nsisStatement "${IfThen}"
181syn match nsisStatement "${IfNotThen}"
182syn match nsisStatement "${||\?}" nextgroup=@nsisPseudoStatement skipwhite
183syn match nsisStatement "${IfCmd}" nextgroup=@nsisPseudoStatement skipwhite
184syn match nsisStatement "${Select}"
185syn match nsisStatement "${Case}"
186syn match nsisStatement "${Case[2-5]}"
187syn match nsisStatement "${CaseElse}"
188syn match nsisStatement "${Default}"
189syn match nsisStatement "${EndSelect}"
190syn match nsisStatement "${Switch}"
191syn match nsisStatement "${EndSwitch}"
192syn match nsisStatement "${Break}"
193syn match nsisStatement "${Do}"
194syn match nsisStatement "${DoWhile}"
195syn match nsisStatement "${DoUntil}"
196syn match nsisStatement "${ExitDo}"
197syn match nsisStatement "${Continue}"
198syn match nsisStatement "${Loop}"
199syn match nsisStatement "${LoopWhile}"
200syn match nsisStatement "${LoopUntil}"
201syn match nsisStatement "${For}"
202syn match nsisStatement "${ForEach}"
203syn match nsisStatement "${ExitFor}"
204syn match nsisStatement "${Next}"
205"STATEMENTS - Memento.nsh
206syn match nsisStatement "${MementoSection}"
207syn match nsisStatement "${MementoSectionEnd}"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000208
209
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100210"USER VARIABLES (4.2.1)
211syn keyword nsisInstruction contained Var nextgroup=nsisVarOpt skipwhite
212syn region nsisVarOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisVarKwd
213syn match nsisVarKwd contained "/GLOBAL\>"
214
215"INSTALLER ATTRIBUTES (4.8.1)
216syn keyword nsisAttribute contained Caption ChangeUI CheckBitmap CompletedText ComponentText
217syn keyword nsisAttribute contained DetailsButtonText DirText DirVar
218syn keyword nsisAttribute contained FileErrorText Icon InstallButtonText
219syn keyword nsisAttribute contained InstallDir InstProgressFlags
220syn keyword nsisAttribute contained LicenseData LicenseText
221syn keyword nsisAttribute contained MiscButtonText Name OutFile
222syn keyword nsisAttribute contained SpaceTexts SubCaption UninstallButtonText UninstallCaption
223syn keyword nsisAttribute contained UninstallIcon UninstallSubCaption UninstallText
224
225syn keyword nsisAttribute contained AddBrandingImage nextgroup=nsisAddBrandingImageOpt skipwhite
226syn region nsisAddBrandingImageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAddBrandingImageKwd
227syn keyword nsisAddBrandingImageKwd contained left right top bottom width height
228
229syn keyword nsisAttribute contained nextgroup=nsisBooleanOpt skipwhite
230 \ AllowRootDirInstall AutoCloseWindow
231
232syn keyword nsisAttribute contained BGFont nextgroup=nsisFontOpt skipwhite
233
234syn keyword nsisAttribute contained BGGradient nextgroup=nsisBGGradientOpt skipwhite
235syn region nsisBGGradientOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBGGradientKwd
236syn keyword nsisBGGradientKwd contained off
237
238syn keyword nsisAttribute contained BrandingText nextgroup=nsisBrandingTextOpt skipwhite
239syn region nsisBrandingTextOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBrandingTextKwd
240syn match nsisBrandingTextKwd contained "/TRIM\%(LEFT\|RIGHT\|CENTER\)\>"
241
242syn keyword nsisAttribute contained CRCCheck nextgroup=nsisCRCCheckOpt skipwhite
243syn region nsisCRCCheckOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCRCCheckKwd
244syn keyword nsisCRCCheckKwd contained on off force
245
246syn keyword nsisAttribute contained DirVerify nextgroup=nsisDirVerifyOpt skipwhite
247syn region nsisDirVerifyOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDirVerifyKwd
248syn keyword nsisDirVerifyKwd contained auto leave
249
250syn keyword nsisAttribute contained InstallColors nextgroup=nsisInstallColorsOpt skipwhite
251syn region nsisInstallColorsOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisInstallColorsKwd
252syn match nsisInstallColorsKwd contained "/windows\>"
253
254syn keyword nsisAttribute contained InstallDirRegKey nextgroup=nsisRegistryOpt skipwhite
255
256syn keyword nsisAttribute contained InstType nextgroup=nsisInstTypeOpt skipwhite
257syn region nsisInstTypeOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisInstTypeKwd
258syn match nsisInstTypeKwd contained "/\%(NOCUSTOM\|CUSTOMSTRING\|COMPONENTSONLYONCUSTOM\)\>"
259
260syn keyword nsisAttribute contained LicenseBkColor nextgroup=nsisLicenseBkColorOpt skipwhite
261syn region nsisLicenseBkColorOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLicenseBkColorKwd
262syn match nsisLicenseBkColorKwd contained "/\%(gray\|windows\)\>"
263
264syn keyword nsisAttribute contained LicenseForceSelection nextgroup=nsisLicenseForceSelectionOpt skipwhite
265syn region nsisLicenseForceSelectionOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLicenseForceSelectionKwd
266syn keyword nsisLicenseForceSelectionKwd contained checkbox radiobuttons off
267
268syn keyword nsisAttribute contained ManifestDPIAware nextgroup=nsisManifestDPIAwareOpt skipwhite
269syn region nsisManifestDPIAwareOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisManifestDPIAwareKwd
270syn keyword nsisManifestDPIAwareKwd contained notset true false
271
272syn keyword nsisAttribute contained ManifestSupportedOS nextgroup=nsisManifestSupportedOSOpt skipwhite
273syn region nsisManifestSupportedOSOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisManifestSupportedOSKwd
274syn match nsisManifestSupportedOSKwd contained "\<\%(none\|all\|WinVista\|Win7\|Win8\|Win8\.1\|Win10\)\>"
275
276syn keyword nsisAttribute contained RequestExecutionLevel nextgroup=nsisRequestExecutionLevelOpt skipwhite
277syn region nsisRequestExecutionLevelOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRequestExecutionLevelKwd
278syn keyword nsisRequestExecutionLevelKwd contained none user highest admin
279
280syn keyword nsisAttribute contained SetFont nextgroup=nsisLangOpt skipwhite
281
282syn keyword nsisAttribute contained nextgroup=nsisShowInstDetailsOpt skipwhite
283 \ ShowInstDetails ShowUninstDetails
284syn region nsisShowInstDetailsOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisShowInstDetailsKwd
285syn keyword nsisShowInstDetailsKwd contained hide show nevershow
286
287syn keyword nsisAttribute contained SilentInstall nextgroup=nsisSilentInstallOpt skipwhite
288syn region nsisSilentInstallOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSilentInstallKwd
289syn keyword nsisSilentInstallKwd contained normal silent silentlog
290
291syn keyword nsisAttribute contained SilentUnInstall nextgroup=nsisSilentUnInstallOpt skipwhite
292syn region nsisSilentUnInstallOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSilentUnInstallKwd
293syn keyword nsisSilentUnInstallKwd contained normal silent
294
295syn keyword nsisAttribute contained nextgroup=nsisOnOffOpt skipwhite
296 \ WindowIcon XPStyle
297
298"COMPILER FLAGS (4.8.2)
299syn keyword nsisCompiler contained nextgroup=nsisOnOffOpt skipwhite
300 \ AllowSkipFiles SetDatablockOptimize SetDateSave
301
302syn keyword nsisCompiler contained FileBufSize SetCompressorDictSize
303
304syn keyword nsisCompiler contained SetCompress nextgroup=nsisSetCompressOpt skipwhite
305syn region nsisSetCompressOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCompressKwd
306syn keyword nsisSetCompressKwd contained auto force off
307
308syn keyword nsisCompiler contained SetCompressor nextgroup=nsisSetCompressorOpt skipwhite
309syn region nsisSetCompressorOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCompressorKwd
310syn keyword nsisSetCompressorKwd contained zlib bzip2 lzma
311syn match nsisSetCompressorKwd contained "/\%(SOLID\|FINAL\)"
312
313syn keyword nsisCompiler contained SetOverwrite nextgroup=nsisSetOverwriteOpt skipwhite
314syn region nsisSetOverwriteOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetOverwriteKwd
315syn keyword nsisSetOverwriteKwd contained on off try ifnewer ifdiff lastused
316
317syn keyword nsisCompiler contained Unicode nextgroup=nsisBooleanOpt skipwhite
318
319"VERSION INFORMATION (4.8.3)
320syn keyword nsisVersionInfo contained VIAddVersionKey nextgroup=nsisLangOpt skipwhite
321
322syn keyword nsisVersionInfo contained VIProductVersion VIFileVersion
323
324
325"FUNCTIONS - basic (4.9.1)
326syn keyword nsisInstruction contained Delete Rename nextgroup=nsisDeleteOpt skipwhite
327syn region nsisDeleteOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDeleteKwd
328syn match nsisDeleteKwd contained "/REBOOTOK\>"
329
330syn keyword nsisInstruction contained Exec ExecWait SetOutPath
331
332syn keyword nsisInstruction contained ExecShell ExecShellWait nextgroup=nsisExecShellOpt skipwhite
333syn region nsisExecShellOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisExecShellKwd
334syn keyword nsisExecShellKwd contained SW_SHOWDEFAULT SW_SHOWNORMAL SW_SHOWMAXIMIZED SW_SHOWMINIMIZED SW_HIDE
335syn match nsisExecShellKwd contained "/INVOKEIDLIST\>"
336
337syn keyword nsisInstruction contained File nextgroup=nsisFileOpt skipwhite
338syn region nsisFileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileKwd
339syn match nsisFileKwd contained "/\%(nonfatal\|[arx]\|oname\)\>"
340
341syn keyword nsisInstruction contained ReserveFile nextgroup=nsisReserveFileOpt skipwhite
342syn region nsisReserveFileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisReserveFileKwd
343syn match nsisReserveFileKwd contained "/\%(nonfatal\|[rx]\|plugin\)\>"
344
345syn keyword nsisInstruction contained RMDir nextgroup=nsisRMDirOpt skipwhite
346syn region nsisRMDirOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRMDirKwd
347syn match nsisRMDirKwd contained "/\%(REBOOTOK\|r\)\>"
348
349
350"FUNCTIONS - registry & ini (4.9.2)
351syn keyword nsisInstruction contained DeleteINISec DeleteINIStr FlushINI ReadINIStr WriteINIStr
352syn keyword nsisInstruction contained ExpandEnvStrings ReadEnvStr
353
354syn keyword nsisInstruction contained DeleteRegKey nextgroup=nsisDeleteRegKeyOpt skipwhite
355syn region nsisDeleteRegKeyOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDeleteRegKeyKwd,nsisRegistry
356syn match nsisDeleteRegKeyKwd contained "/ifempty\>"
357
358syn keyword nsisInstruction contained nextgroup=nsisRegistryOpt skipwhite
359 \ DeleteRegValue EnumRegKey EnumRegValue ReadRegDWORD ReadRegStr WriteRegBin WriteRegDWORD WriteRegExpandStr WriteRegStr
360syn region nsisRegistryOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRegistry
361
362syn keyword nsisInstruction contained WriteRegMultiStr nextgroup=nsisWriteRegMultiStrOpt skipwhite
363syn region nsisWriteRegMultiStrOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRegistry,nsisWriteRegMultiStrKwd
364syn match nsisWriteRegMultiStrKwd contained "/REGEDIT5\>"
365
366syn keyword nsisInstruction contained SetRegView nextgroup=nsisSetRegViewOpt skipwhite
367syn region nsisSetRegViewOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetRegViewKwd
368syn keyword nsisSetRegViewKwd contained default lastused
369
370"FUNCTIONS - general purpose (4.9.3)
371syn keyword nsisInstruction contained CallInstDLL CreateDirectory GetDLLVersion
372syn keyword nsisInstruction contained GetDLLVersionLocal GetFileTime GetFileTimeLocal
373syn keyword nsisInstruction contained GetTempFileName SearchPath RegDLL UnRegDLL
374
375syn keyword nsisInstruction contained CopyFiles nextgroup=nsisCopyFilesOpt skipwhite
376syn region nsisCopyFilesOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCopyFilesKwd
377syn match nsisCopyFilesKwd contained "/\%(SILENT\|FILESONLY\)\>"
378
379syn keyword nsisInstruction contained CreateShortcut nextgroup=nsisCreateShortcutOpt skipwhite
380syn region nsisCreateShortcutOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCreateShortcutKwd
381syn match nsisCreateShortcutKwd contained "/NoWorkingDir\>"
382
383syn keyword nsisInstruction contained GetFullPathName nextgroup=nsisGetFullPathNameOpt skipwhite
384syn region nsisGetFullPathNameOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisGetFullPathNameKwd
385syn match nsisGetFullPathNameKwd contained "/SHORT\>"
386
387syn keyword nsisInstruction contained SetFileAttributes nextgroup=nsisSetFileAttributesOpt skipwhite
388syn region nsisSetFileAttributesOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileAttrib
389syn keyword nsisFileAttrib contained NORMAL ARCHIVE HIDDEN OFFLINE READONLY SYSTEM TEMPORARY
390syn keyword nsisFileAttrib contained FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_HIDDEN
391syn keyword nsisFileAttrib contained FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_SYSTEM
392syn keyword nsisFileAttrib contained FILE_ATTRIBUTE_TEMPORARY
393
394"FUNCTIONS - Flow Control (4.9.4)
395syn keyword nsisInstruction contained Abort Call ClearErrors GetCurrentAddress
396syn keyword nsisInstruction contained GetFunctionAddress GetLabelAddress Goto
397syn keyword nsisInstruction contained IfAbort IfErrors IfFileExists IfRebootFlag IfSilent
Bram Moolenaareb3dc872018-05-13 22:34:24 +0200398syn keyword nsisInstruction contained IntCmp IntCmpU Int64Cmp Int64CmpU IntPtrCmp IntPtrCmpU
399syn keyword nsisInstruction contained Return Quit SetErrors StrCmp StrCmpS
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100400
401syn keyword nsisInstruction contained MessageBox nextgroup=nsisMessageBoxOpt skipwhite
402syn region nsisMessageBoxOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisMessageBox
403syn keyword nsisMessageBox contained MB_OK MB_OKCANCEL MB_ABORTRETRYIGNORE MB_RETRYCANCEL MB_YESNO MB_YESNOCANCEL
404syn keyword nsisMessageBox contained MB_ICONEXCLAMATION MB_ICONINFORMATION MB_ICONQUESTION MB_ICONSTOP MB_USERICON
405syn keyword nsisMessageBox contained MB_TOPMOST MB_SETFOREGROUND MB_RIGHT MB_RTLREADING
406syn keyword nsisMessageBox contained MB_DEFBUTTON1 MB_DEFBUTTON2 MB_DEFBUTTON3 MB_DEFBUTTON4
407syn keyword nsisMessageBox contained IDABORT IDCANCEL IDIGNORE IDNO IDOK IDRETRY IDYES
408syn match nsisMessageBox contained "/SD\>"
409
410"FUNCTIONS - File and directory i/o instructions (4.9.5)
411syn keyword nsisInstruction contained FileClose FileOpen FileRead FileReadUTF16LE
412syn keyword nsisInstruction contained FileReadByte FileReadWord FileSeek FileWrite
413syn keyword nsisInstruction contained FileWriteByte FileWriteWord
414syn keyword nsisInstruction contained FindClose FindFirst FindNext
415
416syn keyword nsisInstruction contained FileWriteUTF16LE nextgroup=nsisFileWriteUTF16LEOpt skipwhite
417syn region nsisFileWriteUTF16LEOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileWriteUTF16LEKwd
418syn match nsisFileWriteUTF16LEKwd contained "/BOM\>"
419
420"FUNCTIONS - Uninstaller instructions (4.9.6)
421syn keyword nsisInstruction contained WriteUninstaller
422
423"FUNCTIONS - Misc instructions (4.9.7)
424syn keyword nsisInstruction contained GetErrorLevel GetInstDirError InitPluginsDir Nop
425syn keyword nsisInstruction contained SetErrorLevel Sleep
426
427syn keyword nsisInstruction contained SetShellVarContext nextgroup=nsisSetShellVarContextOpt skipwhite
428syn region nsisSetShellVarContextOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetShellVarContextKwd
429syn keyword nsisSetShellVarContextKwd contained current all
430
431"FUNCTIONS - String manipulation support (4.9.8)
432syn keyword nsisInstruction contained StrCpy StrLen
433
434"FUNCTIONS - Stack support (4.9.9)
435syn keyword nsisInstruction contained Exch Push Pop
436
437"FUNCTIONS - Integer manipulation support (4.9.10)
Bram Moolenaareb3dc872018-05-13 22:34:24 +0200438syn keyword nsisInstruction contained IntFmt Int64Fmt IntOp IntPtrOp
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100439
440"FUNCTIONS - Rebooting support (4.9.11)
441syn keyword nsisInstruction contained Reboot SetRebootFlag
442
443"FUNCTIONS - Install logging instructions (4.9.12)
444syn keyword nsisInstruction contained LogSet nextgroup=nsisOnOffOpt skipwhite
445syn keyword nsisInstruction contained LogText
446
447"FUNCTIONS - Section management instructions (4.9.13)
448syn keyword nsisInstruction contained SectionSetFlags SectionGetFlags SectionSetText
449syn keyword nsisInstruction contained SectionGetText SectionSetInstTypes SectionGetInstTypes
450syn keyword nsisInstruction contained SectionSetSize SectionGetSize SetCurInstType GetCurInstType
451syn keyword nsisInstruction contained InstTypeSetText InstTypeGetText
452
453"FUNCTIONS - User Interface Instructions (4.9.14)
454syn keyword nsisInstruction contained BringToFront DetailPrint EnableWindow
455syn keyword nsisInstruction contained FindWindow GetDlgItem HideWindow IsWindow
456syn keyword nsisInstruction contained ShowWindow
457
458syn keyword nsisInstruction contained CreateFont nextgroup=nsisFontOpt skipwhite
459
460syn keyword nsisInstruction contained nextgroup=nsisBooleanOpt skipwhite
461 \ LockWindow SetAutoClose
462
463syn keyword nsisInstruction contained SendMessage nextgroup=nsisSendMessageOpt skipwhite
464syn region nsisSendMessageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSendMessageKwd
465syn match nsisSendMessageKwd contained "/TIMEOUT\>"
466
467syn keyword nsisInstruction contained SetBrandingImage nextgroup=nsisSetBrandingImageOpt skipwhite
468syn region nsisSetBrandingImageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetBrandingImageKwd
469syn match nsisSetBrandingImageKwd contained "/\%(IMGID\|RESIZETOFIT\)\>"
470
471syn keyword nsisInstruction contained SetDetailsView nextgroup=nsisSetDetailsViewOpt skipwhite
472syn region nsisSetDetailsViewOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetDetailsViewKwd
473syn keyword nsisSetDetailsViewKwd contained show hide
474
475syn keyword nsisInstruction contained SetDetailsPrint nextgroup=nsisSetDetailsPrintOpt skipwhite
476syn region nsisSetDetailsPrintOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetDetailsPrintKwd
477syn keyword nsisSetDetailsPrintKwd contained none listonly textonly both lastused
478
479syn keyword nsisInstruction contained SetCtlColors nextgroup=nsisSetCtlColorsOpt skipwhite
480syn region nsisSetCtlColorsOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCtlColorsKwd
481syn match nsisSetCtlColorsKwd contained "/BRANDING\>"
482
483syn keyword nsisInstruction contained SetSilent nextgroup=nsisSetSilentOpt skipwhite
484syn region nsisSetSilentOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetSilentKwd
485syn keyword nsisSetSilentKwd contained silent normal
486
487
488"FUNCTIONS - Multiple Languages Instructions (4.9.15)
489syn keyword nsisInstruction contained LoadLanguageFile LangString LicenseLangString
490
491
492"SPECIAL FUNCTIONS - install (4.7.2.1)
493syn match nsisCallback "\.onGUIInit"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000494syn match nsisCallback "\.onInit"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000495syn match nsisCallback "\.onInstFailed"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100496syn match nsisCallback "\.onInstSuccess"
497syn match nsisCallback "\.onGUIEnd"
498syn match nsisCallback "\.onMouseOverSection"
499syn match nsisCallback "\.onRebootFailed"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000500syn match nsisCallback "\.onSelChange"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100501syn match nsisCallback "\.onUserAbort"
502syn match nsisCallback "\.onVerifyInstDir"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000503
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100504"SPECIAL FUNCTIONS - uninstall (4.7.2.2)
505syn match nsisCallback "un\.onGUIInit"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000506syn match nsisCallback "un\.onInit"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100507syn match nsisCallback "un\.onUninstFailed"
508syn match nsisCallback "un\.onUninstSuccess"
509syn match nsisCallback "un\.onGUIEnd"
510syn match nsisCallback "un\.onRebootFailed"
511syn match nsisCallback "un\.onSelChange"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000512syn match nsisCallback "un\.onUserAbort"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000513
514
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100515"COMPILER UTILITY (5.1)
516syn match nsisInclude contained "!include\>" nextgroup=nsisIncludeOpt skipwhite
517syn region nsisIncludeOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisIncludeKwd
518syn match nsisIncludeKwd contained "/\%(NONFATAL\|CHARSET\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000519
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100520syn match nsisSystem contained "!addincludedir\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000521
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100522syn match nsisSystem contained "!addplugindir\>" nextgroup=nsisAddplugindirOpt skipwhite
523syn region nsisAddplugindirOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAddplugindirKwd
524syn match nsisAddplugindirKwd contained "/\%(x86-ansi\|x86-unicode\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000525
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100526syn match nsisSystem contained "!appendfile\>" nextgroup=nsisAppendfileOpt skipwhite
527syn region nsisAppendfileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAppendfileKwd
528syn match nsisAppendfileKwd contained "/\%(CHARSET\|RawNL\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000529
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100530syn match nsisSystem contained "!cd\>"
531
532syn match nsisSystem contained "!delfile\>" nextgroup=nsisDelfileOpt skipwhite
533syn region nsisDelfileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDelfileKwd
534syn match nsisDelfileKwd contained "/nonfatal\>"
535
536syn match nsisSystem contained "!echo\>"
537syn match nsisSystem contained "!error\>"
538syn match nsisSystem contained "!execute\>"
539syn match nsisSystem contained "!makensis\>"
540syn match nsisSystem contained "!packhdr\>"
541syn match nsisSystem contained "!finalize\>"
542syn match nsisSystem contained "!system\>"
543syn match nsisSystem contained "!tempfile\>"
544syn match nsisSystem contained "!getdllversion\>"
Bram Moolenaareb3dc872018-05-13 22:34:24 +0200545syn match nsisSystem contained "!gettlbversion\>"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100546syn match nsisSystem contained "!warning\>"
547
548syn match nsisSystem contained "!pragma\>" nextgroup=nsisPragmaOpt skipwhite
549syn region nsisPragmaOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPragmaKwd
550syn keyword nsisPragmaKwd contained enable disable default push pop
551
552syn match nsisSystem contained "!verbose\>" nextgroup=nsisVerboseOpt skipwhite
553syn region nsisVerboseOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisVerboseKwd
554syn keyword nsisVerboseKwd contained push pop
555
556"PREPROCESSOR (5.4)
557syn match nsisDefine contained "!define\>" nextgroup=nsisDefineOpt skipwhite
558syn region nsisDefineOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDefineKwd
559syn match nsisDefineKwd contained "/\%(ifndef\|redef\|date\|utcdate\|math\|file\)\>"
560
561syn match nsisDefine contained "!undef\>"
562syn match nsisPreCondit contained "!ifdef\>"
563syn match nsisPreCondit contained "!ifndef\>"
564
565syn match nsisPreCondit contained "!if\>" nextgroup=nsisIfOpt skipwhite
566syn region nsisIfOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisIfKwd
567syn match nsisIfKwd contained "/FileExists\>"
568
569syn match nsisPreCondit contained "!ifmacrodef\>"
570syn match nsisPreCondit contained "!ifmacrondef\>"
571syn match nsisPreCondit contained "!else\>"
572syn match nsisPreCondit contained "!endif\>"
573syn match nsisMacro contained "!insertmacro\>"
574syn match nsisMacro contained "!macro\>"
575syn match nsisMacro contained "!macroend\>"
576syn match nsisMacro contained "!macroundef\>"
577
578syn match nsisMacro contained "!searchparse\>" nextgroup=nsisSearchparseOpt skipwhite
579syn region nsisSearchparseOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSearchparseKwd
580syn match nsisSearchparseKwd contained "/\%(ignorecase\|noerrors\|file\)\>"
581
582syn match nsisMacro contained "!searchreplace\>" nextgroup=nsisSearchreplaceOpt skipwhite
583syn region nsisSearchreplaceOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSearchreplaceKwd
584syn match nsisSearchreplaceKwd contained "/ignorecase\>"
585
Bram Moolenaar071d4272004-06-13 20:20:40 +0000586
587
588" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200589" Only when an item doesn't have highlighting yet
Bram Moolenaar071d4272004-06-13 20:20:40 +0000590
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200591hi def link nsisInstruction Function
592hi def link nsisComment Comment
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100593hi def link nsisFirstComment Comment
594hi def link nsisLocalLabel Label
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200595hi def link nsisGlobalLabel Label
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100596hi def link nsisStatement Statement
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200597hi def link nsisString String
598hi def link nsisBoolean Boolean
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100599hi def link nsisOnOff Boolean
600hi def link nsisFontKwd Constant
601hi def link nsisLangKwd Constant
602hi def link nsisPageKwd Constant
603hi def link nsisPageExKwd Constant
604hi def link nsisSectionKwd Constant
605hi def link nsisSectionInKwd Constant
606hi def link nsisSectionGroupKwd Constant
607hi def link nsisVarKwd Constant
608hi def link nsisAddBrandingImageKwd Constant
609hi def link nsisBGGradientKwd Constant
610hi def link nsisBrandingTextKwd Constant
611hi def link nsisCRCCheckKwd Constant
612hi def link nsisDirVerifyKwd Constant
613hi def link nsisInstallColorsKwd Constant
614hi def link nsisInstTypeKwd Constant
615hi def link nsisLicenseBkColorKwd Constant
616hi def link nsisLicenseForceSelectionKwd Constant
617hi def link nsisManifestDPIAwareKwd Constant
618hi def link nsisManifestSupportedOSKwd Constant
619hi def link nsisRequestExecutionLevelKwd Constant
620hi def link nsisShowInstDetailsKwd Constant
621hi def link nsisSilentInstallKwd Constant
622hi def link nsisSilentUnInstallKwd Constant
623hi def link nsisSetCompressKwd Constant
624hi def link nsisSetCompressorKwd Constant
625hi def link nsisSetOverwriteKwd Constant
626hi def link nsisDeleteKwd Constant
627hi def link nsisExecShellKwd Constant
628hi def link nsisFileKwd Constant
629hi def link nsisReserveFileKwd Constant
630hi def link nsisRMDirKwd Constant
631hi def link nsisDeleteRegKeyKwd Constant
632hi def link nsisWriteRegMultiStrKwd Constant
633hi def link nsisSetRegViewKwd Constant
634hi def link nsisCopyFilesKwd Constant
635hi def link nsisCreateShortcutKwd Constant
636hi def link nsisGetFullPathNameKwd Constant
637hi def link nsisFileAttrib Constant
638hi def link nsisMessageBox Constant
639hi def link nsisFileWriteUTF16LEKwd Constant
640hi def link nsisSetShellVarContextKwd Constant
641hi def link nsisSendMessageKwd Constant
642hi def link nsisSetBrandingImageKwd Constant
643hi def link nsisSetDetailsViewKwd Constant
644hi def link nsisSetDetailsPrintKwd Constant
645hi def link nsisSetCtlColorsKwd Constant
646hi def link nsisSetSilentKwd Constant
647hi def link nsisRegistry Identifier
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200648hi def link nsisNumber Number
649hi def link nsisError Error
650hi def link nsisUserVar Identifier
651hi def link nsisSysVar Identifier
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100652hi def link nsisAttribute Type
653hi def link nsisCompiler Type
654hi def link nsisVersionInfo Type
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200655hi def link nsisTodo Todo
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100656hi def link nsisCallback Identifier
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200657" preprocessor commands
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200658hi def link nsisPreprocSubst PreProc
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100659hi def link nsisPreprocLangStr PreProc
660hi def link nsisPreprocEnvVar PreProc
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200661hi def link nsisDefine Define
662hi def link nsisMacro Macro
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100663hi def link nsisPreCondit PreCondit
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200664hi def link nsisInclude Include
665hi def link nsisSystem PreProc
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100666hi def link nsisLineContinuation Special
667hi def link nsisIncludeKwd Constant
668hi def link nsisAddplugindirKwd Constant
669hi def link nsisAppendfileKwd Constant
670hi def link nsisDelfileKwd Constant
671hi def link nsisPragmaKwd Constant
672hi def link nsisVerboseKwd Constant
673hi def link nsisDefineKwd Constant
674hi def link nsisIfKwd Constant
675hi def link nsisSearchparseKwd Constant
676hi def link nsisSearchreplaceKwd Constant
Bram Moolenaar071d4272004-06-13 20:20:40 +0000677
Bram Moolenaar071d4272004-06-13 20:20:40 +0000678
679let b:current_syntax = "nsis"
680
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100681let &cpo = s:cpo_save
682unlet s:cpo_save