blob: 3a73fe098916b12b3f3d1383b0c25c5668326330 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
Bram Moolenaar079ba762021-10-23 12:08:41 +01002" Language: NSIS script, for version of NSIS 3.08 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 Moolenaar079ba762021-10-23 12:08:41 +01006" Last Change: 2020-10-18
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 Moolenaar079ba762021-10-23 12:08:41 +0100100syn match nsisSysVar "$\%(USERTEMPLATES\|USERSTARTMENU\|USERSMPROGRAMS\|USERDESKTOP\)"
101syn match nsisSysVar "$\%(COMMONTEMPLATES\|COMMONSTARTMENU\|COMMONSMPROGRAMS\|COMMONDESKTOP\|COMMONPROGRAMDATA\)"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000102syn match nsisSysVar "$\\r"
103syn match nsisSysVar "$\\n"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100104syn match nsisSysVar "$\\t"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000105syn match nsisSysVar "$\$"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100106syn match nsisSysVar "$\\["'`]"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000107
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100108"LABELS (4.3)
Bram Moolenaar2c64ca12018-10-19 16:22:31 +0200109syn match nsisLocalLabel contained "[^-+!$0-9;"'#. \t/*][^ \t:;#]*:\ze\%($\|[ \t;#]\|\/\*\)"
110syn match nsisGlobalLabel contained "\.[^-+!$0-9;"'# \t/*][^ \t:;#]*:\ze\%($\|[ \t;#]\|\/\*\)"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000111
112"CONSTANTS
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100113syn keyword nsisBoolean contained true false
114syn keyword nsisOnOff contained on off
Bram Moolenaar071d4272004-06-13 20:20:40 +0000115
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100116syn keyword nsisRegistry contained HKCR HKLM HKCU HKU HKCC HKDD HKPD SHCTX
117syn keyword nsisRegistry contained HKCR32 HKCR64 HKCU32 HKCU64 HKLM32 HKLM64
118syn keyword nsisRegistry contained HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE HKEY_CURRENT_USER HKEY_USERS
119syn keyword nsisRegistry contained HKEY_CLASSES_ROOT32 HKEY_CLASSES_ROOT64
120syn keyword nsisRegistry contained HKEY_CURRENT_USER32 HKEY_CURRENT_USER64
121syn keyword nsisRegistry contained HKEY_LOCAL_MACHINE32 HKEY_LOCAL_MACHINE64
122syn keyword nsisRegistry contained HKEY_CURRENT_CONFIG HKEY_DYN_DATA HKEY_PERFORMANCE_DATA
123syn keyword nsisRegistry contained SHELL_CONTEXT
Bram Moolenaar071d4272004-06-13 20:20:40 +0000124
125
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100126" common options
127syn cluster nsisAnyOpt contains=nsisComment,nsisLineContinuation,nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar,nsisUserVar,nsisSysVar,nsisString,nsisNumber
128syn region nsisBooleanOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBoolean
129syn region nsisOnOffOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisOnOff
130syn region nsisLangOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLangKwd
131syn match nsisLangKwd contained "/LANG\>"
132syn region nsisFontOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFontKwd
133syn match nsisFontKwd contained "/\%(ITALIC\|UNDERLINE\|STRIKE\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000134
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100135"STATEMENTS - pages (4.5)
136syn keyword nsisStatement contained Page UninstPage nextgroup=nsisPageOpt skipwhite
137syn region nsisPageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPageKwd
138syn keyword nsisPageKwd contained custom license components directory instfiles uninstConfirm
139syn match nsisPageKwd contained "/ENABLECANCEL\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000140
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100141syn keyword nsisStatement contained PageEx nextgroup=nsisPageExOpt skipwhite
142syn region nsisPageExOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPageExKwd
143syn match nsisPageExKwd contained "\<\%(un\.\)\?\%(custom\|license\|components\|directory\|instfiles\|uninstConfirm\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000144
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100145syn keyword nsisStatement contained PageExEnd PageCallbacks
Bram Moolenaar071d4272004-06-13 20:20:40 +0000146
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100147"STATEMENTS - sections (4.6.1)
148syn keyword nsisStatement contained AddSize SectionEnd SectionGroupEnd
Bram Moolenaar071d4272004-06-13 20:20:40 +0000149
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100150syn keyword nsisStatement contained Section nextgroup=nsisSectionOpt skipwhite
151syn region nsisSectionOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionKwd
152syn match nsisSectionKwd contained "/o\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000153
Bram Moolenaar079ba762021-10-23 12:08:41 +0100154syn keyword nsisStatement contained SectionInstType SectionIn nextgroup=nsisSectionInOpt skipwhite
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100155syn region nsisSectionInOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionInKwd
156syn keyword nsisSectionInKwd contained RO
Bram Moolenaar071d4272004-06-13 20:20:40 +0000157
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100158syn keyword nsisStatement contained SectionGroup nextgroup=nsisSectionGroupOpt skipwhite
159syn region nsisSectionGroupOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionGroupKwd
160syn match nsisSectionGroupKwd contained "/e\>"
161
162"STATEMENTS - functions (4.7.1)
163syn keyword nsisStatement contained Function FunctionEnd
Bram Moolenaar071d4272004-06-13 20:20:40 +0000164
165
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100166"STATEMENTS - LogicLib.nsh
167syn match nsisStatement "${If}"
168syn match nsisStatement "${IfNot}"
169syn match nsisStatement "${Unless}"
170syn match nsisStatement "${ElseIf}"
171syn match nsisStatement "${ElseIfNot}"
172syn match nsisStatement "${ElseUnless}"
173syn match nsisStatement "${Else}"
174syn match nsisStatement "${EndIf}"
175syn match nsisStatement "${EndUnless}"
176syn match nsisStatement "${AndIf}"
177syn match nsisStatement "${AndIfNot}"
178syn match nsisStatement "${AndUnless}"
179syn match nsisStatement "${OrIf}"
180syn match nsisStatement "${OrIfNot}"
181syn match nsisStatement "${OrUnless}"
182syn match nsisStatement "${IfThen}"
183syn match nsisStatement "${IfNotThen}"
184syn match nsisStatement "${||\?}" nextgroup=@nsisPseudoStatement skipwhite
185syn match nsisStatement "${IfCmd}" nextgroup=@nsisPseudoStatement skipwhite
186syn match nsisStatement "${Select}"
187syn match nsisStatement "${Case}"
188syn match nsisStatement "${Case[2-5]}"
189syn match nsisStatement "${CaseElse}"
190syn match nsisStatement "${Default}"
191syn match nsisStatement "${EndSelect}"
192syn match nsisStatement "${Switch}"
193syn match nsisStatement "${EndSwitch}"
194syn match nsisStatement "${Break}"
195syn match nsisStatement "${Do}"
196syn match nsisStatement "${DoWhile}"
197syn match nsisStatement "${DoUntil}"
198syn match nsisStatement "${ExitDo}"
199syn match nsisStatement "${Continue}"
200syn match nsisStatement "${Loop}"
201syn match nsisStatement "${LoopWhile}"
202syn match nsisStatement "${LoopUntil}"
203syn match nsisStatement "${For}"
204syn match nsisStatement "${ForEach}"
205syn match nsisStatement "${ExitFor}"
206syn match nsisStatement "${Next}"
207"STATEMENTS - Memento.nsh
208syn match nsisStatement "${MementoSection}"
209syn match nsisStatement "${MementoSectionEnd}"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000210
211
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100212"USER VARIABLES (4.2.1)
213syn keyword nsisInstruction contained Var nextgroup=nsisVarOpt skipwhite
214syn region nsisVarOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisVarKwd
215syn match nsisVarKwd contained "/GLOBAL\>"
216
217"INSTALLER ATTRIBUTES (4.8.1)
218syn keyword nsisAttribute contained Caption ChangeUI CheckBitmap CompletedText ComponentText
219syn keyword nsisAttribute contained DetailsButtonText DirText DirVar
220syn keyword nsisAttribute contained FileErrorText Icon InstallButtonText
221syn keyword nsisAttribute contained InstallDir InstProgressFlags
222syn keyword nsisAttribute contained LicenseData LicenseText
223syn keyword nsisAttribute contained MiscButtonText Name OutFile
224syn keyword nsisAttribute contained SpaceTexts SubCaption UninstallButtonText UninstallCaption
225syn keyword nsisAttribute contained UninstallIcon UninstallSubCaption UninstallText
226
227syn keyword nsisAttribute contained AddBrandingImage nextgroup=nsisAddBrandingImageOpt skipwhite
228syn region nsisAddBrandingImageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAddBrandingImageKwd
229syn keyword nsisAddBrandingImageKwd contained left right top bottom width height
230
231syn keyword nsisAttribute contained nextgroup=nsisBooleanOpt skipwhite
232 \ AllowRootDirInstall AutoCloseWindow
233
234syn keyword nsisAttribute contained BGFont nextgroup=nsisFontOpt skipwhite
235
236syn keyword nsisAttribute contained BGGradient nextgroup=nsisBGGradientOpt skipwhite
237syn region nsisBGGradientOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBGGradientKwd
238syn keyword nsisBGGradientKwd contained off
239
240syn keyword nsisAttribute contained BrandingText nextgroup=nsisBrandingTextOpt skipwhite
241syn region nsisBrandingTextOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBrandingTextKwd
242syn match nsisBrandingTextKwd contained "/TRIM\%(LEFT\|RIGHT\|CENTER\)\>"
243
244syn keyword nsisAttribute contained CRCCheck nextgroup=nsisCRCCheckOpt skipwhite
245syn region nsisCRCCheckOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCRCCheckKwd
246syn keyword nsisCRCCheckKwd contained on off force
247
248syn keyword nsisAttribute contained DirVerify nextgroup=nsisDirVerifyOpt skipwhite
249syn region nsisDirVerifyOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDirVerifyKwd
250syn keyword nsisDirVerifyKwd contained auto leave
251
252syn keyword nsisAttribute contained InstallColors nextgroup=nsisInstallColorsOpt skipwhite
253syn region nsisInstallColorsOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisInstallColorsKwd
254syn match nsisInstallColorsKwd contained "/windows\>"
255
256syn keyword nsisAttribute contained InstallDirRegKey nextgroup=nsisRegistryOpt skipwhite
257
258syn keyword nsisAttribute contained InstType nextgroup=nsisInstTypeOpt skipwhite
259syn region nsisInstTypeOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisInstTypeKwd
260syn match nsisInstTypeKwd contained "/\%(NOCUSTOM\|CUSTOMSTRING\|COMPONENTSONLYONCUSTOM\)\>"
261
262syn keyword nsisAttribute contained LicenseBkColor nextgroup=nsisLicenseBkColorOpt skipwhite
263syn region nsisLicenseBkColorOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLicenseBkColorKwd
264syn match nsisLicenseBkColorKwd contained "/\%(gray\|windows\)\>"
265
266syn keyword nsisAttribute contained LicenseForceSelection nextgroup=nsisLicenseForceSelectionOpt skipwhite
267syn region nsisLicenseForceSelectionOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLicenseForceSelectionKwd
268syn keyword nsisLicenseForceSelectionKwd contained checkbox radiobuttons off
269
270syn keyword nsisAttribute contained ManifestDPIAware nextgroup=nsisManifestDPIAwareOpt skipwhite
271syn region nsisManifestDPIAwareOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisManifestDPIAwareKwd
272syn keyword nsisManifestDPIAwareKwd contained notset true false
273
Bram Moolenaar079ba762021-10-23 12:08:41 +0100274syn keyword nsisAttribute contained ManifestLongPathAware nextgroup=nsisManifestLongPathAwareOpt skipwhite
275syn region nsisManifestLongPathAwareOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisManifestLongPathAwareKwd
276syn match nsisManifestLongPathAwareKwd contained "\<\%(notset\|true\|false\)\>"
277
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100278syn keyword nsisAttribute contained ManifestSupportedOS nextgroup=nsisManifestSupportedOSOpt skipwhite
279syn region nsisManifestSupportedOSOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisManifestSupportedOSKwd
280syn match nsisManifestSupportedOSKwd contained "\<\%(none\|all\|WinVista\|Win7\|Win8\|Win8\.1\|Win10\)\>"
281
Bram Moolenaar079ba762021-10-23 12:08:41 +0100282syn keyword nsisAttribute contained PEAddResource nextgroup=nsisPEAddResourceOpt skipwhite
283syn region nsisPEAddResourceOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPEAddResourceKwd
284syn match nsisPEAddResourceKwd contained "/\%(OVERWRITE\|REPLACE\)\>"
285
286syn keyword nsisAttribute contained PERemoveResource nextgroup=nsisPERemoveResourceOpt skipwhite
287syn region nsisPERemoveResourceOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPERemoveResourceKwd
288syn match nsisPERemoveResourceKwd contained "/NOERRORS\>"
289
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100290syn keyword nsisAttribute contained RequestExecutionLevel nextgroup=nsisRequestExecutionLevelOpt skipwhite
291syn region nsisRequestExecutionLevelOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRequestExecutionLevelKwd
292syn keyword nsisRequestExecutionLevelKwd contained none user highest admin
293
294syn keyword nsisAttribute contained SetFont nextgroup=nsisLangOpt skipwhite
295
296syn keyword nsisAttribute contained nextgroup=nsisShowInstDetailsOpt skipwhite
297 \ ShowInstDetails ShowUninstDetails
298syn region nsisShowInstDetailsOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisShowInstDetailsKwd
299syn keyword nsisShowInstDetailsKwd contained hide show nevershow
300
301syn keyword nsisAttribute contained SilentInstall nextgroup=nsisSilentInstallOpt skipwhite
302syn region nsisSilentInstallOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSilentInstallKwd
303syn keyword nsisSilentInstallKwd contained normal silent silentlog
304
305syn keyword nsisAttribute contained SilentUnInstall nextgroup=nsisSilentUnInstallOpt skipwhite
306syn region nsisSilentUnInstallOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSilentUnInstallKwd
307syn keyword nsisSilentUnInstallKwd contained normal silent
308
309syn keyword nsisAttribute contained nextgroup=nsisOnOffOpt skipwhite
310 \ WindowIcon XPStyle
311
312"COMPILER FLAGS (4.8.2)
313syn keyword nsisCompiler contained nextgroup=nsisOnOffOpt skipwhite
314 \ AllowSkipFiles SetDatablockOptimize SetDateSave
315
316syn keyword nsisCompiler contained FileBufSize SetCompressorDictSize
317
318syn keyword nsisCompiler contained SetCompress nextgroup=nsisSetCompressOpt skipwhite
319syn region nsisSetCompressOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCompressKwd
320syn keyword nsisSetCompressKwd contained auto force off
321
322syn keyword nsisCompiler contained SetCompressor nextgroup=nsisSetCompressorOpt skipwhite
323syn region nsisSetCompressorOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCompressorKwd
324syn keyword nsisSetCompressorKwd contained zlib bzip2 lzma
325syn match nsisSetCompressorKwd contained "/\%(SOLID\|FINAL\)"
326
327syn keyword nsisCompiler contained SetOverwrite nextgroup=nsisSetOverwriteOpt skipwhite
328syn region nsisSetOverwriteOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetOverwriteKwd
329syn keyword nsisSetOverwriteKwd contained on off try ifnewer ifdiff lastused
330
331syn keyword nsisCompiler contained Unicode nextgroup=nsisBooleanOpt skipwhite
332
333"VERSION INFORMATION (4.8.3)
334syn keyword nsisVersionInfo contained VIAddVersionKey nextgroup=nsisLangOpt skipwhite
335
336syn keyword nsisVersionInfo contained VIProductVersion VIFileVersion
337
338
339"FUNCTIONS - basic (4.9.1)
340syn keyword nsisInstruction contained Delete Rename nextgroup=nsisDeleteOpt skipwhite
341syn region nsisDeleteOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDeleteKwd
342syn match nsisDeleteKwd contained "/REBOOTOK\>"
343
344syn keyword nsisInstruction contained Exec ExecWait SetOutPath
345
346syn keyword nsisInstruction contained ExecShell ExecShellWait nextgroup=nsisExecShellOpt skipwhite
347syn region nsisExecShellOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisExecShellKwd
348syn keyword nsisExecShellKwd contained SW_SHOWDEFAULT SW_SHOWNORMAL SW_SHOWMAXIMIZED SW_SHOWMINIMIZED SW_HIDE
349syn match nsisExecShellKwd contained "/INVOKEIDLIST\>"
350
351syn keyword nsisInstruction contained File nextgroup=nsisFileOpt skipwhite
352syn region nsisFileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileKwd
353syn match nsisFileKwd contained "/\%(nonfatal\|[arx]\|oname\)\>"
354
355syn keyword nsisInstruction contained ReserveFile nextgroup=nsisReserveFileOpt skipwhite
356syn region nsisReserveFileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisReserveFileKwd
357syn match nsisReserveFileKwd contained "/\%(nonfatal\|[rx]\|plugin\)\>"
358
359syn keyword nsisInstruction contained RMDir nextgroup=nsisRMDirOpt skipwhite
360syn region nsisRMDirOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRMDirKwd
361syn match nsisRMDirKwd contained "/\%(REBOOTOK\|r\)\>"
362
363
364"FUNCTIONS - registry & ini (4.9.2)
365syn keyword nsisInstruction contained DeleteINISec DeleteINIStr FlushINI ReadINIStr WriteINIStr
366syn keyword nsisInstruction contained ExpandEnvStrings ReadEnvStr
367
368syn keyword nsisInstruction contained DeleteRegKey nextgroup=nsisDeleteRegKeyOpt skipwhite
369syn region nsisDeleteRegKeyOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDeleteRegKeyKwd,nsisRegistry
Bram Moolenaar079ba762021-10-23 12:08:41 +0100370syn match nsisDeleteRegKeyKwd contained "/\%(ifempty\|ifnosubkeys\|ifnovalues\)\>"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100371
372syn keyword nsisInstruction contained nextgroup=nsisRegistryOpt skipwhite
373 \ DeleteRegValue EnumRegKey EnumRegValue ReadRegDWORD ReadRegStr WriteRegBin WriteRegDWORD WriteRegExpandStr WriteRegStr
374syn region nsisRegistryOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRegistry
375
376syn keyword nsisInstruction contained WriteRegMultiStr nextgroup=nsisWriteRegMultiStrOpt skipwhite
377syn region nsisWriteRegMultiStrOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRegistry,nsisWriteRegMultiStrKwd
378syn match nsisWriteRegMultiStrKwd contained "/REGEDIT5\>"
379
380syn keyword nsisInstruction contained SetRegView nextgroup=nsisSetRegViewOpt skipwhite
381syn region nsisSetRegViewOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetRegViewKwd
382syn keyword nsisSetRegViewKwd contained default lastused
383
384"FUNCTIONS - general purpose (4.9.3)
Bram Moolenaar079ba762021-10-23 12:08:41 +0100385syn keyword nsisInstruction contained CallInstDLL CreateDirectory GetWinVer
386syn keyword nsisInstruction contained GetFileTime GetFileTimeLocal GetKnownFolderPath
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100387syn keyword nsisInstruction contained GetTempFileName SearchPath RegDLL UnRegDLL
388
389syn keyword nsisInstruction contained CopyFiles nextgroup=nsisCopyFilesOpt skipwhite
390syn region nsisCopyFilesOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCopyFilesKwd
391syn match nsisCopyFilesKwd contained "/\%(SILENT\|FILESONLY\)\>"
392
393syn keyword nsisInstruction contained CreateShortcut nextgroup=nsisCreateShortcutOpt skipwhite
394syn region nsisCreateShortcutOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCreateShortcutKwd
395syn match nsisCreateShortcutKwd contained "/NoWorkingDir\>"
396
Bram Moolenaar079ba762021-10-23 12:08:41 +0100397syn keyword nsisInstruction contained GetDLLVersion GetDLLVersionLocal nextgroup=nsisGetDLLVersionOpt skipwhite
398syn region nsisGetDLLVersionOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisGetDLLVersionKwd
399syn match nsisGetDLLVersionKwd contained "/ProductVersion\>"
400
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100401syn keyword nsisInstruction contained GetFullPathName nextgroup=nsisGetFullPathNameOpt skipwhite
402syn region nsisGetFullPathNameOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisGetFullPathNameKwd
403syn match nsisGetFullPathNameKwd contained "/SHORT\>"
404
405syn keyword nsisInstruction contained SetFileAttributes nextgroup=nsisSetFileAttributesOpt skipwhite
406syn region nsisSetFileAttributesOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileAttrib
407syn keyword nsisFileAttrib contained NORMAL ARCHIVE HIDDEN OFFLINE READONLY SYSTEM TEMPORARY
408syn keyword nsisFileAttrib contained FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_HIDDEN
409syn keyword nsisFileAttrib contained FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_SYSTEM
410syn keyword nsisFileAttrib contained FILE_ATTRIBUTE_TEMPORARY
411
412"FUNCTIONS - Flow Control (4.9.4)
413syn keyword nsisInstruction contained Abort Call ClearErrors GetCurrentAddress
414syn keyword nsisInstruction contained GetFunctionAddress GetLabelAddress Goto
415syn keyword nsisInstruction contained IfAbort IfErrors IfFileExists IfRebootFlag IfSilent
Bram Moolenaar079ba762021-10-23 12:08:41 +0100416syn keyword nsisInstruction contained IfShellVarContextAll IfRtlLanguage
Bram Moolenaareb3dc872018-05-13 22:34:24 +0200417syn keyword nsisInstruction contained IntCmp IntCmpU Int64Cmp Int64CmpU IntPtrCmp IntPtrCmpU
418syn keyword nsisInstruction contained Return Quit SetErrors StrCmp StrCmpS
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100419
420syn keyword nsisInstruction contained MessageBox nextgroup=nsisMessageBoxOpt skipwhite
421syn region nsisMessageBoxOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisMessageBox
422syn keyword nsisMessageBox contained MB_OK MB_OKCANCEL MB_ABORTRETRYIGNORE MB_RETRYCANCEL MB_YESNO MB_YESNOCANCEL
423syn keyword nsisMessageBox contained MB_ICONEXCLAMATION MB_ICONINFORMATION MB_ICONQUESTION MB_ICONSTOP MB_USERICON
424syn keyword nsisMessageBox contained MB_TOPMOST MB_SETFOREGROUND MB_RIGHT MB_RTLREADING
425syn keyword nsisMessageBox contained MB_DEFBUTTON1 MB_DEFBUTTON2 MB_DEFBUTTON3 MB_DEFBUTTON4
426syn keyword nsisMessageBox contained IDABORT IDCANCEL IDIGNORE IDNO IDOK IDRETRY IDYES
427syn match nsisMessageBox contained "/SD\>"
428
429"FUNCTIONS - File and directory i/o instructions (4.9.5)
430syn keyword nsisInstruction contained FileClose FileOpen FileRead FileReadUTF16LE
431syn keyword nsisInstruction contained FileReadByte FileReadWord FileSeek FileWrite
432syn keyword nsisInstruction contained FileWriteByte FileWriteWord
433syn keyword nsisInstruction contained FindClose FindFirst FindNext
434
435syn keyword nsisInstruction contained FileWriteUTF16LE nextgroup=nsisFileWriteUTF16LEOpt skipwhite
436syn region nsisFileWriteUTF16LEOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileWriteUTF16LEKwd
437syn match nsisFileWriteUTF16LEKwd contained "/BOM\>"
438
439"FUNCTIONS - Uninstaller instructions (4.9.6)
440syn keyword nsisInstruction contained WriteUninstaller
441
442"FUNCTIONS - Misc instructions (4.9.7)
443syn keyword nsisInstruction contained GetErrorLevel GetInstDirError InitPluginsDir Nop
444syn keyword nsisInstruction contained SetErrorLevel Sleep
445
446syn keyword nsisInstruction contained SetShellVarContext nextgroup=nsisSetShellVarContextOpt skipwhite
447syn region nsisSetShellVarContextOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetShellVarContextKwd
448syn keyword nsisSetShellVarContextKwd contained current all
449
450"FUNCTIONS - String manipulation support (4.9.8)
451syn keyword nsisInstruction contained StrCpy StrLen
452
453"FUNCTIONS - Stack support (4.9.9)
454syn keyword nsisInstruction contained Exch Push Pop
455
456"FUNCTIONS - Integer manipulation support (4.9.10)
Bram Moolenaareb3dc872018-05-13 22:34:24 +0200457syn keyword nsisInstruction contained IntFmt Int64Fmt IntOp IntPtrOp
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100458
459"FUNCTIONS - Rebooting support (4.9.11)
460syn keyword nsisInstruction contained Reboot SetRebootFlag
461
462"FUNCTIONS - Install logging instructions (4.9.12)
463syn keyword nsisInstruction contained LogSet nextgroup=nsisOnOffOpt skipwhite
464syn keyword nsisInstruction contained LogText
465
466"FUNCTIONS - Section management instructions (4.9.13)
467syn keyword nsisInstruction contained SectionSetFlags SectionGetFlags SectionSetText
468syn keyword nsisInstruction contained SectionGetText SectionSetInstTypes SectionGetInstTypes
469syn keyword nsisInstruction contained SectionSetSize SectionGetSize SetCurInstType GetCurInstType
470syn keyword nsisInstruction contained InstTypeSetText InstTypeGetText
471
472"FUNCTIONS - User Interface Instructions (4.9.14)
473syn keyword nsisInstruction contained BringToFront DetailPrint EnableWindow
474syn keyword nsisInstruction contained FindWindow GetDlgItem HideWindow IsWindow
475syn keyword nsisInstruction contained ShowWindow
476
477syn keyword nsisInstruction contained CreateFont nextgroup=nsisFontOpt skipwhite
478
479syn keyword nsisInstruction contained nextgroup=nsisBooleanOpt skipwhite
480 \ LockWindow SetAutoClose
481
Bram Moolenaar079ba762021-10-23 12:08:41 +0100482syn keyword nsisInstruction contained LoadAndSetImage nextgroup=nsisLoadAndSetImageOpt skipwhite
483syn region nsisLoadAndSetImageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLoadAndSetImageKwd
484syn match nsisLoadAndSetImageKwd contained "/\%(EXERESOURCE\|STRINGID\|RESIZETOFIT\%(WIDTH\|HEIGHT\)\)\>"
485
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100486syn keyword nsisInstruction contained SendMessage nextgroup=nsisSendMessageOpt skipwhite
487syn region nsisSendMessageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSendMessageKwd
488syn match nsisSendMessageKwd contained "/TIMEOUT\>"
489
490syn keyword nsisInstruction contained SetBrandingImage nextgroup=nsisSetBrandingImageOpt skipwhite
491syn region nsisSetBrandingImageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetBrandingImageKwd
492syn match nsisSetBrandingImageKwd contained "/\%(IMGID\|RESIZETOFIT\)\>"
493
494syn keyword nsisInstruction contained SetDetailsView nextgroup=nsisSetDetailsViewOpt skipwhite
495syn region nsisSetDetailsViewOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetDetailsViewKwd
496syn keyword nsisSetDetailsViewKwd contained show hide
497
498syn keyword nsisInstruction contained SetDetailsPrint nextgroup=nsisSetDetailsPrintOpt skipwhite
499syn region nsisSetDetailsPrintOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetDetailsPrintKwd
500syn keyword nsisSetDetailsPrintKwd contained none listonly textonly both lastused
501
502syn keyword nsisInstruction contained SetCtlColors nextgroup=nsisSetCtlColorsOpt skipwhite
503syn region nsisSetCtlColorsOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCtlColorsKwd
504syn match nsisSetCtlColorsKwd contained "/BRANDING\>"
505
506syn keyword nsisInstruction contained SetSilent nextgroup=nsisSetSilentOpt skipwhite
507syn region nsisSetSilentOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetSilentKwd
508syn keyword nsisSetSilentKwd contained silent normal
509
510
511"FUNCTIONS - Multiple Languages Instructions (4.9.15)
512syn keyword nsisInstruction contained LoadLanguageFile LangString LicenseLangString
513
514
515"SPECIAL FUNCTIONS - install (4.7.2.1)
516syn match nsisCallback "\.onGUIInit"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000517syn match nsisCallback "\.onInit"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000518syn match nsisCallback "\.onInstFailed"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100519syn match nsisCallback "\.onInstSuccess"
520syn match nsisCallback "\.onGUIEnd"
521syn match nsisCallback "\.onMouseOverSection"
522syn match nsisCallback "\.onRebootFailed"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000523syn match nsisCallback "\.onSelChange"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100524syn match nsisCallback "\.onUserAbort"
525syn match nsisCallback "\.onVerifyInstDir"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000526
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100527"SPECIAL FUNCTIONS - uninstall (4.7.2.2)
528syn match nsisCallback "un\.onGUIInit"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000529syn match nsisCallback "un\.onInit"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100530syn match nsisCallback "un\.onUninstFailed"
531syn match nsisCallback "un\.onUninstSuccess"
532syn match nsisCallback "un\.onGUIEnd"
533syn match nsisCallback "un\.onRebootFailed"
534syn match nsisCallback "un\.onSelChange"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000535syn match nsisCallback "un\.onUserAbort"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000536
537
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100538"COMPILER UTILITY (5.1)
539syn match nsisInclude contained "!include\>" nextgroup=nsisIncludeOpt skipwhite
540syn region nsisIncludeOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisIncludeKwd
541syn match nsisIncludeKwd contained "/\%(NONFATAL\|CHARSET\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000542
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100543syn match nsisSystem contained "!addincludedir\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000544
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100545syn match nsisSystem contained "!addplugindir\>" nextgroup=nsisAddplugindirOpt skipwhite
546syn region nsisAddplugindirOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAddplugindirKwd
547syn match nsisAddplugindirKwd contained "/\%(x86-ansi\|x86-unicode\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000548
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100549syn match nsisSystem contained "!appendfile\>" nextgroup=nsisAppendfileOpt skipwhite
550syn region nsisAppendfileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAppendfileKwd
551syn match nsisAppendfileKwd contained "/\%(CHARSET\|RawNL\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000552
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100553syn match nsisSystem contained "!cd\>"
554
555syn match nsisSystem contained "!delfile\>" nextgroup=nsisDelfileOpt skipwhite
556syn region nsisDelfileOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDelfileKwd
557syn match nsisDelfileKwd contained "/nonfatal\>"
558
559syn match nsisSystem contained "!echo\>"
560syn match nsisSystem contained "!error\>"
561syn match nsisSystem contained "!execute\>"
562syn match nsisSystem contained "!makensis\>"
563syn match nsisSystem contained "!packhdr\>"
564syn match nsisSystem contained "!finalize\>"
565syn match nsisSystem contained "!system\>"
566syn match nsisSystem contained "!tempfile\>"
567syn match nsisSystem contained "!getdllversion\>"
Bram Moolenaareb3dc872018-05-13 22:34:24 +0200568syn match nsisSystem contained "!gettlbversion\>"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100569syn match nsisSystem contained "!warning\>"
570
571syn match nsisSystem contained "!pragma\>" nextgroup=nsisPragmaOpt skipwhite
572syn region nsisPragmaOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPragmaKwd
573syn keyword nsisPragmaKwd contained enable disable default push pop
574
575syn match nsisSystem contained "!verbose\>" nextgroup=nsisVerboseOpt skipwhite
576syn region nsisVerboseOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisVerboseKwd
577syn keyword nsisVerboseKwd contained push pop
578
579"PREPROCESSOR (5.4)
580syn match nsisDefine contained "!define\>" nextgroup=nsisDefineOpt skipwhite
581syn region nsisDefineOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDefineKwd
Bram Moolenaar079ba762021-10-23 12:08:41 +0100582syn match nsisDefineKwd contained "/\%(ifndef\|redef\|date\|utcdate\|file\|intfmt\|math\)\>"
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100583
584syn match nsisDefine contained "!undef\>"
585syn match nsisPreCondit contained "!ifdef\>"
586syn match nsisPreCondit contained "!ifndef\>"
587
588syn match nsisPreCondit contained "!if\>" nextgroup=nsisIfOpt skipwhite
589syn region nsisIfOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisIfKwd
590syn match nsisIfKwd contained "/FileExists\>"
591
592syn match nsisPreCondit contained "!ifmacrodef\>"
593syn match nsisPreCondit contained "!ifmacrondef\>"
594syn match nsisPreCondit contained "!else\>"
595syn match nsisPreCondit contained "!endif\>"
596syn match nsisMacro contained "!insertmacro\>"
597syn match nsisMacro contained "!macro\>"
598syn match nsisMacro contained "!macroend\>"
599syn match nsisMacro contained "!macroundef\>"
600
601syn match nsisMacro contained "!searchparse\>" nextgroup=nsisSearchparseOpt skipwhite
602syn region nsisSearchparseOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSearchparseKwd
603syn match nsisSearchparseKwd contained "/\%(ignorecase\|noerrors\|file\)\>"
604
605syn match nsisMacro contained "!searchreplace\>" nextgroup=nsisSearchreplaceOpt skipwhite
606syn region nsisSearchreplaceOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSearchreplaceKwd
607syn match nsisSearchreplaceKwd contained "/ignorecase\>"
608
Bram Moolenaar071d4272004-06-13 20:20:40 +0000609
610
611" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200612" Only when an item doesn't have highlighting yet
Bram Moolenaar071d4272004-06-13 20:20:40 +0000613
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200614hi def link nsisInstruction Function
615hi def link nsisComment Comment
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100616hi def link nsisFirstComment Comment
617hi def link nsisLocalLabel Label
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200618hi def link nsisGlobalLabel Label
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100619hi def link nsisStatement Statement
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200620hi def link nsisString String
621hi def link nsisBoolean Boolean
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100622hi def link nsisOnOff Boolean
623hi def link nsisFontKwd Constant
624hi def link nsisLangKwd Constant
625hi def link nsisPageKwd Constant
626hi def link nsisPageExKwd Constant
627hi def link nsisSectionKwd Constant
628hi def link nsisSectionInKwd Constant
629hi def link nsisSectionGroupKwd Constant
630hi def link nsisVarKwd Constant
631hi def link nsisAddBrandingImageKwd Constant
632hi def link nsisBGGradientKwd Constant
633hi def link nsisBrandingTextKwd Constant
634hi def link nsisCRCCheckKwd Constant
635hi def link nsisDirVerifyKwd Constant
636hi def link nsisInstallColorsKwd Constant
637hi def link nsisInstTypeKwd Constant
638hi def link nsisLicenseBkColorKwd Constant
639hi def link nsisLicenseForceSelectionKwd Constant
640hi def link nsisManifestDPIAwareKwd Constant
Bram Moolenaar079ba762021-10-23 12:08:41 +0100641hi def link nsisManifestLongPathAwareKwd Constant
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100642hi def link nsisManifestSupportedOSKwd Constant
Bram Moolenaar079ba762021-10-23 12:08:41 +0100643hi def link nsisPEAddResourceKwd Constant
644hi def link nsisPERemoveResourceKwd Constant
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100645hi def link nsisRequestExecutionLevelKwd Constant
646hi def link nsisShowInstDetailsKwd Constant
647hi def link nsisSilentInstallKwd Constant
648hi def link nsisSilentUnInstallKwd Constant
649hi def link nsisSetCompressKwd Constant
650hi def link nsisSetCompressorKwd Constant
651hi def link nsisSetOverwriteKwd Constant
652hi def link nsisDeleteKwd Constant
653hi def link nsisExecShellKwd Constant
654hi def link nsisFileKwd Constant
655hi def link nsisReserveFileKwd Constant
656hi def link nsisRMDirKwd Constant
657hi def link nsisDeleteRegKeyKwd Constant
658hi def link nsisWriteRegMultiStrKwd Constant
659hi def link nsisSetRegViewKwd Constant
660hi def link nsisCopyFilesKwd Constant
661hi def link nsisCreateShortcutKwd Constant
Bram Moolenaar079ba762021-10-23 12:08:41 +0100662hi def link nsisGetDLLVersionKwd Constant
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100663hi def link nsisGetFullPathNameKwd Constant
664hi def link nsisFileAttrib Constant
665hi def link nsisMessageBox Constant
666hi def link nsisFileWriteUTF16LEKwd Constant
667hi def link nsisSetShellVarContextKwd Constant
Bram Moolenaar079ba762021-10-23 12:08:41 +0100668hi def link nsisLoadAndSetImageKwd Constant
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100669hi def link nsisSendMessageKwd Constant
670hi def link nsisSetBrandingImageKwd Constant
671hi def link nsisSetDetailsViewKwd Constant
672hi def link nsisSetDetailsPrintKwd Constant
673hi def link nsisSetCtlColorsKwd Constant
674hi def link nsisSetSilentKwd Constant
675hi def link nsisRegistry Identifier
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200676hi def link nsisNumber Number
677hi def link nsisError Error
678hi def link nsisUserVar Identifier
679hi def link nsisSysVar Identifier
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100680hi def link nsisAttribute Type
681hi def link nsisCompiler Type
682hi def link nsisVersionInfo Type
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200683hi def link nsisTodo Todo
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100684hi def link nsisCallback Identifier
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200685" preprocessor commands
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200686hi def link nsisPreprocSubst PreProc
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100687hi def link nsisPreprocLangStr PreProc
688hi def link nsisPreprocEnvVar PreProc
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200689hi def link nsisDefine Define
690hi def link nsisMacro Macro
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100691hi def link nsisPreCondit PreCondit
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200692hi def link nsisInclude Include
693hi def link nsisSystem PreProc
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100694hi def link nsisLineContinuation Special
695hi def link nsisIncludeKwd Constant
696hi def link nsisAddplugindirKwd Constant
697hi def link nsisAppendfileKwd Constant
698hi def link nsisDelfileKwd Constant
699hi def link nsisPragmaKwd Constant
700hi def link nsisVerboseKwd Constant
701hi def link nsisDefineKwd Constant
702hi def link nsisIfKwd Constant
703hi def link nsisSearchparseKwd Constant
704hi def link nsisSearchreplaceKwd Constant
Bram Moolenaar071d4272004-06-13 20:20:40 +0000705
Bram Moolenaar071d4272004-06-13 20:20:40 +0000706
707let b:current_syntax = "nsis"
708
Bram Moolenaar40962ec2018-01-28 22:47:25 +0100709let &cpo = s:cpo_save
710unlet s:cpo_save