codekingpro/portable-devtools
114k
1" Vim syntax file2" Language: Inno Setup File (iss file) and My InnoSetup extension3" Maintainer: Jason Mills (jmills@cs.mun.ca)4" Previous Maintainer: Dominique Stéphan (dominique@mggen.com)5" Last Change: 2023 Jan 266"7" Todo:8" - Pascal scripting syntax is not recognized.9" - Embedded double quotes confuse string matches. e.g. "asfd""asfa"10 11" quit when a syntax file was already loaded12if exists("b:current_syntax")13 finish14endif15 16" shut case off17syn case ignore18 19" match keywords with colon20syn iskeyword @,48-57,_,192-255,:21 22" Preprocessor23syn region issPreProc start="^\s*#" end="$"24 25" Section26syn region issSection start="\[" end="\]"27 28" Label in the [Setup] Section29syn match issDirective "^[^=]\+="30 31" URL32syn match issURL "http[s]\=:\/\/.*$"33 34" Parameters used for any section.35" syn match issParam "[^: ]\+:"36syn keyword issParam Name:37syn keyword issParam MinVersion: OnlyBelowVersion: Languages:38syn keyword issParam Source: DestDir: DestName: CopyMode: ExternalSize:39syn keyword issParam Attribs: Permissions: FontInstall: Flags:40syn keyword issParam FileName: Parameters: WorkingDir: HotKey: Comment:41syn keyword issParam IconFilename: IconIndex:42syn keyword issParam Section: Key: String:43syn keyword issParam Root: SubKey: ValueType: ValueName: ValueData:44syn keyword issParam RunOnceId:45syn keyword issParam Type: Excludes:46syn keyword issParam Components: Description: GroupDescription: Types: ExtraDiskSpaceRequired:47syn keyword issParam StatusMsg: RunOnceId: Tasks:48syn keyword issParam MessagesFile: LicenseFile: InfoBeforeFile: InfoAfterFile:49 50syn match issComment "^\s*;.*$" contains=@Spell51 52" folder constant53syn match issFolder "{\@1<!{[^{]*}" contains=@NoSpell54 55" string56syn region issString start=+"+ end=+"+ contains=issFolder,@Spell57 58" [Dirs]59syn keyword issDirsFlags deleteafterinstall uninsalwaysuninstall uninsneveruninstall60 61" [Files]62syn keyword issFilesCopyMode normal onlyifdoesntexist alwaysoverwrite alwaysskipifsameorolder dontcopy63syn keyword issFilesAttribs readonly hidden system64syn keyword issFilesPermissions full modify readexec65syn keyword issFilesFlags allowunsafefiles comparetimestampalso confirmoverwrite deleteafterinstall66syn keyword issFilesFlags dontcopy dontverifychecksum external fontisnttruetype ignoreversion67syn keyword issFilesFlags isreadme onlyifdestfileexists onlyifdoesntexist overwritereadonly68syn keyword issFilesFlags promptifolder recursesubdirs regserver regtypelib restartreplace69syn keyword issFilesFlags sharedfile skipifsourcedoesntexist sortfilesbyextension touch70syn keyword issFilesFlags uninsremovereadonly uninsrestartdelete uninsneveruninstall71syn keyword issFilesFlags replacesameversion setntfscompression nocompression noencryption noregerror72 73 74" [Icons]75syn keyword issIconsFlags closeonexit createonlyiffileexists dontcloseonexit76syn keyword issIconsFlags runmaximized runminimized uninsneveruninstall useapppaths77 78" [INI]79syn keyword issINIFlags createkeyifdoesntexist uninsdeleteentry uninsdeletesection uninsdeletesectionifempty80 81" [Registry]82syn keyword issRegRootKey HKCR HKCU HKLM HKU HKCC83syn keyword issRegValueType none string expandsz multisz dword binary84syn keyword issRegFlags createvalueifdoesntexist deletekey deletevalue dontcreatekey85syn keyword issRegFlags preservestringtype noerror uninsclearvalue86syn keyword issRegFlags uninsdeletekey uninsdeletekeyifempty uninsdeletevalue87 88" [Run] and [UninstallRun]89syn keyword issRunFlags hidewizard nowait postinstall runhidden runmaximized90syn keyword issRunFlags runminimized shellexec skipifdoesntexist skipifnotsilent91syn keyword issRunFlags skipifsilent unchecked waituntilidle92 93" [Types]94syn keyword issTypesFlags iscustom95 96" [Components]97syn keyword issComponentsFlags dontinheritcheck exclusive fixed restart disablenouninstallwarning98 99" [UninstallDelete] and [InstallDelete]100syn keyword issInstallDeleteType files filesandordirs dirifempty101 102" [Tasks]103syn keyword issTasksFlags checkedonce dontinheritcheck exclusive restart unchecked104 105 106" Define the default highlighting.107" Only when an item doesn't have highlighting yet108 109" The default methods for highlighting. Can be overridden later110hi def link issSection Special111hi def link issComment Comment112hi def link issDirective Type113hi def link issParam Type114hi def link issFolder Special115hi def link issString String116hi def link issURL Include117hi def link issPreProc PreProc118 119hi def link issDirsFlags Keyword120hi def link issFilesCopyMode Keyword121hi def link issFilesAttribs Keyword122hi def link issFilesPermissions Keyword123hi def link issFilesFlags Keyword124hi def link issIconsFlags Keyword125hi def link issINIFlags Keyword126hi def link issRegRootKey Keyword127hi def link issRegValueType Keyword128hi def link issRegFlags Keyword129hi def link issRunFlags Keyword130hi def link issTypesFlags Keyword131hi def link issComponentsFlags Keyword132hi def link issInstallDeleteType Keyword133hi def link issTasksFlags Keyword134 135 136let b:current_syntax = "iss"137 138" vim:ts=8139 