annotate runtime/syntax/iss.vim @ 0:76efa0be13f1

Initial revision
author atsuki
date Sat, 10 Nov 2007 15:07:22 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
1 " Vim syntax file
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
2 " Language: Inno Setup File (iss file) and My InnoSetup extension
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
3 " Maintainer: Jason Mills (jmills@cs.mun.ca)
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
4 " Previous Maintainer: Dominique Stéphan (dominique@mggen.com)
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
5 " Last Change: 2004 Dec 14
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
6 "
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
7 " Todo:
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
8 " - The paramter String: is matched as flag string (because of case ignore).
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
9 " - Pascal scripting syntax is not recognized.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
10 " - Embedded double quotes confuse string matches. e.g. "asfd""asfa"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
11
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
12 " For version 5.x: Clear all syntax items
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
13 " For version 6.x: Quit when a syntax file was already loaded
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
14 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
15 syntax clear
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
16 elseif exists("b:current_syntax")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
17 finish
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
18 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
19
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
20 " shut case off
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
21 syn case ignore
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
22
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
23 " Preprocessor
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
24 syn region issPreProc start="^\s*#" end="$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
25
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
26 " Section
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
27 syn region issSection start="\[" end="\]"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
28
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
29 " Label in the [Setup] Section
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
30 syn match issDirective "^[^=]\+="
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
31
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
32 " URL
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
33 syn match issURL "http[s]\=:\/\/.*$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
34
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
35 " Parameters used for any section.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
36 " syn match issParam"[^: ]\+:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
37 syn match issParam "Name:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
38 syn match issParam "MinVersion:\|OnlyBelowVersion:\|Languages:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
39 syn match issParam "Source:\|DestDir:\|DestName:\|CopyMode:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
40 syn match issParam "Attribs:\|Permissions:\|FontInstall:\|Flags:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
41 syn match issParam "FileName:\|Parameters:\|WorkingDir:\|HotKey:\|Comment:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
42 syn match issParam "IconFilename:\|IconIndex:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
43 syn match issParam "Section:\|Key:\|String:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
44 syn match issParam "Root:\|SubKey:\|ValueType:\|ValueName:\|ValueData:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
45 syn match issParam "RunOnceId:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
46 syn match issParam "Type:\|Excludes:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
47 syn match issParam "Components:\|Description:\|GroupDescription:\|Types:\|ExtraDiskSpaceRequired:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
48 syn match issParam "StatusMsg:\|RunOnceId:\|Tasks:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
49 syn match issParam "MessagesFile:\|LicenseFile:\|InfoBeforeFile:\|InfoAfterFile:"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
50
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
51 syn match issComment "^\s*;.*$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
52
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
53 " folder constant
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
54 syn match issFolder "{[^{]*}"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
55
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
56 " string
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
57 syn region issString start=+"+ end=+"+ contains=issFolder
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
58
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
59 " [Dirs]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
60 syn keyword issDirsFlags deleteafterinstall uninsalwaysuninstall uninsneveruninstall
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
61
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
62 " [Files]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
63 syn keyword issFilesCopyMode normal onlyifdoesntexist alwaysoverwrite alwaysskipifsameorolder dontcopy
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
64 syn keyword issFilesAttribs readonly hidden system
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
65 syn keyword issFilesPermissions full modify readexec
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
66 syn keyword issFilesFlags allowunsafefiles comparetimestampalso confirmoverwrite deleteafterinstall
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
67 syn keyword issFilesFlags dontcopy dontverifychecksum external fontisnttruetype ignoreversion
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
68 syn keyword issFilesFlags isreadme onlyifdestfileexists onlyifdoesntexist overwritereadonly
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
69 syn keyword issFilesFlags promptifolder recursesubdirs regserver regtypelib restartreplace
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
70 syn keyword issFilesFlags sharedfile skipifsourcedoesntexist sortfilesbyextension touch
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
71 syn keyword issFilesFlags uninsremovereadonly uninsrestartdelete uninsneveruninstall
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
72 syn keyword issFilesFlags replacesameversion nocompression noencryption noregerror
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
73
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
74
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
75 " [Icons]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
76 syn keyword issIconsFlags closeonexit createonlyiffileexists dontcloseonexit
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
77 syn keyword issIconsFlags runmaximized runminimized uninsneveruninstall useapppaths
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
78
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
79 " [INI]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
80 syn keyword issINIFlags createkeyifdoesntexist uninsdeleteentry uninsdeletesection uninsdeletesectionifempty
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
81
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
82 " [Registry]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
83 syn keyword issRegRootKey HKCR HKCU HKLM HKU HKCC
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
84 syn keyword issRegValueType none string expandsz multisz dword binary
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
85 syn keyword issRegFlags createvalueifdoesntexist deletekey deletevalue dontcreatekey
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
86 syn keyword issRegFlags preservestringtype noerror uninsclearvalue
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
87 syn keyword issRegFlags uninsdeletekey uninsdeletekeyifempty uninsdeletevalue
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
88
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
89 " [Run] and [UninstallRun]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
90 syn keyword issRunFlags hidewizard nowait postinstall runhidden runmaximized
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
91 syn keyword issRunFlags runminimized shellexec skipifdoesntexist skipifnotsilent
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
92 syn keyword issRunFlags skipifsilent unchecked waituntilidle
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
93
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
94 " [Types]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
95 syn keyword issTypesFlags iscustom
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
96
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
97 " [Components]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
98 syn keyword issComponentsFlags dontinheritcheck exclusive fixed restart disablenouninstallwarning
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
99
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
100 " [UninstallDelete] and [InstallDelete]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
101 syn keyword issInstallDeleteType files filesandordirs dirifempty
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
102
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
103 " [Tasks]
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
104 syn keyword issTasksFlags checkedonce dontinheritcheck exclusive restart unchecked
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
105
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
106
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
107 " Define the default highlighting.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
108 " For version 5.7 and earlier: only when not done already
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
109 " For version 5.8 and later: only when an item doesn't have highlighting yet
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
110 if version >= 508 || !exists("did_iss_syntax_inits")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
111 if version < 508
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
112 let did_iss_syntax_inits = 1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
113 command -nargs=+ HiLink hi link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
114 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
115 command -nargs=+ HiLink hi def link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
116 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
117
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
118 " The default methods for highlighting. Can be overridden later
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
119 HiLink issSection Special
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
120 HiLink issComment Comment
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
121 HiLink issDirective Type
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
122 HiLink issParam Type
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
123 HiLink issFolder Special
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
124 HiLink issString String
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
125 HiLink issURL Include
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
126 HiLink issPreProc PreProc
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
127
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
128 HiLink issDirsFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
129 HiLink issFilesCopyMode Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
130 HiLink issFilesAttribs Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
131 HiLink issFilesPermissions Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
132 HiLink issFilesFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
133 HiLink issIconsFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
134 HiLink issINIFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
135 HiLink issRegRootKey Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
136 HiLink issRegValueType Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
137 HiLink issRegFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
138 HiLink issRunFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
139 HiLink issTypesFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
140 HiLink issComponentsFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
141 HiLink issInstallDeleteType Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
142 HiLink issTasksFlags Keyword
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
143
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
144 delcommand HiLink
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
145 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
146
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
147 let b:current_syntax = "iss"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
148
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
149 " vim:ts=8