changeset 32766:c42a15deee64

Update iss syntax file (#11890) Commit: https://github.com/vim/vim/commit/f9c4c2f97db94f513b86d86b86bf981060c7c8bf Author: ObserverOfTime <chronobserver@disroot.org> Date: Sun Aug 13 11:25:41 2023 +0300 Update iss syntax file (https://github.com/vim/vim/issues/11890) - Add 'ExternalSize:' parameter - Add 'setntfscompression' files flag - Fix escaped left brace highlight - Fix 'String:' parameter highlight - Remove trailing whitespace
author Christian Brabandt <cb@256bit.org>
date Sun, 13 Aug 2023 10:30:08 +0200
parents 356fc176b619
children c79fc3d7410c
files runtime/syntax/iss.vim
diffstat 1 files changed, 29 insertions(+), 27 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/syntax/iss.vim
+++ b/runtime/syntax/iss.vim
@@ -2,10 +2,9 @@
 " 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:          2021 Aug 30
+" Last Change:          2023 Jan 26
 "
 " Todo:
-"  - The parameter String: is matched as flag string (because of case ignore).
 "  - Pascal scripting syntax is not recognized.
 "  - Embedded double quotes confuse string matches. e.g. "asfd""asfa"
 
@@ -17,6 +16,9 @@ endif
 " shut case off
 syn case ignore
 
+" match keywords with colon
+syn iskeyword @,48-57,_,192-255,:
+
 " Preprocessor
 syn region issPreProc start="^\s*#" end="$"
 
@@ -30,25 +32,25 @@ syn match  issDirective	"^[^=]\+="
 syn match  issURL	"http[s]\=:\/\/.*$"
 
 " Parameters used for any section.
-" syn match  issParam"[^: ]\+:"
-syn match  issParam	"Name:"
-syn match  issParam	"MinVersion:\|OnlyBelowVersion:\|Languages:"
-syn match  issParam	"Source:\|DestDir:\|DestName:\|CopyMode:"
-syn match  issParam	"Attribs:\|Permissions:\|FontInstall:\|Flags:"
-syn match  issParam	"FileName:\|Parameters:\|WorkingDir:\|HotKey:\|Comment:"
-syn match  issParam	"IconFilename:\|IconIndex:"
-syn match  issParam	"Section:\|Key:\|String:"
-syn match  issParam	"Root:\|SubKey:\|ValueType:\|ValueName:\|ValueData:"
-syn match  issParam	"RunOnceId:"
-syn match  issParam	"Type:\|Excludes:"
-syn match  issParam	"Components:\|Description:\|GroupDescription:\|Types:\|ExtraDiskSpaceRequired:"
-syn match  issParam	"StatusMsg:\|RunOnceId:\|Tasks:"
-syn match  issParam	"MessagesFile:\|LicenseFile:\|InfoBeforeFile:\|InfoAfterFile:"
+" 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	"{[^{]*}" contains=@NoSpell
+syn match  issFolder	"{\@1<!{[^{]*}" contains=@NoSpell
 
 " string
 syn region issString	start=+"+ end=+"+ contains=issFolder,@Spell
@@ -61,16 +63,16 @@ syn keyword issFilesCopyMode normal only
 syn keyword issFilesAttribs readonly hidden system
 syn keyword issFilesPermissions full modify readexec
 syn keyword issFilesFlags allowunsafefiles comparetimestampalso confirmoverwrite deleteafterinstall
-syn keyword issFilesFlags dontcopy dontverifychecksum external fontisnttruetype ignoreversion 
-syn keyword issFilesFlags isreadme onlyifdestfileexists onlyifdoesntexist overwritereadonly 
+syn keyword issFilesFlags dontcopy dontverifychecksum external fontisnttruetype ignoreversion
+syn keyword issFilesFlags isreadme onlyifdestfileexists onlyifdoesntexist overwritereadonly
 syn keyword issFilesFlags promptifolder recursesubdirs regserver regtypelib restartreplace
-syn keyword issFilesFlags sharedfile skipifsourcedoesntexist sortfilesbyextension touch 
+syn keyword issFilesFlags sharedfile skipifsourcedoesntexist sortfilesbyextension touch
 syn keyword issFilesFlags uninsremovereadonly uninsrestartdelete uninsneveruninstall
-syn keyword issFilesFlags replacesameversion nocompression noencryption noregerror
+syn keyword issFilesFlags replacesameversion setntfscompression nocompression noencryption noregerror
 
 
 " [Icons]
-syn keyword issIconsFlags closeonexit createonlyiffileexists dontcloseonexit 
+syn keyword issIconsFlags closeonexit createonlyiffileexists dontcloseonexit
 syn keyword issIconsFlags runmaximized runminimized uninsneveruninstall useapppaths
 
 " [INI]
@@ -79,13 +81,13 @@ syn keyword issINIFlags createkeyifdoesn
 " [Registry]
 syn keyword issRegRootKey   HKCR HKCU HKLM HKU HKCC
 syn keyword issRegValueType none string expandsz multisz dword binary
-syn keyword issRegFlags createvalueifdoesntexist deletekey deletevalue dontcreatekey 
-syn keyword issRegFlags preservestringtype noerror uninsclearvalue 
+syn keyword issRegFlags createvalueifdoesntexist deletekey deletevalue dontcreatekey
+syn keyword issRegFlags preservestringtype noerror uninsclearvalue
 syn keyword issRegFlags uninsdeletekey uninsdeletekeyifempty uninsdeletevalue
 
 " [Run] and [UninstallRun]
 syn keyword issRunFlags hidewizard nowait postinstall runhidden runmaximized
-syn keyword issRunFlags runminimized shellexec skipifdoesntexist skipifnotsilent 
+syn keyword issRunFlags runminimized shellexec skipifdoesntexist skipifnotsilent
 syn keyword issRunFlags skipifsilent unchecked waituntilidle
 
 " [Types]
@@ -98,7 +100,7 @@ syn keyword issComponentsFlags dontinher
 syn keyword issInstallDeleteType files filesandordirs dirifempty
 
 " [Tasks]
-syn keyword issTasksFlags checkedonce dontinheritcheck exclusive restart unchecked 
+syn keyword issTasksFlags checkedonce dontinheritcheck exclusive restart unchecked
 
 
 " Define the default highlighting.
@@ -112,7 +114,7 @@ hi def link issParam	Type
 hi def link issFolder	Special
 hi def link issString	String
 hi def link issURL	Include
-hi def link issPreProc	PreProc 
+hi def link issPreProc	PreProc
 
 hi def link issDirsFlags		Keyword
 hi def link issFilesCopyMode	Keyword