Mercurial > hg > RemoteEditor > vim7
comparison runtime/syntax/nsis.vim @ 0:76efa0be13f1
Initial revision
author | atsuki |
---|---|
date | Sat, 10 Nov 2007 15:07:22 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:76efa0be13f1 |
---|---|
1 " Vim syntax file | |
2 " Language: NSIS script, for version of NSIS 1.91 and later | |
3 " Maintainer: Alex Jakushev <Alex.Jakushev@kemek.lt> | |
4 " Last Change: 2004 May 12 | |
5 | |
6 " For version 5.x: Clear all syntax items | |
7 " For version 6.x: Quit when a syntax file was already loaded | |
8 if version < 600 | |
9 syntax clear | |
10 elseif exists("b:current_syntax") | |
11 finish | |
12 endif | |
13 | |
14 syn case ignore | |
15 | |
16 | |
17 "COMMENTS | |
18 syn keyword nsisTodo todo attention note fixme readme | |
19 syn region nsisComment start=";" end="$" contains=nsisTodo | |
20 syn region nsisComment start="#" end="$" contains=nsisTodo | |
21 | |
22 "LABELS | |
23 syn match nsisLocalLabel "\a\S\{-}:" | |
24 syn match nsisGlobalLabel "\.\S\{-1,}:" | |
25 | |
26 "PREPROCESSOR | |
27 syn match nsisPreprocSubst "${.\{-}}" | |
28 syn match nsisDefine "!define\>" | |
29 syn match nsisDefine "!undef\>" | |
30 syn match nsisPreCondit "!ifdef\>" | |
31 syn match nsisPreCondit "!ifndef\>" | |
32 syn match nsisPreCondit "!endif\>" | |
33 syn match nsisPreCondit "!else\>" | |
34 syn match nsisMacro "!macro\>" | |
35 syn match nsisMacro "!macroend\>" | |
36 syn match nsisMacro "!insertmacro\>" | |
37 | |
38 "COMPILER UTILITY | |
39 syn match nsisInclude "!include\>" | |
40 syn match nsisSystem "!cd\>" | |
41 syn match nsisSystem "!system\>" | |
42 syn match nsisSystem "!packhdr\>" | |
43 | |
44 "VARIABLES | |
45 syn match nsisUserVar "$\d" | |
46 syn match nsisUserVar "$R\d" | |
47 syn match nsisSysVar "$INSTDIR" | |
48 syn match nsisSysVar "$OUTDIR" | |
49 syn match nsisSysVar "$CMDLINE" | |
50 syn match nsisSysVar "$PROGRAMFILES" | |
51 syn match nsisSysVar "$DESKTOP" | |
52 syn match nsisSysVar "$EXEDIR" | |
53 syn match nsisSysVar "$WINDIR" | |
54 syn match nsisSysVar "$SYSDIR" | |
55 syn match nsisSysVar "$TEMP" | |
56 syn match nsisSysVar "$STARTMENU" | |
57 syn match nsisSysVar "$SMPROGRAMS" | |
58 syn match nsisSysVar "$SMSTARTUP" | |
59 syn match nsisSysVar "$QUICKLAUNCH" | |
60 syn match nsisSysVar "$HWNDPARENT" | |
61 syn match nsisSysVar "$\\r" | |
62 syn match nsisSysVar "$\\n" | |
63 syn match nsisSysVar "$\$" | |
64 | |
65 "STRINGS | |
66 syn region nsisString start=/"/ skip=/'\|`/ end=/"/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry | |
67 syn region nsisString start=/'/ skip=/"\|`/ end=/'/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry | |
68 syn region nsisString start=/`/ skip=/"\|'/ end=/`/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry | |
69 | |
70 "CONSTANTS | |
71 syn keyword nsisBoolean true false on off | |
72 | |
73 syn keyword nsisAttribOptions hide show nevershow auto force try ifnewer normal silent silentlog | |
74 syn keyword nsisAttribOptions smooth colored SET CUR END RO none listonly textonly both current all | |
75 syn keyword nsisAttribOptions zlib bzip2 lzma | |
76 | |
77 syn match nsisAttribOptions '\/NOCUSTOM' | |
78 syn match nsisAttribOptions '\/CUSTOMSTRING' | |
79 syn match nsisAttribOptions '\/COMPONENTSONLYONCUSTOM' | |
80 syn match nsisAttribOptions '\/windows' | |
81 syn match nsisAttribOptions '\/r' | |
82 syn match nsisAttribOptions '\/oname' | |
83 syn match nsisAttribOptions '\/REBOOTOK' | |
84 syn match nsisAttribOptions '\/SILENT' | |
85 syn match nsisAttribOptions '\/FILESONLY' | |
86 syn match nsisAttribOptions '\/SHORT' | |
87 | |
88 syn keyword nsisExecShell SW_SHOWNORMAL SW_SHOWMAXIMIZED SW_SHOWMINIMIZED | |
89 | |
90 syn keyword nsisRegistry HKCR HKLM HKCU HKU HKCC HKDD HKPD | |
91 syn keyword nsisRegistry HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE HKEY_CURRENT_USER HKEY_USERS | |
92 syn keyword nsisRegistry HKEY_CURRENT_CONFIG HKEY_DYN_DATA HKEY_PERFORMANCE_DATA | |
93 | |
94 syn keyword nsisFileAttrib NORMAL ARCHIVE HIDDEN OFFLINE READONLY SYSTEM TEMPORARY | |
95 syn keyword nsisFileAttrib FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_HIDDEN | |
96 syn keyword nsisFileAttrib FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_SYSTEM | |
97 syn keyword nsisFileAttrib FILE_ATTRIBUTE_TEMPORARY | |
98 | |
99 syn keyword nsisMessageBox MB_OK MB_OKCANCEL MB_ABORTRETRYIGNORE MB_RETRYCANCEL MB_YESNO MB_YESNOCANCEL | |
100 syn keyword nsisMessageBox MB_ICONEXCLAMATION MB_ICONINFORMATION MB_ICONQUESTION MB_ICONSTOP | |
101 syn keyword nsisMessageBox MB_TOPMOST MB_SETFOREGROUND MB_RIGHT | |
102 syn keyword nsisMessageBox MB_DEFBUTTON1 MB_DEFBUTTON2 MB_DEFBUTTON3 MB_DEFBUTTON4 | |
103 syn keyword nsisMessageBox IDABORT IDCANCEL IDIGNORE IDNO IDOK IDRETRY IDYES | |
104 | |
105 syn match nsisNumber "\<[^0]\d*\>" | |
106 syn match nsisNumber "\<0x\x\+\>" | |
107 syn match nsisNumber "\<0\o*\>" | |
108 | |
109 | |
110 "INSTALLER ATTRIBUTES - General installer configuration | |
111 syn keyword nsisAttribute OutFile Name Caption SubCaption BrandingText Icon | |
112 syn keyword nsisAttribute WindowIcon BGGradient SilentInstall SilentUnInstall | |
113 syn keyword nsisAttribute CRCCheck MiscButtonText InstallButtonText FileErrorText | |
114 | |
115 "INSTALLER ATTRIBUTES - Install directory configuration | |
116 syn keyword nsisAttribute InstallDir InstallDirRegKey | |
117 | |
118 "INSTALLER ATTRIBUTES - License page configuration | |
119 syn keyword nsisAttribute LicenseText LicenseData | |
120 | |
121 "INSTALLER ATTRIBUTES - Component page configuration | |
122 syn keyword nsisAttribute ComponentText InstType EnabledBitmap DisabledBitmap SpaceTexts | |
123 | |
124 "INSTALLER ATTRIBUTES - Directory page configuration | |
125 syn keyword nsisAttribute DirShow DirText AllowRootDirInstall | |
126 | |
127 "INSTALLER ATTRIBUTES - Install page configuration | |
128 syn keyword nsisAttribute InstallColors InstProgressFlags AutoCloseWindow | |
129 syn keyword nsisAttribute ShowInstDetails DetailsButtonText CompletedText | |
130 | |
131 "INSTALLER ATTRIBUTES - Uninstall configuration | |
132 syn keyword nsisAttribute UninstallText UninstallIcon UninstallCaption | |
133 syn keyword nsisAttribute UninstallSubCaption ShowUninstDetails UninstallButtonText | |
134 | |
135 "COMPILER ATTRIBUTES | |
136 syn keyword nsisCompiler SetOverwrite SetCompress SetCompressor SetDatablockOptimize SetDateSave | |
137 | |
138 | |
139 "FUNCTIONS - general purpose | |
140 syn keyword nsisInstruction SetOutPath File Exec ExecWait ExecShell | |
141 syn keyword nsisInstruction Rename Delete RMDir | |
142 | |
143 "FUNCTIONS - registry & ini | |
144 syn keyword nsisInstruction WriteRegStr WriteRegExpandStr WriteRegDWORD WriteRegBin | |
145 syn keyword nsisInstruction WriteINIStr ReadRegStr ReadRegDWORD ReadINIStr ReadEnvStr | |
146 syn keyword nsisInstruction ExpandEnvStrings DeleteRegValue DeleteRegKey EnumRegKey | |
147 syn keyword nsisInstruction EnumRegValue DeleteINISec DeleteINIStr | |
148 | |
149 "FUNCTIONS - general purpose, advanced | |
150 syn keyword nsisInstruction CreateDirectory CopyFiles SetFileAttributes CreateShortCut | |
151 syn keyword nsisInstruction GetFullPathName SearchPath GetTempFileName CallInstDLL | |
152 syn keyword nsisInstruction RegDLL UnRegDLL GetDLLVersion GetDLLVersionLocal | |
153 syn keyword nsisInstruction GetFileTime GetFileTimeLocal | |
154 | |
155 "FUNCTIONS - Branching, flow control, error checking, user interaction, etc instructions | |
156 syn keyword nsisInstruction Goto Call Return IfErrors ClearErrors SetErrors FindWindow | |
157 syn keyword nsisInstruction SendMessage IsWindow IfFileExists MessageBox StrCmp | |
158 syn keyword nsisInstruction IntCmp IntCmpU Abort Quit GetFunctionAddress GetLabelAddress | |
159 syn keyword nsisInstruction GetCurrentAddress | |
160 | |
161 "FUNCTIONS - File and directory i/o instructions | |
162 syn keyword nsisInstruction FindFirst FindNext FindClose FileOpen FileClose FileRead | |
163 syn keyword nsisInstruction FileWrite FileReadByte FileWriteByte FileSeek | |
164 | |
165 "FUNCTIONS - Misc instructions | |
166 syn keyword nsisInstruction SetDetailsView SetDetailsPrint SetAutoClose DetailPrint | |
167 syn keyword nsisInstruction Sleep BringToFront HideWindow SetShellVarContext | |
168 | |
169 "FUNCTIONS - String manipulation support | |
170 syn keyword nsisInstruction StrCpy StrLen | |
171 | |
172 "FUNCTIONS - Stack support | |
173 syn keyword nsisInstruction Push Pop Exch | |
174 | |
175 "FUNCTIONS - Integer manipulation support | |
176 syn keyword nsisInstruction IntOp IntFmt | |
177 | |
178 "FUNCTIONS - Rebooting support | |
179 syn keyword nsisInstruction Reboot IfRebootFlag SetRebootFlag | |
180 | |
181 "FUNCTIONS - Uninstaller instructions | |
182 syn keyword nsisInstruction WriteUninstaller | |
183 | |
184 "FUNCTIONS - Install logging instructions | |
185 syn keyword nsisInstruction LogSet LogText | |
186 | |
187 "FUNCTIONS - Section management instructions | |
188 syn keyword nsisInstruction SectionSetFlags SectionGetFlags SectionSetText | |
189 syn keyword nsisInstruction SectionGetText | |
190 | |
191 | |
192 "SPECIAL FUNCTIONS - install | |
193 syn match nsisCallback "\.onInit" | |
194 syn match nsisCallback "\.onUserAbort" | |
195 syn match nsisCallback "\.onInstSuccess" | |
196 syn match nsisCallback "\.onInstFailed" | |
197 syn match nsisCallback "\.onVerifyInstDir" | |
198 syn match nsisCallback "\.onNextPage" | |
199 syn match nsisCallback "\.onPrevPage" | |
200 syn match nsisCallback "\.onSelChange" | |
201 | |
202 "SPECIAL FUNCTIONS - uninstall | |
203 syn match nsisCallback "un\.onInit" | |
204 syn match nsisCallback "un\.onUserAbort" | |
205 syn match nsisCallback "un\.onInstSuccess" | |
206 syn match nsisCallback "un\.onInstFailed" | |
207 syn match nsisCallback "un\.onVerifyInstDir" | |
208 syn match nsisCallback "un\.onNextPage" | |
209 | |
210 | |
211 "STATEMENTS - sections | |
212 syn keyword nsisStatement Section SectionIn SectionEnd SectionDivider | |
213 syn keyword nsisStatement AddSize | |
214 | |
215 "STATEMENTS - functions | |
216 syn keyword nsisStatement Function FunctionEnd | |
217 | |
218 "STATEMENTS - pages | |
219 syn keyword nsisStatement Page UninstPage PageEx PageExEnc PageCallbacks | |
220 | |
221 | |
222 "ERROR | |
223 syn keyword nsisError UninstallExeName | |
224 | |
225 | |
226 " Define the default highlighting. | |
227 " For version 5.7 and earlier: only when not done already | |
228 " For version 5.8 and later: only when an item doesn't have highlighting yet | |
229 if version >= 508 || !exists("did_nsis_syn_inits") | |
230 | |
231 if version < 508 | |
232 let did_nsys_syn_inits = 1 | |
233 command -nargs=+ HiLink hi link <args> | |
234 else | |
235 command -nargs=+ HiLink hi def link <args> | |
236 endif | |
237 | |
238 | |
239 HiLink nsisInstruction Function | |
240 HiLink nsisComment Comment | |
241 HiLink nsisLocalLabel Label | |
242 HiLink nsisGlobalLabel Label | |
243 HiLink nsisStatement Statement | |
244 HiLink nsisString String | |
245 HiLink nsisBoolean Boolean | |
246 HiLink nsisAttribOptions Constant | |
247 HiLink nsisExecShell Constant | |
248 HiLink nsisFileAttrib Constant | |
249 HiLink nsisMessageBox Constant | |
250 HiLink nsisRegistry Identifier | |
251 HiLink nsisNumber Number | |
252 HiLink nsisError Error | |
253 HiLink nsisUserVar Identifier | |
254 HiLink nsisSysVar Identifier | |
255 HiLink nsisAttribute Type | |
256 HiLink nsisCompiler Type | |
257 HiLink nsisTodo Todo | |
258 HiLink nsisCallback Operator | |
259 " preprocessor commands | |
260 HiLink nsisPreprocSubst PreProc | |
261 HiLink nsisDefine Define | |
262 HiLink nsisMacro Macro | |
263 HiLink nsisPreCondit PreCondit | |
264 HiLink nsisInclude Include | |
265 HiLink nsisSystem PreProc | |
266 | |
267 delcommand HiLink | |
268 endif | |
269 | |
270 let b:current_syntax = "nsis" | |
271 |