;----------------------------------------------;
;       Синтаксический файл Coder плагина       ;
;----------------------------------------------;

;Author: Bob wei
;===============

;Цвета
; Цвета должны быть представлены в формате #RRGGBB.
; Если цвет равен нулю, то цвет игнорируется.
;
;Стили шрифта
; 0  игнорировать.
; 1  обычный.
; 2  жирный.
; 3  курсив.
; 4  жирный курсив.
;
;Для комфортного просмотра/редактирования файла установите размер табуляции 8.


Files:
;===========
;Типы файлов
;===========
*.cs
*.csx


;----------------------------------------------;
;                  HighLight - Подсветка                   ;
;----------------------------------------------;

;Флаги (сумма членов)
;     1  учитывать регистр.
;     2  словом является любая комбинация указанных символов (только для секции "Words:"). Пример: "0123456789" - подсвечивать числа.
;     4  нахождение конца диапазона обязательно (только для секции "Quotes:").
;     8  параметр начала диапазона игнорируется и последний встретившийся разделитель используется как начало диапазона (только для секции "Quotes:").
;    16  параметр конца диапазона игнорируется и первый встретившийся разделитель используется как конец диапазона (только для секции "Quotes:").
;    32  не подсвечивать начало диапазона (только для секции "Quotes:").
;    64  не подсвечивать конец диапазона (только для секции "Quotes:").
;   128  не захватывать и не подсвечивать начало диапазона (только для секции "Quotes:").
;   256  не захватывать и не подсвечивать конец диапазона (только для секции "Quotes:").
;   512  начало диапазона, разделителя или слова находится в начале строки.
;  1024  конец диапазона, разделителя или слова находится в конце строки.
;  2048  начало диапазона находится между разделителями (только для секции "Quotes:").
;  4096  конец диапазона находится между разделителями (только для секции "Quotes:").
;  8192  диапазон не содержит разделителей (только для секции "Quotes:").
; 16384  захватывать только начало диапазона (только для секции "Quotes:").
; 32768  диапазон не содержит каких-либо символов (только для секции "Quotes:").


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
;1=1
1	3	${COMM}	0	"//"	""	":"	""	""	0	0
;5=1+4
5	3	${COMM}	0	"/*"	"*/"	""	""	""	0	0
;529=1+16+512
529	3	${AREA}	0	"#"	""	""	""	""	0	0


QuotesRE:
;=================================================================================================
;Flags  Pattern               \BackRef=(FontStyle,ColorText,ColorBk) \BackRef=...  ParentID RuleID
;=================================================================================================
1	`@"[^"]*(""[^"]*)*"`  `\0=(3,${STR},0)`                                    0        0


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	.
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	=
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
;===========================================
2	0	${NUM}	0	0123456789
;--Types--
1	0	${TYPE}	0	bool
1	0	${TYPE}	0	byte
1	0	${TYPE}	0	char
1	0	${TYPE}	0	decimal
1	0	${TYPE}	0	double
1	0	${TYPE}	0	float
1	0	${TYPE}	0	uint
1	0	${TYPE}	0	int
1	0	${TYPE}	0	ulong
1	0	${TYPE}	0	long
1	0	${TYPE}	0	object
1	0	${TYPE}	0	sbyte
1	0	${TYPE}	0	short
1	0	${TYPE}	0	ushort
1	0	${TYPE}	0	string
1	0	${TYPE}	0	void
;--Keywords--
1	0	${OP}	0	abstract
1	0	${OP}	0	as
1	0	${OP}	0	base
1	0	${OP}	0	checked
1	0	${OP}	0	class
1	0	${OP}	0	const
1	0	${OP}	0	default
1	0	${OP}	0	delegate
1	0	${OP}	0	enum
1	0	${OP}	0	event
1	0	${OP}	0	explicit
1	0	${OP}	0	extern
1	0	${OP}	0	false
1	0	${OP}	0	fixed
1	0	${OP}	0	implicit
1	0	${OP}	0	in
1	0	${OP}	0	interface
1	0	${OP}	0	internal
1	0	${OP}	0	is
1	0	${OP}	0	lock
1	0	${OP}	0	namespace
1	0	${OP}	0	new
1	0	${OP}	0	null
1	0	${OP}	0	operator
1	0	${OP}	0	out
1	0	${OP}	0	override
1	0	${OP}	0	params
1	0	${OP}	0	private
1	0	${OP}	0	protected
1	0	${OP}	0	public
1	0	${OP}	0	readonly
1	0	${OP}	0	ref
1	0	${OP}	0	sealed
1	0	${OP}	0	sizeof
1	0	${OP}	0	stackalloc
1	0	${OP}	0	static
1	0	${OP}	0	struct
1	0	${OP}	0	this
1	0	${OP}	0	true
1	0	${OP}	0	typeof
1	0	${OP}	0	unchecked
1	0	${OP}	0	unsafe
1	0	${OP}	0	using
1	0	${OP}	0	virtual
1	0	${OP}	0	volatile
;--Contextual Keywords--
1	0	${OP}	0	from
1	0	${OP}	0	get
1	0	${OP}	0	group
1	0	${OP}	0	into
1	0	${OP}	0	join
1	0	${OP}	0	let
1	0	${OP}	0	orderby
1	0	${OP}	0	partial
1	0	${OP}	0	select
1	0	${OP}	0	set
1	0	${OP}	0	value
1	0	${OP}	0	var
1	0	${OP}	0	where
1	0	${OP}	0	yield
;--Conditional--
1	0	${IF}	0	break
1	0	${IF}	0	case
1	0	${IF}	0	catch
1	0	${IF}	0	continue
1	0	${IF}	0	do
1	0	${IF}	0	else
1	0	${IF}	0	finally
1	0	${IF}	0	for
1	0	${IF}	0	foreach
1	0	${IF}	0	goto
1	0	${IF}	0	if
1	0	${IF}	0	return
1	0	${IF}	0	switch
1	0	${IF}	0	throw
1	0	${IF}	0	try
1	0	${IF}	0	while


;----------------------------------------------;
;                   CodeFold - Свёртка                   ;
;----------------------------------------------;

;Флаги (сумма членов)
;       1  учитывать регистр.
;       2  форсировать получение имени для списка слева от начала блока (только для секции "Folds:").
;       4  форсировать получение имени для списка справа от начала блока, включая начало блока (только для секции "Folds:").
;       8  начало блока (секция "Folds:") или начало пропуска (секция "Skips:") находится в начале строки.
;      16  начало блока (секция "Folds:") или начало пропуска (секция "Skips:") находится в конце строки.
;      32  конец блока (секция "Folds:") или конец пропуска (секция "Skips:") находится в начале строки.
;      64  конец блока (секция "Folds:") или конец пропуска (секция "Skips:") находится в конце строки.
;     128  не захватывать конец блока (секция "Folds:") или конец пропуска (секция "Skips:").
;     256  добавочный для 128 флаг - больший приоритет отдается блокам находящимся на одном уровне вместо родительского (только для секции "Folds:").
;     512  блок с комментариями - все вложенные блоки игнорируются (только для секции "Folds:").
;    1024  зарезервирован.
;    2048  блок запрещен - найденный блок будет проигнорирован (только для секции "Folds:").
;    4096  xml блок - "<tag" и "</tag>", "<single" и "/>", "<single" и ">" (только для секции "Folds:").
;    8192  не проверять разделители слева от начала блока (только для секции "Folds:").
;   16384  не проверять разделители справа от начала блока (только для секции "Folds:").
;   32768  не проверять разделители слева от конца блока (только для секции "Folds:").
;   65536  не проверять разделители справа от конца блока (только для секции "Folds:").
;  131072  разделители запрещены (только для секции "Folds:").
;  262144  не отображать блок в списке (только для секции "Folds:").
; 1048576  регулярное выражение в начале блока (секция "Folds:") или начале пропуска (секция "Skips:").
; 2097152  регулярное выражение в конце блока (секция "Folds:") или конце пропуска (секция "Skips:").


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	`@"`	`"`	""
1	`"`	`"`	"\"
1	"//"	""	":"


Folds:
;===================================================================================
;Flags  Font    Color   Color   Fold       Fold          Deli   Parent  Rule    Rule
;       style   text    bkgrnd  start      end           miters ID      ID      file
;===================================================================================
;513=1+512
513	3	${COMM}	0	"/*"       "*/"          ""     0	0
1	0	0	0	"{"        "}"           ""     0	0
1	0	0	0	"#region"  "#endregion"  ""     0	0


;----------------------------------------------;
;                 AutoComplete - Автозавершение                 ;
;----------------------------------------------;

;Флаги (сумма членов)
;  1  форсировать учёт регистра.
;  2  форсировать без учёта регистра.
;  4  регулярное выражение (только для "$="). Сканирование начинается с первого символа строки каретки, а метасимвол \a или \z указывает позицию каретки.
;  8  не отображать в списке.


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:
;=============================================================================
;Аббревиатуры и содержимое аббревиатур
;
; $~аббр         обычная аббревиатура.
; $(флаги)~аббр  обычная аббревиатура с флагами.
; $=аббр         точная аббревиатура. Может содержать разделители.
; $(флаги)=аббр  точная аббревиатура с флагами. Может содержать разделители.
; $[]            установить каретку на эту позицию. Может быть несколько позиций (горячий переход).
; $[текст]       выделить текст. Может быть несколько выделений (горячий переход).
; $$             символ $.
; $\]            экранированный символ ]. Например: $[Один [1$\] ].
; ${VAR}         переменная, назначенная из Coder::Settings.
; $;             закомментированная строка.
;=============================================================================
$~namespace
namespace $[]
{
${AutoComplete_Indent}$[]
}

$~foreach
foreach ($[] in $[])
{
${AutoComplete_Indent}$[]
}

$~class
class $[]
{
${AutoComplete_Indent}$[]
}

$~do
do
{
${AutoComplete_Indent}$[]
}
while ($[]);

$~for
for ($[]; $[]; $[])
{
${AutoComplete_Indent}$[]
}

$~if
if ($[])
{
${AutoComplete_Indent}$[]
}

$~struct
struct $[]
{
${AutoComplete_Indent}$[]
}

$~switch
switch ($[])
{
${AutoComplete_Indent}case $[]:
${AutoComplete_Indent}${AutoComplete_Indent}$[]
${AutoComplete_Indent}${AutoComplete_Indent}break;
${AutoComplete_Indent}case $[]:
${AutoComplete_Indent}${AutoComplete_Indent}$[]
${AutoComplete_Indent}${AutoComplete_Indent}break;
${AutoComplete_Indent}default:
${AutoComplete_Indent}${AutoComplete_Indent}$[]
${AutoComplete_Indent}${AutoComplete_Indent}break;
}

$~try
try
{
${AutoComplete_Indent}$[]
}
catch ($[])
{
${AutoComplete_Indent}$[]
}
finally
{
${AutoComplete_Indent}$[]
}

$~while
while ($[])
{
${AutoComplete_Indent}$[]
}
