;----------------------------------------------;
;           Coder plugin syntax file           ;
;----------------------------------------------;

;Author: vadimsva
;================

;Colors
; Color need to be in #RRGGBB or #RGB format.
; If color equal to zero, then color ignored.
;
;Font styles
; 0  ignored.
; 1  normal.
; 2  bold.
; 3  italic.
; 4  bold italic.
;
;For comfort file viewing/editing set tab size to 8.


Files:
;==========
;File types
;==========
*.iss


;----------------------------------------------;
;                  HighLight                   ;
;----------------------------------------------;

;Flags (sum of the members)
;     1  case sensitive.
;     2  word is a composition of characters ("Words:" section only). Example: "0123456789" - highlight words that contain only digits.
;     4  quote end required ("Quotes:" section only).
;     8  quote start string is ignored and last meet delimiter used as quote start ("Quotes:" section only).
;    16  quote end string is ignored and first meet delimiter used as quote end ("Quotes:" section only).
;    32  don't highlight quote start ("Quotes:" section only).
;    64  don't highlight quote end ("Quotes:" section only).
;   128  don't catch and don't highlight quote start ("Quotes:" section only).
;   256  don't catch and don't highlight quote end ("Quotes:" section only).
;   512  quote start, delimiter or word located at line start.
;  1024  quote end, delimiter or word located at line end.
;  2048  quote start is surrounded with delimiters ("Quotes:" section only).
;  4096  quote end is surrounded with delimiters ("Quotes:" section only).
;  8192  quote doesn't contain delimiters ("Quotes:" section only).
; 16384  only quote start string is catched ("Quotes:" section only).
; 32768  quote doesn't contain any character ("Quotes:" section only).


Font:
;=================================================================
;FontStyle             FontSize              FaceName
;=================================================================
${HighLight_FontStyle} ${HighLight_FontSize} ${HighLight_FaceName}


Colors:
;=============================================================================================================================================================================================================================================================================================================================================================================================================================
;BasicTextColor             BasicBkColor              SelTextColor              SelBkColor              LineTextColor              LineBkColor              LineBorderColor              AltTextColor              AltBkColor              AltBorderColor              ColumnColor              MarkerColor              CaretColor              UrlColor              ActiveUrlColor              VisitUrlColor
;=============================================================================================================================================================================================================================================================================================================================================================================================================================
${HighLight_BasicTextColor} ${HighLight_BasicBkColor} ${HighLight_SelTextColor} ${HighLight_SelBkColor} ${HighLight_LineTextColor} ${HighLight_LineBkColor} ${HighLight_LineBorderColor} ${HighLight_AltTextColor} ${HighLight_AltBkColor} ${HighLight_AltBorderColor} ${HighLight_ColumnColor} ${HighLight_MarkerColor} ${HighLight_CaretColor} ${HighLight_UrlColor} ${HighLight_ActiveUrlColor} ${HighLight_VisitUrlColor}


BkImage:
;==================================================
;BkImageFile              BkImageAlpha
;==================================================
${HighLight_BkImageFile}  ${HighLight_BkImageAlpha}


AutoMark:
;====================================================================================================================
;AutoMarkFlags             AutoMarkFontStyle              AutoMarkTextColor              AutoMarkBkColor
;====================================================================================================================
${HighLight_AutoMarkFlags} ${HighLight_AutoMarkFontStyle} ${HighLight_AutoMarkTextColor} ${HighLight_AutoMarkBkColor}


Quotes:
;===========================================================================================
;Flags  Font    Color   Color   Quote           Quote   Escape  Quote   Quote   Parent  Rule
;       style   text    bkgrnd  start           end     char    include exclude ID      ID
;===========================================================================================
;5=1+4
5	3	${STR}	0	'"'             '"'	""	""	""	0	0
;5=1+4
5	3	${STR}	0	"'"             "'"	""	""	""	0	0
;513=1+512
513	3	${COMM}	0	";"             ""	""	""	""	0	0
;513=1+512
513	3	${COMM}	0	"//"            ""	":"	""	""	0	0
;529=1+16+512
529	3	${AREA}	0	"#"             ""	""	""	""	0	0
;517=1+4+512
517	3	${COMM}	0	"{"             "}"	""	""	""	0	0
;5=1+4
5	0	${VAR}	0	"{"             "}"	""	""	""	0	0
;517=1+4+512
517	3	${COMM}	0	"(*"            "*)"	""	""	""	0	0
;517=1+4+512
517	2	0	0	"["             "]"	""	""	""	0	0
;400=16+128+256
400	2	0	0	"procedure "    ""	""	""	""	0	0
;400=16+128+256
400	2	0	0	"function "     ""	""	""	""	0	0


QuotesRE:
;===========================================================================================
;Flags  Pattern         \BackRef=(FontStyle,ColorText,ColorBk) \BackRef=...  ParentID RuleID
;===========================================================================================


Delimiters:
;===============================================
;Flags  Font    Color   Color   Char(s)   Parent
;       style   text    bkgrnd            ID
;===============================================
1	0	0	0	" "
1	0	0	0	"	"
1	0	${DEL1}	0	(
1	0	${DEL1}	0	)
1	0	${DEL2}	0	[
1	0	${DEL2}	0	]
1	0	${DEL2}	0	:
1	0	${DEL2}	0	=
1	0	${DEL2}	0	.
1	0	${DEL2}	0	,
1	0	${DEL2}	0	;


Words:
;===========================================
;Flags  Font    Color   Color   Word  Parent
;       style   text    bkgrnd        ID
;===========================================
0	0	${OP}	0	Name
0	0	${OP}	0	Description
0	0	${OP}	0	Flags
0	0	${OP}	0	Types
0	0	${OP}	0	Components
0	0	${OP}	0	Attribs
0	0	${OP}	0	DestDir
0	0	${OP}	0	DestName
0	0	${OP}	0	Source
0	0	${OP}	0	Languages
0	0	${OP}	0	Root
0	0	${OP}	0	Filename
0	0	${OP}	0	IconFilename
0	0	${OP}	0	IconIndex
0	0	${OP}	0	GroupDescription
0	0	${OP}	0	MessagesFile
0	0	${OP}	0	Subkey
0	0	${OP}	0	ValueType
0	0	${OP}	0	ValueData
0	0	${OP}	0	ValueName
0	0	${OP}	0	procedure
0	0	${OP}	0	function
0	0	${OP}	0	and
0	0	${OP}	0	not
0	0	${OP}	0	is
0	0	${OP}	0	in
0	0	${OP}	0	var
0	0	${OP}	0	constructor
0	0	${OP}	0	class
0	0	${OP}	0	Index
0	0	${OP}	0	property
0	0	${OP}	0	Pascal
0	0	${OP}	0	Library
0	0	${OP}	0	to
0	0	${OP}	0	const
0	0	${OP}	0	set of
0	0	${OP}	0	Default
0	0	${OP}	0	external
0	0	${OP}	0	ExternalSize
0	0	${OP}	0	Permissions
0	0	${OP}	0	FontInstall
0	0	${OP}	0	HotKey
0	0	${OP}	0	Parameters
0	0	${OP}	0	WorkingDir
0	0	${OP}	0	Comment
0	0	${OP}	0	AppUserModelID
0	0	${OP}	0	Section
0	0	${OP}	0	Key
0	0	${OP}	0	String
0	0	${OP}	0	StatusMsg
0	0	${OP}	0	RunOnceId
0	0	${OP}	0	Verb
0	0	${OP}	0	Type
0	0	${OP}	0	Compression
0	0	${OP}	0	CompressionThreads
0	0	${OP}	0	DiskClusterSize
0	0	${OP}	0	DiskSliceSize
0	0	${OP}	0	DiskSpanning
0	0	${OP}	0	Encryption
0	0	${OP}	0	InternalCompressLevel
0	0	${OP}	0	MergeDuplicateFiles
0	0	${OP}	0	OutputBaseFilename
0	0	${OP}	0	OutputDir
0	0	${OP}	0	OutputManifestFile
0	0	${OP}	0	ReserveBytes
0	0	${OP}	0	SignedUninstaller
0	0	${OP}	0	SignedUninstallerDir
0	0	${OP}	0	SignTool
0	0	${OP}	0	SlicesPerDisk
0	0	${OP}	0	SolidCompression
0	0	${OP}	0	SourceDir
0	0	${OP}	0	TerminalServicesAware
0	0	${OP}	0	UseSetupLdr
0	0	${OP}	0	VersionInfoCompany
0	0	${OP}	0	VersionInfoCopyright
0	0	${OP}	0	VersionInfoDescription
0	0	${OP}	0	VersionInfoProductName
0	0	${OP}	0	VersionInfoProductTextVersion
0	0	${OP}	0	VersionInfoProductVersion
0	0	${OP}	0	VersionInfoTextVersion
0	0	${OP}	0	VersionInfoVersion
0	0	${OP}	0	AllowCancelDuringInstall
0	0	${OP}	0	AllowNoIcons
0	0	${OP}	0	AllowRootDirectory
0	0	${OP}	0	AllowUNCPath
0	0	${OP}	0	AlwaysRestart
0	0	${OP}	0	AlwaysShowComponentsList
0	0	${OP}	0	AlwaysShowDirOnReadyPage
0	0	${OP}	0	AlwaysShowGroupOnReadyPage
0	0	${OP}	0	AlwaysUsePersonalGroup
0	0	${OP}	0	AppendDefaultDirName
0	0	${OP}	0	AppendDefaultGroupName
0	0	${OP}	0	AppComments
0	0	${OP}	0	AppContact
0	0	${OP}	0	AppId
0	0	${OP}	0	AppModifyPath
0	0	${OP}	0	AppMutex
0	0	${OP}	0	AppName
0	0	${OP}	0	AppPublisher
0	0	${OP}	0	AppPublisherURL
0	0	${OP}	0	AppReadmeFile
0	0	${OP}	0	AppSupportPhone
0	0	${OP}	0	AppSupportURL
0	0	${OP}	0	AppUpdatesURL
0	0	${OP}	0	AppVersion
0	0	${OP}	0	AppVerName
0	0	${OP}	0	ArchitecturesAllowed
0	0	${OP}	0	ArchitecturesInstallIn64BitMode
0	0	${OP}	0	ChangesAssociations
0	0	${OP}	0	ChangesEnvironment
0	0	${OP}	0	CreateAppDir
0	0	${OP}	0	CreateUninstallRegKey
0	0	${OP}	0	DefaultDirName
0	0	${OP}	0	DefaultGroupName
0	0	${OP}	0	DefaultUserInfoName
0	0	${OP}	0	DefaultUserInfoOrg
0	0	${OP}	0	DefaultUserInfoSerial
0	0	${OP}	0	DirExistsWarning
0	0	${OP}	0	DisableDirPage
0	0	${OP}	0	DisableFinishedPage
0	0	${OP}	0	DisableProgramGroupPage
0	0	${OP}	0	DisableReadyMemo
0	0	${OP}	0	DisableReadyPage
0	0	${OP}	0	DisableStartupPrompt
0	0	${OP}	0	EnableDirDoesntExistWarning
0	0	${OP}	0	ExtraDiskSpaceRequired
0	0	${OP}	0	InfoAfterFile
0	0	${OP}	0	InfoBeforeFile
0	0	${OP}	0	LanguageDetectionMethod
0	0	${OP}	0	LicenseFile
0	0	${OP}	0	MinVersion
0	0	${OP}	0	OnlyBelowVersion
0	0	${OP}	0	Password
0	0	${OP}	0	PrivilegesRequired
0	0	${OP}	0	RestartIfNeededByRun
0	0	${OP}	0	SetupLogging
0	0	${OP}	0	ShowLanguageDialog
0	0	${OP}	0	ShowUndisplayableLanguages
0	0	${OP}	0	TimeStampRounding
0	0	${OP}	0	TimeStampsInUTC
0	0	${OP}	0	TouchDate
0	0	${OP}	0	TouchTime
0	0	${OP}	0	Uninstallable
0	0	${OP}	0	UninstallDisplayIcon
0	0	${OP}	0	UninstallDisplayName
0	0	${OP}	0	UninstallFilesDir
0	0	${OP}	0	UninstallLogMode
0	0	${OP}	0	UninstallRestartComputer
0	0	${OP}	0	UpdateUninstallLogAppName
0	0	${OP}	0	UsePreviousAppDir
0	0	${OP}	0	UsePreviousGroup
0	0	${OP}	0	UsePreviousSetupType
0	0	${OP}	0	UsePreviousTasks
0	0	${OP}	0	UsePreviousUserInfo
0	0	${OP}	0	UserInfoPage
0	0	${OP}	0	AppCopyright
0	0	${OP}	0	BackColor
0	0	${OP}	0	BackColor2
0	0	${OP}	0	BackColorDirection
0	0	${OP}	0	BackSolid
0	0	${OP}	0	FlatComponentsList
0	0	${OP}	0	SetupIconFile
0	0	${OP}	0	ShowComponentSizes
0	0	${OP}	0	ShowTasksTreeLines
0	0	${OP}	0	WindowShowCaption
0	0	${OP}	0	WindowStartMaximized
0	0	${OP}	0	WindowResizable
0	0	${OP}	0	WindowVisible
0	0	${OP}	0	WizardImageBackColor
0	0	${OP}	0	WizardImageFile
0	0	${OP}	0	WizardImageStretch
0	0	${OP}	0	WizardSmallImageFile
0	0	${OP}	0	AlwaysCreateUninstallIcon
0	0	${OP}	0	DisableAppendDir
0	0	${OP}	0	DontMergeDuplicateFiles
0	0	${OP}	0	MessagesFile
0	0	${OP}	0	UninstallIconFile
0	0	${OP}	0	UninstallIconName
0	0	${OP}	0	UninstallStyle
0	0	${OP}	0	WizardSmallImageBackColor
0	0	${OP}	0	WizardStyle
;--Conditional--
0	0	${IF}	0	Begin
0	0	${IF}	0	If
0	0	${IF}	0	Then
0	0	${IF}	0	End
0	0	${IF}	0	Array
0	0	${IF}	0	Break
0	0	${IF}	0	Case
0	0	${IF}	0	Do
0	0	${IF}	0	Downto
0	0	${IF}	0	Else
0	0	${IF}	0	Except
0	0	${IF}	0	Exit
0	0	${IF}	0	Finally
0	0	${IF}	0	For
0	0	${IF}	0	Goto
0	0	${IF}	0	If
0	0	${IF}	0	In
0	0	${IF}	0	Of
0	0	${IF}	0	On
0	0	${IF}	0	Repeat
0	0	${IF}	0	Then
0	0	${IF}	0	To
0	0	${IF}	0	Try
0	0	${IF}	0	Until
0	0	${IF}	0	While
0	0	${IF}	0	With


;----------------------------------------------;
;                   CodeFold                   ;
;----------------------------------------------;

;Flags (sum of the members)
;       1  case sensitive.
;       2  force get fold name for function list from left at the fold start ("Folds:" section only).
;       4  force get fold name for function list from right at the fold start, including fold start ("Folds:" section only).
;       8  fold start ("Folds:" section) or skip start ("Skips:" section) located at line start.
;      16  fold start ("Folds:" section) or skip start ("Skips:" section) located at line end.
;      32  fold end ("Folds:" section) or skip end ("Skips:" section) located at line start.
;      64  fold end ("Folds:" section) or skip end ("Skips:" section) located at line end.
;     128  don't catch fold end ("Folds:" section) or skip end ("Skips:" section).
;     256  additional to 128 flag - more priority is given to sibling level instead of parent level ("Folds:" section only).
;     512  comment fold - fold ignore any other folds and skips inside ("Folds:" section only).
;    1024  reserved.
;    2048  deny fold - founded fold will be ignored ("Folds:" section only).
;    4096  xml fold - "<tag" and "</tag>", "<single" and "/>", "<single" and ">" ("Folds:" section only).
;    8192  don't check delimiters from left of fold start ("Folds:" section only).
;   16384  don't check delimiters from right of fold start ("Folds:" section only).
;   32768  don't check delimiters from left of fold end ("Folds:" section only).
;   65536  don't check delimiters from right of fold end ("Folds:" section only).
;  131072  deny delimiters ("Folds:" section only).
;  262144  don't show fold in list ("Folds:" section only).
; 1048576  regular expression in fold start ("Folds:" section) or skip start ("Skips:" section).
; 2097152  regular expression in fold end ("Folds:" section) or skip end ("Skips:" section). Backreference \101 matches \1 in fold start, \102 matches \2 and so on.


FoldPanel:
;=================================================================================================================================================================================================================================================================================================================================================================================================================================================================
;PanelFirstBkColor            PanelSecondBkColor             PanelNormalFoldColor             PanelActiveFoldColor             PanelNormalNodeOpenBkColor             PanelNormalNodeCloseBkColor             PanelActiveNodeOpenBkColor             PanelActiveNodeCloseBkColor             PanelNormalNodeOpenSignColor             PanelNormalNodeCloseSignColor             PanelActiveNodeOpenSignColor             PanelActiveNodeCloseSignColor
;=================================================================================================================================================================================================================================================================================================================================================================================================================================================================
${CodeFold_PanelFirstBkColor} ${CodeFold_PanelSecondBkColor} ${CodeFold_PanelNormalFoldColor} ${CodeFold_PanelActiveFoldColor} ${CodeFold_PanelNormalNodeOpenBkColor} ${CodeFold_PanelNormalNodeCloseBkColor} ${CodeFold_PanelActiveNodeOpenBkColor} ${CodeFold_PanelActiveNodeCloseBkColor} ${CodeFold_PanelNormalNodeOpenSignColor} ${CodeFold_PanelNormalNodeCloseSignColor} ${CodeFold_PanelActiveNodeOpenSignColor} ${CodeFold_PanelActiveNodeCloseSignColor}


FoldList:
;================================================
;ListTextColor            ListBkColor
;================================================
${CodeFold_ListTextColor} ${CodeFold_ListBkColor}


TagMark:
;============================================================================================================
;TagMarkFlags            TagMarkFontStyle             TagMarkTextColor             TagMarkBkColor
;============================================================================================================
${CodeFold_TagMarkFlags} ${CodeFold_TagMarkFontStyle} ${CodeFold_TagMarkTextColor} ${CodeFold_TagMarkBkColor}


Skips:
;=============================
;Flags  Skip    Skip    Escape
;       start   end     char
;=============================
1	`"`	`"`	"\"
1	"//"	""	":"


Folds:
;===========================================================================================
;Flags  Font    Color   Color   Fold              Fold    Deli          Parent  Rule    Rule
;       style   text    bkgrnd  start             end     miters        ID      ID      file
;===========================================================================================
;173=1+4+8+32+128
173	0	0	0	"["               "["     ""            0	0
;521=1+8+512
521	3	${COMM}	0	"{"               "}"     ""            0	0
;513=1+512
513	3	${COMM}	0	"(*"              "*)"    ""            0	0
2	0	0	0	"begin"           "end"   " 	;.}"    0	0
2	0	0	0	"case"            "end"   " 	;.}"    0	0
2	0	0	0	"implementation"  "end"   " 	;.}"    0	0


;----------------------------------------------;
;                 AutoComplete                 ;
;----------------------------------------------;

;Flags (sum of the members)
;  1  force case sensitive.
;  2  force case insensitive.
;  4  regular expression (only for "$="). Scan starts from caret line beginning and metacharacters \a or \z specified caret position.
;  8  Don't show in listbox.


CompleteList:
;=====================================================================================================================================================================================================================================================================================================================================================================================================================================================================
;ListFontStyle                ListFontSize                 ListFaceName                 ListLineGap                 ListBlockIcon `"C:\1.dll", 0` ListBlockIconMargins "left;right"    ListHlBaseIcon `"C:\1.dll", 0` ListHlBaseIconMargins "left;right"    ListDocWordIcon `"C:\1.dll", 0` ListDocWordIconMargins "left;right"    ListBasicTextColor                 ListBasicBkColor                 ListSelTextColor                 ListSelBkColor
;=====================================================================================================================================================================================================================================================================================================================================================================================================================================================================
${AutoComplete_ListFontStyle} ${AutoComplete_ListFontSize} ${AutoComplete_ListFaceName} ${AutoComplete_ListLineGap} ${AutoComplete_ListBlockIcon} ${AutoComplete_ListBlockIconMargins} ${AutoComplete_ListHlBaseIcon} ${AutoComplete_ListHlBaseIconMargins} ${AutoComplete_ListDocWordIcon} ${AutoComplete_ListDocWordIconMargins} ${AutoComplete_ListBasicTextColor} ${AutoComplete_ListBasicBkColor} ${AutoComplete_ListSelTextColor} ${AutoComplete_ListSelBkColor}


Blocks:
;=============================================================================
;Abbreviations and blocks
;
; $~abbr         normal abbreviation.
; $(flags)~abbr  normal abbreviation with flags.
; $=abbr         exact abbreviation. May contain delimiters.
; $(flags)=abbr  exact abbreviation with flags. May contain delimiters.
; $[]            set caret to this position. Can be multiple (hot spots).
; $[text]        select text. Can be multiple (hot spots).
; $$             symbol $.
; $\]            escape symbol ]. Can be used in $[text] block: $[One [1$\] ].
; ${VAR}         variable assigned from Coder::Settings.
; $;             comment line.
;=============================================================================
$~if
if $[] then
begin
${AutoComplete_Indent}$[]
end;

$~while
while $[] do
begin
${AutoComplete_Indent}$[]
end;

$~for
for $[] to $[] do
begin
${AutoComplete_Indent}$[]
end;

$~with
with $[] do
begin
${AutoComplete_Indent}$[]
end;

$~repeat
repeat
${AutoComplete_Indent}$[]
until $[];

$~case
case $[] of
${AutoComplete_Indent}$[]
end;

$~procedure
procedure $[];
begin
${AutoComplete_Indent}$[]
end;

$~function
function $[];
begin
${AutoComplete_Indent}$[]
end;
