" Vim syntax file " Language: Inno Setup File (iss file) and My InnoSetup extension " Maintainer: Jason Mills (jmills@cs.mun.ca) " Previous Maintainer: Dominique Stéphan (dominique@mggen.com) " Last Change: 2023 Jan 26 " " Todo: " - Pascal scripting syntax is not recognized. " - Embedded double quotes confuse string matches. e.g. "asfd""asfa" " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " shut case off syn case ignore " match keywords with colon syn iskeyword @,48-57,_,192-255,: " Preprocessor syn region issPreProc start="^\s*#" end="$" " Section syn region issSection start="\[" end="\]" " Label in the [Setup] Section syn match issDirective "^[^=]\+=" " URL syn match issURL "http[s]\=:\/\/.*$" " Parameters used for any section. " syn match issParam "[^: ]\+:" syn keyword issParam Name: syn keyword issParam MinVersion: OnlyBelowVersion: Languages: syn keyword issParam Source: DestDir: DestName: CopyMode: ExternalSize: syn keyword issParam Attribs: Permissions: FontInstall: Flags: syn keyword issParam FileName: Parameters: WorkingDir: HotKey: Comment: syn keyword issParam IconFilename: IconIndex: syn keyword issParam Section: Key: String: syn keyword issParam Root: SubKey: ValueType: ValueName: ValueData: syn keyword issParam RunOnceId: syn keyword issParam Type: Excludes: syn keyword issParam Components: Description: GroupDescription: Types: ExtraDiskSpaceRequired: syn keyword issParam StatusMsg: RunOnceId: Tasks: syn keyword issParam MessagesFile: LicenseFile: InfoBeforeFile: InfoAfterFile: syn match issComment "^\s*;.*$" contains=@Spell " folder constant syn match issFolder "{\@1