初步修复

This commit is contained in:
Cussrro 2024-12-19 09:48:26 +08:00
parent 8fc4357cc6
commit e4714f3f0e
46705 changed files with 12004901 additions and 0 deletions

View file

@ -0,0 +1,754 @@
//=======================================================================
//================ Lex class support ====================================
//=======================================================================
// lexClass:
// name = c_CPPString
// parent = c_CPP
// parent:dyn = c_CPP
//
// children = 0
// children = class1, class2, ...
//
// previous:class =
// previous:tag =
// previous:tag:separators =
//
// start:class =
// start:Tag = '"'
//
// skip:Tag = '\"'
//
// end:class = //
// end:Tag = '"'
// end:separators = ' '
//
// Token:tag = 'if', 'for', 'while', 'do'
// Token:start:separators =
// Token:end:separators =
//-----------------------------------------------------------------------
//---------------- Attributes -------------------------------------------
//-----------------------------------------------------------------------
// txt:colorFG = 0xffc0c0 // color value in hex format. default: black
// txt:colorBK = 0xffc0c0 // color value in hex format. default: white
//
// txt:colorSelFG = 0xffc0c0 // color value in hex format. default: white
// txt:colorSelBK = 0xffc0c0 // color value in hex format. default: black
//
// txt:Bold = 1 // {1,0} default: 0
// txt:Italic = 1 // {1,0} default: 0
// txt:Underline = 1 // {1,0} default: 0
//
// caseSensitive = 1 // {1,0} default: 0
//
// Collapsable = 1 // {1,0} default: 0
// CollapsedText = '/*...*/' // quoted string value. default: '[..]'
//
// ParseOnScreen = 1 // {1,0} default: 0
//
//-----------------------------------------------------------------------
//* Global attributes ***************************************************
//-----------------------------------------------------------------------
// global:FirstParseInSeparateThread = 1 // {0,1} default=1
// global:EditReparceInSeparateThread = 1 // {0,1} default=1
// global:ConfigChangedReparceInSeparateThread= 1 // {0,1} default=1
// global:EditReparceTimeout_ms = 500 // default= 500 ms; time out for start reparse after last key was pressed.
// global:MaxBackParseOffset = 100 // default= 100 chars; maximum back buffer size. Some times parser look back for the text from current position.
// global:OnScreenSchCacheLifeTime_sec = 180 // default= 180 sec; -1 and 0 means infinite; time out for on screen parsed pices of text. for memory using optimization.
// global:ParserThreadIdleLifeTime_sec = 60 // default=60 sec; -1 and 0 means infinite; time out for existing of parser thread when parser idle (no parse requests).
/////////////////////////////////////////////////////////////////////////
//=======================================================================
//================ Variables support ====================================
//=======================================================================
// NON operation - example: @alpha:not
//
// @alpha = a-z, A-Z
// @digit = 0-9
// @HexDdigit = 0-9, a-f, A-F
// @specs = "~`!@#$%^&*()_-+=\\|{}[];:'\",.<>/?"
// @EOL = End Of Line
//---------------------------------------------
// special tags: '\\', '\'', '\t', '\r', '\n'
/////////////////////////////////////////////////////////////////////////
/// HTML ///
lexClass:
parent:file = <*.htm|*.html|*.asp|*.plg|*.inc|*.js>
name = c_HTML
//caseSensitive = 0
txt:colorFG = 0x000000
DisplayName = 'Normal Text'
/// ASP ///
lexClass:
name = c_ASP_VBScriptBlock0
parent = c_HTML
start:Tag = '<%@'
end:Tag = '%>'
txt:colorFG = 0x000000
txt:colorBK = 0xFFFF00
DisplayName = 'ASP VB Script Block (@)'
//:lexClass
lexClass:
name = c_ASP_VBScriptBlock
parent = c_HTML, c_HTMLelement
parent = c_HTMLelement_SCRIPT_lang_other
parent = c_HTMLelementPropValue_str1, c_HTMLelementPropValue_str2
start:Tag = '<%'
end:Tag = '%>'
txt:colorBK = 0xFFFF00
Collapsable = 1
DisplayName = 'ASP VB Script Block'
//:lexClass
lexClass:
name = c_HTMLcomment
parent = c_HTML
children = 0 // URL
start:Tag = '<!--'
end:Tag = '-->'
txt:colorFG = 0x008200
Collapsable = 1
DisplayName = 'HTML Comment'
//:lexClass
lexClass:
name = c_HTMLelement_start
parent = c_HTML
Token:tag = '<!', '</', '<'
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element (start)'
//:lexClass
lexClass:
name = c_HTMLelement_end
parent = c_HTML
Token:tag = '>'
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element (end)'
//:lexClass
lexClass:
name = c_HTML_ScriptBlock_start
parent = c_HTML
previous:class = c_HTMLelement_start
previous:tag = '<'
Token:tag = 'SCRIPT'
Token:end:separators = ' ', '\t', '>'
txt:colorFG = 0x840000
txt:Italic = 0
DisplayName = 'HTML Script Block (start)'
//:lexClass
lexClass:
name = c_HTML_ScriptBlock
parent = c_HTML
previous:class = c_HTML_ScriptBlock_start
end:separators = '</SCRIPT>'
txt:colorFG = 0x0000FF
DisplayName = 'HTML Script Block'
// txt:Bold = 1
//:lexClass
/////////////////////////////////////////////////////////////////////
lexClass:
name = c_HTMLelement_SCRIPT_lang
parent = c_HTML_ScriptBlock
previous:tag = ' ', '\t', @eol
token:tag = 'LANGUAGE'
token:end:separators = ' ', '\t', '=', @eol
txt:colorFG = 0xF00000
DisplayName = 'HTML Element Script Language'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang2
parent = c_HTML_ScriptBlock
previous:tag = ' ', '\t', @eol
token:tag = 'TYPE'
token:end:separators = ' ', '\t', '=', @eol
txt:colorFG = 0xF00000
DisplayName = 'HTML Element Script Language'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_VB_start
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang, c_HTMLelement_SCRIPT_lang2
previous:tag = '='
previous:tag:separators = ' ', '\t', @eol
token:tag = 'VBScript', '"VBScript"', '\'VBScript\'', 'text/VBScript', '"text/VBScript"'
Token:end:separators = ' ', '\t', '>', @EOL
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Script Language VB (start)'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_VB // c_HTMLelement_SCRIPT_lang_JS
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang_VB_start
end:separators = '</SCRIPT>'
txt:colorFG = 0x000000
DisplayName = 'HTML Element Script Language VB'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_JS_start
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang, c_HTMLelement_SCRIPT_lang2
previous:tag = '='
previous:tag:separators = ' ', '\t', @eol
token:tag = 'JScript', '"JScript"', '\'JScript\''
token:tag = 'JavaScript', '"JavaScript"', '\'JavaScript\''
token:tag = 'text/javascript', '"text/javascript"'
Token:end:separators = ' ', '\t', '>', @EOL
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Script Language JS (start)'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_JS
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang_JS_start
//previous:class = c_HTMLelement_SCRIPT_lang_defaultJS
end:separators = '</SCRIPT>'
//txt:Underline = 1
DisplayName = 'HTML Element Script Language JS'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_other_start1
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang, c_HTMLelement_SCRIPT_lang2
previous:tag = '='
previous:tag:separators = ' ', '\t', @eol
start:Tag = @alpha
end:separators = @alpha:not
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Script Language (other start 1)'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_other_start2
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang, c_HTMLelement_SCRIPT_lang2
previous:tag = '='
previous:tag:separators = ' ', '\t', @eol
start:Tag = '"', @eol
end:tag = '"', @eol
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Script Language (other start 2)'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_other_start3
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang,c_HTMLelement_SCRIPT_lang2
previous:tag = '='
previous:tag:separators = ' ', '\t', @eol
start:Tag = '\'', @eol
end:Tag = '\'', @eol
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Script Language (other start 3)'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_other
parent = c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_lang_other_start1
previous:class = c_HTMLelement_SCRIPT_lang_other_start2
previous:class = c_HTMLelement_SCRIPT_lang_other_start3
end:separators = '</SCRIPT>'
txt:colorFG = 0x848484
DisplayName = 'HTML Element Script Language (other)'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_HeadrerTail
parent = c_HTMLelement_SCRIPT_lang_VB, c_HTMLelement_SCRIPT_lang_JS
parent = c_HTMLelement_SCRIPT_lang_other
previous:class = c_HTMLelement_SCRIPT_lang_VB, c_HTMLelement_SCRIPT_lang_JS
previous:class = c_HTMLelement_SCRIPT_lang_other
end:tag = '>'
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Script Header Tail'
//:lexClass
lexClass:
name = c_HTMLelement_SCRIPT_lang_defaultJS
parent = c_HTML_ScriptBlock
Token:tag = '>'
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Script Language Default'
//:lexClass
lexClass:
name = c_JScriptBlock
parent = c_HTMLelement_SCRIPT_lang_JS, c_HTML_ScriptBlock
previous:class = c_HTMLelement_SCRIPT_HeadrerTail, c_HTMLelement_SCRIPT_lang_defaultJS
previous:class = c_HTML_ScriptBlock_PropName,
previous:class = c_HTML_ScriptBlock_PropValue_str1, c_HTML_ScriptBlock_PropValue_str2
previous:tag = '>'
end:separators = '</SCRIPT>'
txt:colorFG = 0x000000
DisplayName = 'Java Script Block'
//:lexClass
/////////////////////////////////////////////////////////////////////
lexClass:
name = c_HTML_ScriptBlock_PropName
ParseOnScreen = 0
parent = c_HTML_ScriptBlock, c_HTMLelement_SCRIPT_HeadrerTail
previous:tag = ' ', '\t', @eol
children = 0
start:tag = @alpha
end:separators = ' ', '\t', '=', '>', @eol, '</SCRIPT>'
txt:colorFG = 0xFF0000
DisplayName = 'HTML Script Block Property Name'
//:lexClass
lexClass:
name = c_HTML_ScriptBlock_PropValue_str1
ParseOnScreen = 0
parent = c_HTML_ScriptBlock, c_HTMLelement_SCRIPT_HeadrerTail
children = 0 // URL
start:Tag = '"', @eol
end:Tag = '"', @eol
txt:colorFG = 0x0000FF
DisplayName = 'HTML Script Block Property Value (dobule quote)'
//:lexClass
lexClass:
name = c_HTML_ScriptBlock_PropValue_str2
ParseOnScreen = 0
parent = c_HTML_ScriptBlock, c_HTMLelement_SCRIPT_HeadrerTail
children = 0 // URL
start:Tag ='\'', @eol
end:Tag ='\'', @eol
txt:colorFG = 0x0000FF
DisplayName = 'HTML Script Block Property Value (single quote)'
//:lexClass
lexClass:
name = c_VBScriptBlock1
parent = c_ASP_VBScriptBlock //, c_HTMLelement_SCRIPT_lang_VB
previous:tag = '<%' //, '>'
previous:tag:separators = ' ', '\t', @eol
end:separators = '%>' //, '</SCRIPT>'
txt:colorFG = 0x000000
txt:colorBK = 0xFFFFFF
DisplayName = 'VB Script Block 1'
//:lexClass
lexClass:
name = c_VBScriptBlock2
parent = c_HTMLelement_SCRIPT_lang_VB
previous:tag = '>'
previous:tag:separators = ' ', '\t', @eol
end:separators = '</SCRIPT>'
txt:colorFG = 0x000000
txt:colorBK = 0xFFFFFF
DisplayName = 'VB Script Block 2'
//:lexClass
lexClass:
name = c_HTMLelement
parent = c_HTML
//previous:tag = '<!', '</', '<'
previous:class = c_HTMLelement_start
end:separators = '>'
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element'
//:lexClass
lexClass:
name = c_HTMLelement_KnownNames
ParseOnScreen = 0
parent = c_HTMLelement
previous:tag = '<', '</', '<!'
children = 0
Token:Tag = 'abbr', 'above', 'acronym', 'address', 'applet', 'array', 'area', 'a'
Token:Tag = 'basefont', 'base', 'bdo', 'bgsound', 'big', 'blink', 'blockquote'
Token:Tag = 'body', 'box', 'br', 'button', 'b'
Token:Tag = 'caption', 'center', 'cite', 'code', 'colgroup', 'comment', 'col'
Token:Tag = 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', 'embed', 'em'
Token:Tag = 'fieldset', 'fig', 'font', 'form', 'frame', 'frameset'
Token:Tag = 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html'
Token:Tag = 'id', 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i'
Token:Tag = 'kbd', 'label', 'layer', 'legend', 'link', 'listing', 'li'
Token:Tag = 'map', 'marquee', 'menu', 'meta', 'multicol'
Token:Tag = 'nextid', 'nobr', 'noframes', 'nolayer', 'note', 'noscript'
Token:Tag = 'object', 'ol', 'option', 'keygen', 'optgroup', 'param', 'pre', 'p'
Token:Tag = 'quote', 'q', 'range', 'root', 'samp', 'select', 'small', 'script'
Token:Tag = 'sound', 'spacer', 'span', 'sqrt', 'strike', 'strong', 'style', 'sub', 'sup', 's'
Token:Tag = 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'title', 'tr', 'tt', 'th'
Token:Tag = 'ul', 'u', 'var', 'wbr', 'xmp'
Token:end:separators = ' ', '\t', '>', @eol
txt:colorFG = 0x840000
DisplayName = 'HTML Element Known Names'
//:lexClass
lexClass:
name = c_HTMLelementName
ParseOnScreen = 0
parent = c_HTMLelement
previous:tag = '<', '</', '<!'
children = 0
start:tag = @alpha
skip:tag = @digit
end:separators = @alpha:not
txt:colorFG = 0x840000
txt:italic = 1
DisplayName = 'HTML Element Name'
//:lexClass
lexClass:
name = c_HTMLelementPropName
ParseOnScreen = 0
parent = c_HTMLelement,
previous:tag = ' ', '\t', @eol, '>'
children = 0
start:tag = @alpha
end:separators = ' ', '\t', '=', '>', @eol
txt:colorFG = 0xFF0000
DisplayName = 'HTML Element Property Name'
//:lexClass
lexClass:
name = c_HTMLelementPropValue_str1
ParseOnScreen = 0
parent = c_HTMLelement, c_HTMLelement_SCRIPT, c_HTMLelement_SCRIPT_HeadrerTail
children = c_ASP_VBScriptBlock
start:Tag = '"'
end:Tag = '"'
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Property Value (double quote)'
//:lexClass
lexClass:
name = c_HTMLelementPropValue_str2
ParseOnScreen = 0
parent = c_HTMLelement, c_HTMLelement_SCRIPT, c_HTMLelement_SCRIPT_HeadrerTail
children = c_ASP_VBScriptBlock
start:Tag ='\''
end:Tag ='\''
txt:colorFG = 0x0000FF
DisplayName = 'HTML Element Property Value (single quote)'
//:lexClass
//=============================================================================
//*** VB, VB Script colorization *** ==========================================
//=============================================================================
lexClass:
name = c_VBScriptComment
parent = c_VBScriptBlock1, c_VBScriptBlock2
start:Tag = '\''
end:separators = '%>', @EOL
txt:colorFG = 0x008200
DisplayName = 'VB Script Comment)'
//:lexClass
lexClass:
name = c_VBScriptStr
parent = c_VBScriptBlock1, c_VBScriptBlock2
ParseOnScreen = 0
start:Tag ='"'
end:Tag ='"', @EOL
txt:colorFG = 0x840000
DisplayName = 'VB Script String)'
//:lexClass
lexClass:
name = c_VBScriptNumber10
parent = c_VBScriptBlock1, c_VBScriptBlock2
ParseOnScreen = 1
previous:tag = @specs, ' ', '\t', @EOL
start:Tag = @digit
end:separators = @digit:not
txt:colorFG = 0x008284
DisplayName = 'VB Script Number)'
//:lexClass
lexClass:
name = c_VBScript_Language_Keywords
parent = c_VBScriptBlock1, c_VBScriptBlock2
ParseOnScreen = 0
token:start:separators = ' ','\t', '<%=', '<%', '>', @eol
token:end:separators = ' ','\t', '%>', '<', '(', @eol
txt:colorFG = 0x0000FF
txt:Bold = 1
token:tag = 'And'
token:tag = 'ByVal', 'ByRef'
token:tag = 'Call', 'Case'
token:tag = 'Dim'
token:tag = 'Error', 'ElseIf', 'Else', 'End', 'Erase', 'Exit', 'Eqv', 'Explicit'
token:tag = 'For', 'Function'
token:tag = 'In', 'If', 'Is', 'Imp'
token:tag = 'Like'
token:tag = 'Mod'
token:tag = 'Nothing', 'New', 'Next', 'Not'
token:tag = 'Option', 'On', 'Or'
token:tag = 'Preserve', 'Private', 'Public'
token:tag = 'ReDim', 'Raise', 'Resume'
token:tag = 'Set', 'Step', 'Sub'
token:tag = 'Then', 'To'
token:tag = 'Until'
token:tag = 'Xor'
token:tag = 'With', 'Wend', 'While'
DisplayName = 'VB Script Keywords)'
//:lexClass
lexClass:
name = c_VBScript_Functions
parent = c_VBScriptBlock1, c_VBScriptBlock2
ParseOnScreen = 0
token:start:separators = ' ', '\t', '<%=', '<%', '>', '(', @eol
token:end:separators = ' ', '\t', '%>', '<', '(', ')', @eol
txt:colorFG = 0x0000FF
token:tag = 'Abs'
token:tag = 'Array'
token:tag = 'Asc'
token:tag = 'Atn'
token:tag = 'CBool'
token:tag = 'CByte'
token:tag = 'CCur'
token:tag = 'CDate'
token:tag = 'CDbl'
token:tag = 'Chr'
token:tag = 'CInt'
token:tag = 'CLng'
token:tag = 'Const'
token:tag = 'Cos'
token:tag = 'CreateObject'
token:tag = 'CSng'
token:tag = 'CStr'
token:tag = 'Date'
token:tag = 'DateAdd'
token:tag = 'DateDiff'
token:tag = 'DatePart'
token:tag = 'DateSerial'
token:tag = 'DateValue'
token:tag = 'Day'
token:tag = 'Exp'
token:tag = 'Filter'
token:tag = 'Fix'
token:tag = 'FormatCurrency'
token:tag = 'FormatDateTime'
token:tag = 'FormatNumber'
token:tag = 'FormatPercent'
token:tag = 'GetObject'
token:tag = 'Hex'
token:tag = 'Hour'
token:tag = 'InputBox'
token:tag = 'InStr'
token:tag = 'InStrRev'
token:tag = 'Int'
token:tag = 'IsArray'
token:tag = 'IsDate'
token:tag = 'IsEmpty'
token:tag = 'IsNull'
token:tag = 'IsNumeric'
token:tag = 'IsObject'
token:tag = 'Join'
token:tag = 'LBound'
token:tag = 'LCase'
token:tag = 'Left'
token:tag = 'Len'
token:tag = 'LoadPicture'
token:tag = 'Log'
token:tag = 'LTrim'
token:tag = 'Mid'
token:tag = 'Minute'
token:tag = 'Month'
token:tag = 'MonthName'
token:tag = 'MsgBox'
token:tag = 'Now'
token:tag = 'Oct'
token:tag = 'Replace'
token:tag = 'Right'
token:tag = 'Rnd'
token:tag = 'Round'
token:tag = 'RTrim'
token:tag = 'ScriptEngine'
token:tag = 'ScriptEngineBuildVersion'
token:tag = 'ScriptEngineMajorVersion'
token:tag = 'ScriptEngineMinorVersion'
token:tag = 'Second'
token:tag = 'Sgn'
token:tag = 'Sin'
token:tag = 'Space'
token:tag = 'Split'
token:tag = 'Sqr'
token:tag = 'StrComp'
token:tag = 'StrReverse'
token:tag = 'String'
token:tag = 'Tan'
token:tag = 'Time'
token:tag = 'TimeSerial'
token:tag = 'TimeValue'
token:tag = 'Trim'
token:tag = 'TypeName'
token:tag = 'UBound'
token:tag = 'UCase'
token:tag = 'VarType'
token:tag = 'Weekday'
token:tag = 'WeekdayName'
token:tag = 'Year'
token:tag = 'empty'
token:tag = 'True'
token:tag = 'false'
token:tag = 'null'
DisplayName = 'VB Script Functions)'
//:lexClass
/////////////////////////////////////////////////////////////
// Operators Arithmetic
// "^"
// "*"
// "/"
// "\"
// "+"
// "-"
// "&"
// Operators Comparison
// "="
// "<>"
// "<"
// "<="
// ">"
// ">="
// Operators Logical
// "~"
/////////////////////////////////////////////////////////////
//=============================================================================
//*** Java, J Script colorization *** ==========================================
//=============================================================================
lexClass:
name = c_JScriptCommentSL
parent = c_JScriptBlock
children = 0
start:Tag = '//'
end:separators = @EOL
txt:colorFG = 0x008200
DisplayName = 'Java Script Comment (single line)'
//:lexClass
lexClass:
name = c_JScriptCommentML
parent = c_JScriptBlock
children = 0
start:Tag = '/*'
end:Tag = '*/'
txt:colorFG = 0x008200
DisplayName = 'Java Script Comment (multi-line)'
//:lexClass
lexClass:
name = c_JScriptStr1
parent = c_JScriptBlock
//ParseOnScreen = 0
start:Tag ='"'
end:Tag ='"', @EOL
txt:colorFG = 0x840000
DisplayName = 'Java Script String (double quote)'
//:lexClass
lexClass:
name = c_JScriptStr
parent = c_JScriptBlock
//ParseOnScreen = 0
start:Tag ='\''
end:Tag ='\'', @EOL
txt:colorFG = 0x840000
DisplayName = 'Java Script String (single quote)'
//:lexClass
//lexClass:
// name = c_JScriptHTMLcomment
// parent = c_JScriptBlock
// start:Tag = '<!--'
// end:Tag = '-->'
// txt:colorFG = 0x808080
////:lexClass
lexClass:
name = c_JScriptNumber10
parent = c_JScriptBlock
ParseOnScreen = 1
previous:tag = @specs, ' ', '\t', @EOL
start:Tag = @digit
end:separators = @digit:not
txt:colorFG = 0x008284
DisplayName = 'Java Script Number'
//:lexClass
lexClass:
name = c_JScript_Language_Keywords0
parent = c_JScriptBlock
ParseOnScreen = 0
token:start:separators = ' ', '\t', '<%=', '<%', @specs, @eol
token:end:separators = ' ', '\t', '%>', @specs, @eol
txt:colorFG = 0x0000FF
txt:Bold = 1
token:tag = 'break'
token:tag = 'case'
token:tag = 'catch'
token:tag = 'const'
token:tag = 'continue'
token:tag = 'do'
token:tag = 'else'
token:tag = 'finally'
token:tag = 'for'
token:tag = 'function'
token:tag = 'if'
token:tag = 'in'
token:tag = 'instanceof'
token:tag = 'new'
token:tag = 'return'
token:tag = 'switch'
token:tag = 'this'
token:tag = 'throw'
token:tag = 'try'
token:tag = 'typeof'
token:tag = 'var'
token:tag = 'while'
token:tag = 'with'
token:tag = 'True'
token:tag = 'false'
token:tag = 'null'
DisplayName = 'Java Script Keywords'
//:lexClass

View file

@ -0,0 +1,335 @@
//=======================================================================
//================ Lex class support ====================================
//=======================================================================
// lexClass:
// name = c_CPPString
// parent = c_CPP
// parent:dyn = c_CPP
// parent:file = <*.c|*.cpp|*.h|*.inl|*.tli|*.tlh|*.rc|*.rc2>
//
// children = 0
// children = class1, class2, ...
//
// previous:class =
// previous:tag =
// previous:tag:separators =
//
// start:class =
// start:Tag = '"'
//
// skip:Tag = '\"'
//
// end:class = //
// end:Tag = '"'
// end:separators = ' '
//
// Token:tag = 'if', 'for', 'while', 'do'
// Token:start:separators =
// Token:end:separators =
//-----------------------------------------------------------------------
//---------------- Attributes -------------------------------------------
//-----------------------------------------------------------------------
// txt:colorFG = 0xffc0c0 // color value in hex format. default: black
// txt:colorBK = 0xffc0c0 // color value in hex format. default: white
//
// txt:colorSelFG = 0xffc0c0 // color value in hex format. default: white
// txt:colorSelBK = 0xffc0c0 // color value in hex format. default: black
//
// txt:Bold = 1 // {1,0} default: 0
// txt:Italic = 1 // {1,0} default: 0
// txt:Underline = 1 // {1,0} default: 0
//
// caseSensitive = 1 // {1,0} default: 0
//
// Collapsable = 1 // {1,0} default: 0
// CollapsedText = '/*...*/' // quoted string value. default: '[..]'
//
// ParseOnScreen = 1 // {1,0} default: 0
//
//-----------------------------------------------------------------------
//* Global attributes ***************************************************
//-----------------------------------------------------------------------
// global:FirstParseInSeparateThread = 1 // {0,1} default=1
// global:EditReparceInSeparateThread = 1 // {0,1} default=1
// global:ConfigChangedReparceInSeparateThread= 1 // {0,1} default=1
// global:EditReparceTimeout_ms = 500 // default= 500 ms; time out for start reparse after last key was pressed.
// global:MaxBackParseOffset = 100 // default= 100 chars; maximum back buffer size. Some times parser look back for the text from current position.
// global:OnScreenSchCacheLifeTime_sec = 180 // default= 180 sec; -1 and 0 means infinite; time out for on screen parsed pices of text. for memory using optimization.
// global:ParserThreadIdleLifeTime_sec = 60 // default=60 sec; -1 and 0 means infinite; time out for existing of parser thread when parser idle (no parse requests).
/////////////////////////////////////////////////////////////////////////
//=======================================================================
//================ Variables support ====================================
//=======================================================================
// NON operation - example: @alpha:not
//
// @alpha = a-z, A-Z
// @digit = 0-9
// @HexDdigit = 0-9, a-f, A-F
// @specs = "~`!@#$%^&*()_-+=\\|{}[];:'\",.<>/?"
// @EOL = End Of Line
//---------------------------------------------
// special tags: '\\', '\'', '\t', '\r', '\n'
/////////////////////////////////////////////////////////////////////////
lexClass:
name = c_CPP
parent:file = <*.c|*.cpp|*.h|*.inl|*.tli|*.tlh|*.rc|*.rc2>
caseSensitive = 1
DisplayName = 'Normal Text'
//global:FirstParseInSeparateThread = 0
global:EditReparceInSeparateThread = 1
//global:EditReparceTimeout_ms = 250
//global:MaxBackParseOffset = 100
//global:OnScreenSchCacheLifeTime_sec = 60
//global:ParserThreadIdleLifeTime_sec = -1
lexClass:
name = c_CPPCodeBlock
parent:dyn = c_CPP, c_CPPCodeBlock
start:Tag = '{'
end:tag = '}'
Collapsable = 1
CollapsedText = '...'
DisplayName = 'Curly Braces'
lexClass:
name = c_URL
ParseOnScreen = 0
parent:dyn = c_CPP, c_CPPCodeBlock
caseSensitive = 0
children = 0
previous:tag = @specs, ' ', '\t', @eol
start:Tag = 'http:'
end:separators = ' ', '\t', '*', '"', @eol
txt:colorBK = 0xC0FFC0
txt:Underline = 1
DisplayName = 'URL'
lexClass:
name = c_String
parent:dyn = c_CPP, c_CPPCodeBlock
children = c_URL
start:Tag = '"'
skip:Tag = '\\"', '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:Tag = '"', @eol
txt:colorFG = 0xE00000
DisplayName = 'String (Double Quotes)'
lexClass:
name = c_String_char
parent:dyn = c_CPP, c_CPPCodeBlock
children = 0
start:Tag = '\''
//skip:Tag = '\\"', '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:Tag = '\'', @eol
txt:colorFG = 0xE00000
DisplayName = 'String (Single Quotes)'
lexClass:
name = c_Str_include
parent:dyn = c_CPP, c_CPPCodeBlock
children = 0
previous:tag = '#include'
previous:tag:separators = ' ', '\t'
start:Tag = '<'
end:Tag = '>', @eol
txt:colorFG = 0xE00000
DisplayName = 'String (Include File)'
lexClass:
name = c_CPPCommentML
parent:dyn = c_CPP, c_CPPCodeBlock
children = c_URL
start:Tag ='/*'
end:Tag ='*/'
Collapsable = 1
CollapsedText = '/**/'
txt:colorFG = 0x00CF00
DisplayName = 'Comment (Multi-Line)'
lexClass:
name = c_CPPAfxInsertBlock_Start
parent = c_CPP, c_CPPCodeBlock
children = 0
start:Tag = '//{{AFX'
end:Separators = @eol
txt:colorFG = 0x00A000
DisplayName = 'Afx Comment Block (start)'
lexClass:
name = c_CPPAfxInsertBlock_End
parent = c_CPP, c_CPPCodeBlock, c_CPPAfxInsertBlock
children = 0
start:Tag = '//}}AFX'
end:Separators = @eol
txt:colorFG = 0x00A000
DisplayName = 'Afx Comment Block (end)'
lexClass:
name = c_CPPAfxInsertBlock
parent = c_CPP, c_CPPCodeBlock
children = c_CPPAfxInsertBlock_End
start:CLASS = c_CPPAfxInsertBlock_Start
end:CLASS = c_CPPAfxInsertBlock_End
Collapsable = 1
txt:colorFG = 0x909090
DisplayName = 'Afx Comment Block'
lexClass:
name = c_CPPCommentSL
// ParseOnScreen = 0
parent = c_CPP, c_CPPCodeBlock
children = c_URL
start:tag ='//'
skip:Tag = '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:tag = @eol
txt:colorFG = 0x00A000
DisplayName = 'Comment (Single-Line)'
lexClass:
name = c_CPPKeywords
ParseOnScreen = 0
parent:Dyn = c_CPP, c_CPPCodeBlock
children = 0
DisplayName = 'Keyword'
token:tag = '#define'
token:tag = '#elif'
token:tag = '#else'
token:tag = '#endif'
token:tag = '#error'
token:tag = '#if'
token:tag = '#ifdef'
token:tag = '#ifndef'
token:tag = '#import'
token:tag = '#include'
token:tag = '#line'
token:tag = '#pragma'
token:tag = '#undef'
token:tag = '__asm'
token:tag = '__assume'
token:tag = '__based'
token:tag = '__cdecl'
token:tag = '__declspec'
token:tag = '__except'
token:tag = '__fastcall'
token:tag = '__finally'
token:tag = '__inline'
token:tag = '__int16'
token:tag = '__int32'
token:tag = '__int64'
token:tag = '__int8'
token:tag = '__leave'
token:tag = '__multiple_inheritance'
token:tag = '__single_inheritance'
token:tag = '__stdcall'
token:tag = '__try'
token:tag = '__uuidof'
token:tag = '__virtual_inheritance'
token:tag = 'auto'
token:tag = 'bool'
token:tag = 'break'
token:tag = 'case'
token:tag = 'catch'
token:tag = 'char'
token:tag = 'class'
token:tag = 'const'
token:tag = 'const_cast'
token:tag = 'continue'
token:tag = 'default'
token:tag = 'defined'
token:tag = 'delete'
token:tag = 'do'
token:tag = 'double'
token:tag = 'dynamic_cast'
token:tag = 'else'
token:tag = 'enum'
token:tag = 'explicit'
token:tag = 'extern'
token:tag = 'float'
token:tag = 'for'
token:tag = 'friend'
token:tag = 'goto'
token:tag = 'if'
token:tag = 'inline'
token:tag = 'int'
token:tag = 'long'
token:tag = 'mutable'
token:tag = 'namespace'
token:tag = 'new'
token:tag = 'operator'
token:tag = 'private'
token:tag = 'protected'
token:tag = 'public'
token:tag = 'register'
token:tag = 'reinterpret_cast'
token:tag = 'return'
token:tag = 'short'
token:tag = 'signed'
token:tag = 'sizeof'
token:tag = 'static'
token:tag = 'static_cast'
token:tag = 'struct'
token:tag = 'switch'
token:tag = 'template'
token:tag = 'this'
token:tag = 'throw'
token:tag = 'try'
token:tag = 'typedef'
token:tag = 'typeid'
token:tag = 'typename'
token:tag = 'union'
token:tag = 'unsigned'
token:tag = 'using'
token:tag = 'virtual'
token:tag = 'void'
token:tag = 'volatile'
token:tag = 'while'
token:tag = 'wmain'
token:start:separators = ' ', '\t', ':', ';', '!', '(', ')', ',', '/', '{', '}', @eol
token:end:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
txt:colorFG = 0x0000FF
lexClass:
name = c_CPPDataTypes
ParseOnScreen = 0
parent:Dyn = c_CPP, c_CPPCodeBlock
children = 0
DisplayName = 'Data Type'
token:tag = 'FALSE'
token:tag = 'TRUE'
token:tag = 'BOOL'
token:tag = 'BSTR'
token:tag = 'BYTE'
token:tag = 'COLORREF'
token:tag = 'DWORD'
token:tag = 'LONG'
token:tag = 'LPARAM'
token:tag = 'LPCSTR'
token:tag = 'LPSTR'
token:tag = 'LPCTSTR'
token:tag = 'LPTSTR'
token:tag = 'LPVOID'
token:tag = 'LRESULT'
token:tag = 'UINT'
token:tag = 'WNDPROC'
token:tag = 'WORD'
token:tag = 'WPARAM'
token:tag = 'POSITION'
token:tag = 'LPCRECT'
token:start:separators = ' ', '\t', ':', ';', '!', '(', ')', ',', '/', '{', '}', @eol
token:end:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
txt:colorFG = 0x990099
txt:bold = 0

View file

@ -0,0 +1,121 @@
//=======================================================================
//================ Lex class support ====================================
//=======================================================================
// lexClass:
// name = c_INI
// parent = c_INI
// parent:file = <*.INI>
//
// children = 0
// children = class1, class2, ...
//
// previous:class =
// previous:tag =
// previous:tag:separators =
//
// start:class =
// start:Tag = '"'
//
// skip:Tag = '\"'
//
// end:class = //
// end:Tag = '"'
// end:separators = ' '
//
// Token:tag = 'if', 'for', 'while', 'do'
// Token:start:separators =
// Token:end:separators =
//-----------------------------------------------------------------------
//---------------- Attributes -------------------------------------------
//-----------------------------------------------------------------------
// txt:colorFG = 0xffc0c0 // color value in hex format. default: black
// txt:colorBK = 0xffc0c0 // color value in hex format. default: white
//
// txt:colorSelFG = 0xffc0c0 // color value in hex format. default: white
// txt:colorSelBK = 0xffc0c0 // color value in hex format. default: black
//
// txt:Bold = 1 // {1,0} default: 0
// txt:Italic = 1 // {1,0} default: 0
// txt:Underline = 1 // {1,0} default: 0
//
// caseSensitive = 1 // {1,0} default: 0
//
// Collapsable = 1 // {1,0} default: 0
// CollapsedText = '/*...*/' // quoted string value. default: '[..]'
//
// ParseOnScreen = 1 // {1,0} default: 0
//
//-----------------------------------------------------------------------
//* Global attributes ***************************************************
//-----------------------------------------------------------------------
// global:FirstParseInSeparateThread = 1 // {0,1} default=1
// global:EditReparceInSeparateThread = 1 // {0,1} default=1
// global:ConfigChangedReparceInSeparateThread= 1 // {0,1} default=1
// global:EditReparceTimeout_ms = 500 // default= 500 ms; time out for start reparse after last key was pressed.
// global:MaxBackParseOffset = 100 // default= 100 chars; maximum back buffer size. Some times parser look back for the text from current position.
// global:OnScreenSchCacheLifeTime_sec = 180 // default= 180 sec; -1 and 0 means infinite; time out for on screen parsed pices of text. for memory using optimization.
// global:ParserThreadIdleLifeTime_sec = 60 // default=60 sec; -1 and 0 means infinite; time out for existing of parser thread when parser idle (no parse requests).
/////////////////////////////////////////////////////////////////////////
//=======================================================================
//================ Variables support ====================================
//=======================================================================
// NON operation - example: @alpha:not
//
// @alpha = a-z, A-Z
// @digit = 0-9
// @HexDdigit = 0-9, a-f, A-F
// @specs = "~`!@#$%^&*()_-+=\\|{}[];:'\",.<>/?"
// @EOL = End Of Line
//---------------------------------------------
// special tags: '\\', '\'', '\t', '\r', '\n'
/////////////////////////////////////////////////////////////////////////
lexClass:
name = c_INI
parent:file = <*.INI>
caseSensitive = 0
lexClass:
name = c_INISection
parent = c_INI
start:Tag = '['
end:tag = ']', @eol
txt:colorFG = 0xAA00AA
lexClass:
name = c_INIidentifier
parent = c_INI
previous:tag = @eol, ' ', '\t'
start:Tag = @alpha
skip:Tag = @digit, '_'
end:separators = @alpha:not
txt:colorFG = 0x0088AA
lexClass:
name = c_INIValue
parent = c_INI
previous:tag = '='
skip:Tag = ' '
end:Tag = @eol
txt:colorFG = 0xAA11FF
lexClass:
name = c_INIString
parent = c_INI
previous:tag = '=', ' ', '\t', @eol
start:Tag = '"'
end:Tag = '"'
txt:colorFG = 0xAA1111
lexClass:
name = c_INIRemark
parent = c_INI
start:Tag = ';'
end:Tag = @eol
txt:colorFG = 0x008200

View file

@ -0,0 +1,218 @@
//=======================================================================
//================ Lex class support ====================================
//=======================================================================
// lexClass:
// name = c_CPPString
// + parent = c_CPP
// + parent:dyn = c_CPP
// + children = 0
// + children = class1, class2, ...
// + previous:class =
// + previous:tag =
// + previous:tag:separators =
// + start:class =
// + start:Tag = '"'
// + skip:Tag = '\"'
// + end:class = //
// + end:Tag = '"'
// + end:separators = ' '
// + Token:tag = 'if', 'for', 'while', 'do'
// + Token:start:separators =
// + Token:end:separators =
/////////////////////////////////////////////////////////////////////////
//=======================================================================
//================ Variables support ====================================
//=======================================================================
// NON operation - example: @alpha:not
//
// @alpha = a-z, A-Z
// @digit = 0-9
// @HexDdigit = 0-9, a-f, A-F
// @specs = "~`!@#$%^&*()_-+=\\|{}[];:'\",.<>/?"
// @EOL = End Of Line
/////////////////////////////////////////////////////////////////////////
/// Nullsoft Installer configuration file ///
lexClass:
parent:file = <*.nsi>
name = c_NSI
//caseSensitive = 1
txt:colorFG = 0x000000
lexClass:
name = c_NSICommentSL
parent:dyn = c_NSI, c_NSIFunctionBlock, c_NSISectionBlock
children = c_URL
start:tag =';'
skip:Tag = '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:tag = @eol
txt:colorFG = 0x00A000
lexClass:
name = c_String
parent:dyn = c_NSI
children = c_NSIVars
start:Tag = '"'
skip:Tag = '\\"', '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:Tag = '"', @eol
txt:colorFG = 0xE00000
lexClass:
name = c_NSIFunctionBlock_Start
parent = c_NSI
children = c_String
start:Tag = 'Function'
end:Separators = @eol
txt:colorFG = 0x0000FF
lexClass:
name = c_NSIFunctionBlock_End
parent = c_NSI, c_NSIFunctionBlock
children = 0
start:Tag = 'FunctionEnd'
end:Separators = @eol
txt:colorFG = 0x0000FF
lexClass:
name = c_NSIFunctionBlock
parent = c_NSI
children = c_NSIFunctionBlock_End
start:CLASS = c_NSIFunctionBlock_Start
end:CLASS = c_NSIFunctionBlock_End
Collapsable = 1
txt:colorFG = 0x909090
lexClass:
name = c_NSISectionBlock_Start
parent = c_NSI
children = c_String
start:Tag = 'Section'
end:Separators = @eol
txt:colorFG = 0x0000FF
lexClass:
name = c_NSISectionBlock_End
parent = c_NSI, c_NSISectionBlock
children = 0
start:Tag = 'SectionEnd'
end:Separators = @eol
txt:colorFG = 0x0000FF
lexClass:
name = c_NSISectionBlock
parent:dyn = c_NSI
start:CLASS = c_NSISectionBlock_Start
end:CLASS = c_NSISectionBlock_End
Collapsable = 1
txt:colorFG = 0x909090
lexClass:
name = c_NSIAttributes
ParseOnScreen = 1
parent:Dyn = c_NSI, c_NSISectionBlock, c_NSIFunctionBlock
children = 0
// General installer configuration
token:tag = 'OutFile', 'Name', 'Caption', 'SubCaption', 'BrandingText'
token:tag = 'Icon', 'WindowIcon', 'BGGradient', 'SilentInstall', 'SilentUnInstall'
token:tag = 'CRCCheck', 'MiscButtonText', 'InstallButtonText', 'FileErrorText'
token:tag = 'SetCompressor', 'LoadLanguageFile'
// Install directory configuration
token:tag = 'InstallDirRegKey', 'InstallDir'
// License page configuration
token:tag = 'LicenseText', 'LicenseData'
// Component page configuration
token:tag = 'ComponentText', 'InstType', 'EnabledBitmap', 'DisabledBitmap', 'SpaceTexts'
// Directory page configuration
token:tag = 'DirShow', 'DirText', 'AllowRootDirInstall'
// Install page configuration
token:tag = 'InstallColors', 'InstProgressFlags', 'AutoCloseWindow'
token:tag = 'ShowInstDetails', 'DetailsButtonText', 'CompletedText'
// Uninstall configuration
token:tag = 'UninstallText', 'UninstallIcon', 'UninstallCaption'
token:tag = 'UninstallSubCaption', 'ShowUninstDetails', 'UninstallButtonText'
token:start:separators = ' ', '\t', @eol
token:end:separators = ' ', '\t', @eol
txt:colorFG = 0x0000FF
txt:bold = 1
lexClass:
name = c_NSIInstructions
ParseOnScreen = 1
parent:Dyn = c_NSI, c_NSISectionBlock, c_NSIFunctionBlock
children = 0
// General purpose, basic instructions
token:tag = 'SetOutPath', 'File', 'Exec', 'ExecWait', 'ExecShell'
token:tag = 'Rename', 'Delete', 'RMDir'
// Registry, INI file reading/writing/deleting instructions
token:tag = 'WriteRegStr', 'WriteRegExpandStr', 'WriteRegDWORD', 'WriteRegBin', 'WriteINIStr'
token:tag = 'ReadRegStr', 'ReadRegDWORD', 'ReadINIStr', 'ReadEnvStr'
token:tag = 'ExpandEnvStrings'
token:tag = 'DeleteRegValue', 'DeleteRegKey', 'DeleteINISec', 'DeleteINIStr'
token:tag = 'EnumRegKey', 'EnumRegValue'
// General purpose, advanced instructions
token:tag = 'CreateDirectory', 'CopyFiles', 'SetFileAttributes'
token:tag = 'CreateShortCut', 'GetTempFileName'
token:tag = 'CallInstDLL', 'RegDLL', 'UnRegDLL'
token:tag = 'GetFullPathName', 'SearchPath'
token:tag = 'GetDLLVersion', 'GetDLLVersionLocal'
token:tag = 'GetFileTime', 'GetFileTimeLocal', 'Nop'
// Branching, flow control, error checking, user interaction, etc instructions
token:tag = 'Goto', 'Call', 'Return', 'IfErrors', 'ClearErrors'
token:tag = 'SetErrors', 'FindWindow', 'SendMessage', 'IsWindow'
token:tag = 'IfFileExists', 'MessageBox'
token:tag = 'StrCmp', 'IntCmp', 'IntCmpU'
token:tag = 'Abort', 'Quit'
token:tag = 'GetFunctionAddress', 'GetLabelAddress', 'GetCurrentAddress'
// File and directory i/o instructions
token:tag = 'FindFirst', 'FindNext', 'FindClose'
token:tag = 'FileOpen', 'FileClose', 'FileRead', 'FileWrite', 'FileSeek'
token:tag = 'FileReadByte', 'FileWriteByte'
// Uninstaller instructions
token:tag = 'WriteUninstaller'
// Misc instructions
token:tag = 'SetDetailsView', 'SetDetailsPrint', 'SetAutoClose'
token:tag = 'DetailPrint', 'SetShellVarContext', 'Sleep'
token:tag = 'BringToFront', 'HideWindow'
token:tag = 'StrCpy', 'StrLen', 'Push', 'Pop', 'Exch', 'IntOp', 'IntFmt'
// Rebooting support
token:tag = 'Reboot', 'IfRebootFlag', 'SetRebootFlag'
// Install Logging Instructions
token:tag = 'LogSet', 'LogText'
// Section Management
token:tag = 'SectionSetFlags', 'SectionGetFlags'
token:tag = 'SectionSetText', 'SectionGetText'
token:start:separators = ' ', '\t', @eol
token:end:separators = ' ', '\t', @eol
txt:colorFG = 0x0022FF
lexClass:
name = c_NSIFunctionKeywords
ParseOnScreen = 1
parent = c_NSIFunctionBlock, c_NSISectionBlock
children = 0
token:tag = 'Section', 'SectionIn', 'SectionDivider', 'AddSize'
token:start:separators = ' ', '\t', @eol
token:end:separators = ' ', '\t', @eol
txt:colorFG = 0x0022FF
lexClass:
name = c_NSIVars
parent:dyn = c_NSI, c_NSIFunctionBlock, c_NSISectionBlock
start:Tag = '$'
end:separators = @specs, ' ', '\t', @eol
txt:colorFG = 0xCCAA00

View file

@ -0,0 +1,252 @@
//=======================================================================
//================ Lex class support ====================================
//=======================================================================
// lexClass:
// name = c_PascalString
// + parent = c_Pascal
// + parent:dyn = c_Pascal
//
// + children = 0
// + children = class1, class2, ...
//
// + previous:class =
// + previous:tag =
// + previous:tag:separators =
//
// + start:class =
// + start:Tag = '"'
//
// + skip:Tag = '\"'
//
// + end:class = //
// + end:Tag = '"'
// + end:separators = ' '
//
// + Token:tag = 'if', 'for', 'while', 'do'
// + Token:start:separators =
// + Token:end:separators =
//-----------------------------------------------------------------------
//---------------- Attributes -------------------------------------------
//-----------------------------------------------------------------------
// txt:colorFG = 0xffc0c0 // color value in hex format. default: black
// txt:colorBK = 0xffc0c0 // color value in hex format. default: white
//
// txt:colorSelFG = 0xffc0c0 // color value in hex format. default: white
// txt:colorSelBK = 0xffc0c0 // color value in hex format. default: black
//
// txt:Bold = 1 // {1,0} default: 0
// txt:Italic = 1 // {1,0} default: 0
// txt:Underline = 1 // {1,0} default: 0
//
// caseSensitive = 1 // {1,0} default: 0
//
// Collapsable = 1 // {1,0} default: 0
// CollapsedText = '/*...*/' // quoted string value. default: '[..]'
//
// ParseOnScreen = 1 // {1,0} default: 0
/////////////////////////////////////////////////////////////////////////
//=======================================================================
//================ Variables support ====================================
//=======================================================================
// NON operation - example: @alpha:not
//
// @alpha = a-z, A-Z
// @digit = 0-9
// @HexDdigit = 0-9, a-f, A-F
// @specs = "~`!@#$%^&*()_-+=\\|{}[];:'\",.<>/?"
// @EOL = End Of Line
//---------------------------------------------
// special tags: '\\', '\'', '\t', '\r', '\n'
/////////////////////////////////////////////////////////////////////////
lexClass:
name = c_Pascal
parent:file = <*.pas|*.dpr|*.dpk|*.inc|*.int>
caseSensitive = 0
lexClass:
name = c_PascalCodeBlock_Start
parent = c_Pascal, c_PascalCodeBlock
children = 0
previous:tag = ';', ' ', '\t', @eol
start:Tag = 'begin'
end:Tag = '\t', ' ', @eol
end:Separators = '\t', ' ', @eol
txt:colorFG = 0x0000FF
txt:bold = 1
lexClass:
name = c_PascalCodeBlock_End
parent = c_Pascal, c_PascalCodeBlock, c_PascalCodeBlock
children = 0
previous:tag = @specs, ' ', '\t', @eol
start:Tag = 'end'
end:Separators = @specs, @eol
txt:colorFG = 0x0000FF
txt:bold = 1
lexClass:
name = c_PascalCodeBlock
parent = c_Pascal, c_PascalCodeBlock
children = c_PascalCodeBlock_End
start:CLASS = c_PascalCodeBlock_Start
end:CLASS = c_PascalCodeBlock_End
Collapsable = 1
CollapsedText = '...'
lexClass:
name = c_String
parent:dyn = c_Pascal, c_PascalCodeBlock
children = 0
start:Tag = '"'
skip:Tag = '\\"', '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:Tag = '"', @eol
txt:colorFG = 0xE00000
lexClass:
name = c_String_char
parent:dyn = c_Pascal, c_PascalCodeBlock
children = 0
start:Tag = '\''
//skip:Tag = '\\"', '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:Tag = '\'', @eol
txt:colorFG = 0xE00000
lexClass:
name = c_PascalCommentSL
parent = c_Pascal, c_PascalCodeBlock
children = 0
start:tag ='//'
skip:Tag = '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:tag = @eol
txt:colorFG = 0x00A000
lexClass:
name = c_PascalCommentML1
parent:dyn = c_Pascal, c_PascalCodeBlock
children = 0
start:Tag ='{'
end:Tag ='}'
Collapsable = 1
CollapsedText = '{...}'
txt:colorFG = 0x00CF00
lexClass:
name = c_PascalCommentML2
parent:dyn = c_Pascal, c_PascalCodeBlock
children = 0
start:Tag ='(*'
end:Tag ='*)'
Collapsable = 1
CollapsedText = '(*...*)'
txt:colorFG = 0x00CF00
lexClass:
name = c_KeywordsWord
ParseOnScreen = 1
parent:Dyn = c_Pascal, c_PascalCodeBlock
children = 0
token:tag = 'and', 'array', 'as', 'const', 'div', 'file', 'in', 'is'
token:tag = 'mod', 'not', 'of', 'or', 'out', 'shl', 'shr', 'threadvar', 'var', 'xor'
token:start:separators = @specs, @eol
token:end:separators = @specs, @eol
txt:colorFG = 0xAA33BB
txt:bold = 1
lexClass:
name = c_KeywordsConst
ParseOnScreen = 1
parent:Dyn = c_Pascal, c_PascalCodeBlock
children = 0
token:tag = 'False', 'True', 'nil', 'null'
token:start:separators = @specs, @eol
token:end:separators = @specs, @eol
txt:colorFG = 0xAA33BB
txt:bold = 1
lexClass:
name = c_KeywordsType
ParseOnScreen = 1
parent:Dyn = c_Pascal, c_PascalCodeBlock
children = 0
// Types
token:tag = 'AnsiChar', 'AnsiString', 'Boolean', 'Byte', 'ByteBool'
token:tag = 'Cardinal', 'Comp', 'Currency', 'DWord', 'Integer'
token:tag = 'LongBool', 'LongInt', 'LongWord', 'OleVariant', 'OpenString'
token:tag = 'PAnsiChar', 'PWideChar', 'ShortInt', 'ShortString', 'SmallInt'
token:tag = 'TDateTime', 'TextFile', 'Variant', 'WideChar', 'WideString'
token:tag = 'Word', 'WordBool'
// Smalls
token:tag = 'byte', 'char', 'double', 'extended', 'int64'
token:tag = 'real', 'single', 'string', 'text', 'UINT'
// .NET
token:tag = 'PChar', 'Pointer', 'real48'
token:start:separators = @specs, @eol
token:end:separators = @specs, @eol
txt:colorFG = 0xAA33BB
txt:bold = 1
lexClass:
name = c_KeywordsPropWord
ParseOnScreen = 1
parent:Dyn = c_PascalProperty
children = 0
token:tag = 'default', 'implements', 'index', 'nodefault'
token:tag = 'read', 'readonly', 'stored', 'write', 'writeonly'
token:start:separators = @specs, @eol
token:end:separators = @specs, @eol
txt:colorFG = 0xAA33BB
txt:bold = 1
lexClass:
name = c_KeywordsExport
ParseOnScreen = 1
parent:Dyn = c_PascalExport
children = 0
token:tag = 'external', 'name', 'index'
token:start:separators = @specs, @eol
token:end:separators = @specs, @eol
txt:colorFG = 0xAA33BB
txt:bold = 1
lexClass:
name = c_KeywordsClass
ParseOnScreen = 1
parent:Dyn = c_PascalClass
children = 0
token:tag = 'private', 'protected', 'public', 'published'
token:tag = 'dynamic', 'override', 'reintroduce', 'virtual'
token:tag = 'default', 'message'
// .NET
token:tag = 'strict', 'helper', 'sealed', 'final', 'static'
token:start:separators = @specs, @eol
token:end:separators = @specs, @eol
txt:colorFG = 0xAA33BB
txt:bold = 1
lexClass:
name = c_KeywordsInternal
ParseOnScreen = 1
parent:Dyn = c_PascalClass
children = 0
token:tag = 'abstract', 'asm', 'assembler', 'automated'
token:tag = 'begin', 'break', 'case', 'cdecl', 'class', 'constructor', 'contains', 'continue'
token:tag = 'deprecated', 'destructor', 'dispid', 'dispinterface', 'do', 'downto'
token:tag = 'else', 'end', 'except', 'exit', 'experimental', 'export', 'exports', 'external'
token:tag = 'far', 'finalization', 'finally', 'for', 'forward', 'function'
token:tag = 'goto', 'if', 'implementation', 'inherited', 'initialization', 'inline', 'interface', 'interrupt'
token:tag = 'label', 'library', 'near', 'object', 'on', 'operator', 'overload'
token:tag = 'package', 'packed', 'pascal', 'platform', 'procedure', 'program'
token:tag = 'raise', 'record', 'repeat', 'requires', 'resident', 'result', 'resourcestring'
token:tag = 'safecall', 'set', 'self', 'stdcall', 'register'
token:tag = 'then', 'to', 'try', 'type'
token:tag = 'unit', 'until', 'uses', 'while', 'with'
// .NET unsafe
token:tag = 'absolute'
//token:tag = '', '', '', '', '', '', ''
token:start:separators = @specs, @eol
token:end:separators = @specs, @eol
txt:colorFG = 0xAA33BB
txt:bold = 1

View file

@ -0,0 +1,473 @@
//=======================================================================
//================ Lex class support ====================================
//=======================================================================
// lexClass:
// + name = c_CPPString
// + parent:file = <*.h|*.cpp|*.c>
// + parent = c_CPP
// + parent:dyn = c_CPP
//
// + children = 0
// + children = class1, class2, ...
//
// previous:class =
// previous:tag =
// previous:tag:separators =
//
// start:class =
// start:Tag = '"'
//
// skip:Tag = '\"'
//
// end:class = //
// end:class:Parent = this
// end:Tag = '"'
// end:separators = ' '
//
// Token:tag = 'if', 'for', 'while', 'do'
// Token:start:separators =
// Token:end:separators =
//-----------------------------------------------------------------------
//---------------- Attributes -------------------------------------------
//-----------------------------------------------------------------------
// txt:colorFG = 0xffc0c0 // color value in hex format. default: black
// txt:colorBK = 0xffc0c0 // color value in hex format. default: white
//
// txt:colorSelFG = 0xffc0c0 // color value in hex format. default: white
// txt:colorSelBK = 0xffc0c0 // color value in hex format. default: black
//
// txt:Bold = 1 // {1,0} default: 0
// txt:Italic = 1 // {1,0} default: 0
// txt:Underline = 1 // {1,0} default: 0
//
// caseSensitive = 1 // {1,0} default: 0
//
// Collapsable = 1 // {1,0} default: 0
// CollapsedText = '/*...*/' // quoted string value. default: '[..]'
//
// ParseOnScreen = 1 // {1,0} default: 0
/////////////////////////////////////////////////////////////////////////
//=======================================================================
//================ Variables support ====================================
//=======================================================================
// NON operation - example: @alpha:not
//
// @alpha = a-z, A-Z
// @digit = 0-9
// @HexDdigit = 0-9, a-f, A-F
// @specs = "~`!@#$%^&*()_-+=\\|{}[];:'\",.<>/?"
// @EOL = End Of Line
//---------------------------------------------
// special tags: '\t', '\r', '\n'
/////////////////////////////////////////////////////////////////////////
lexClass:
name = c_LEX_CLASS
parent:file = <*.schclass>
caseSensitive = 0
//txt:colorBK = 0xfff7ff
lexClass:
name = c_LexCommentSL
parent:dyn = c_LEX_CLASS
children = 0
start:tag ='//'
end:tag = @eol
txt:colorFG = 0x00A000
lexClass:
name = c_LexClass_section_header
parent = c_LEX_CLASS, c_LexClass_section
children = 0
Token:tag = 'lexClass:'
Token:start:separators = @eol, ' ', '\t'
Token:end:separators = @eol, ' ', '\t'
txt:colorFG = 0x0000FF
txt:colorBK = 0xAAAAAA
txt:Bold = 1
lexClass:
name = c_LexClass_section
parent = c_LEX_CLASS, c_LexClass_section
start:class = c_LexClass_section_header
//end:separators = 'lexClass:'
end:class = c_LexClass_section_end
txt:colorFG = 0xFF0000
Collapsable = 1
lexClass:
name = c_LexClass_section_end
parent = c_LexClass_section
previous:tag = @eol
previous:tag:separators = ' ', '\t'
start:tag = '//:lexClass'
end:tag = @EOL
txt:colorFG = 0x00A000
txt:colorBK = 0xE0E0E0
//txt:bold = 1
lexClass:
name = c_LexClass_CommaSeparator
ParseOnScreen = 0
parent:dyn = c_LexClass_section
children = 0
token:tag = ','
txt:colorFG = 0x808080
txt:Bold = 0
lexClass:
name = c_LexClass_Tag_str
ParseOnScreen = 0
parent:dyn = c_LexClass_section
children = c_LexClass_Tag_str_specs
start:tag = '\''
end:tag = '\'', @eol
txt:colorFG = 0xA00000
lexClass:
name = c_LexClass_Tag_str_specs
ParseOnScreen = 0
parent = c_LexClass_Tag_str
children = 0
Token:tag = '\\\\'
Token:tag = '\\t', '\\n', '\\r', '\\a', '\\b', '\\v', '\\f', '\\\''
txt:colorFG = 0xC00000
txt:bold = 1
lexClass:
name = c_LexClass_Tag_var
ParseOnScreen = 0
parent:dyn = c_LexClass_section
children = 0
token:tag = '@alpha:not', '@digit:not', '@HexDigit:not', '@specs:not', '@EOL:not'
token:tag = '@alpha', '@digit', '@HexDdigit', '@specs', '@EOL'
Token:start:separators = '=', ' ', '\t', ','
Token:end:separators = ' ', '\t', ',', @EOL
txt:colorFG = 0x00A000
txt:Bold = 1
lexClass:
name = c_LexClass_color
ParseOnScreen = 0
parent:dyn = c_LexClass_section
children = 0
start:tag = '0x'
end:tag = @HexDigit:not
txt:colorFG = 0x8000FF
lexClass:
name = c_LexClass_number
ParseOnScreen = 0
parent:dyn = c_LexClass_section
children = 0
start:tag = @digit
end:tag = @digit:not
txt:colorFG = 0x000080
//-- NAME -------------------------------------------------
lexClass:
name = c_LexClass_Prop_Name_name_part
ParseOnScreen = 0
parent = c_LexClass_section
children = 0
token:tag = 'name'
txt:colorFG = 0x505050
txt:colorBK = 0xEEEEEE
txt:Bold = 1
lexClass:
name = c_LexClass_Prop_Name
ParseOnScreen = 0
parent = c_LexClass_section
children = c_LexClass_Prop_EQ, c_LexClass_Prop_Name_value_part
children = c_LexCommentSL
start:class = c_LexClass_Prop_Name_name_part
end:tag = @eol
txt:colorBK = 0xEEEEEE
lexClass:
name = c_LexClass_Prop_Name_value_part
ParseOnScreen = 0
parent = c_LexClass_Prop_Name
children = c_LexClass_ClassName
start:class = c_LexClass_Prop_EQ
end:class = c_LexClass_ClassName
txt:bold = 1
//-- PARENT:file -------------------------------------------------
lexClass:
name = c_LexClass_Prop_ParentFile_name_part
ParseOnScreen = 0
parent = c_LexClass_section
children = 0
token:tag = 'parent:file'
txt:colorFG = 0x505050
txt:colorBK = 0xDDDDDD
txt:Underline = 1
txt:Bold = 1
lexClass:
name = c_LexClass_Prop_Parent_file
ParseOnScreen = 0
parent = c_LexClass_section
children = c_LexClass_Prop_EQ
children = c_LexClass_Prop_Parent2_value_part
start:class = c_LexClass_Prop_ParentFile_name_part
end:tag = @eol
lexClass:
name = c_LexClass_Prop_Parent2_value_part
ParseOnScreen = 0
parent = c_LexClass_Prop_Parent_file
children = c_LexClass_file_ext_list
children = c_LexCommentSL
start:class = c_LexClass_Prop_EQ
end:separators = @eol
lexClass:
name = c_LexClass_file_ext_list
ParseOnScreen = 0
parent = c_LexClass_Prop_Parent2_value_part
children = c_LexClass_file_ext1, c_LexClass_file_ext2
previous:tag = '='
previous:tag:separators = ' ', '\t'
start:tag = '<'
end:tag = '>'
txt:colorFG = 0x0000F0
lexClass:
name = c_LexClass_file_ext1
ParseOnScreen = 0
parent = c_LexClass_file_ext_list
children = 0
previous:tag = '<'
previous:tag:separators = ' ', '\t'
start:tag = '*.'
end:separators = '|', '>', ' ', '\t'
txt:colorFG = 0x800040
lexClass:
name = c_LexClass_file_ext2
ParseOnScreen = 0
parent = c_LexClass_file_ext_list
children = 0
previous:tag = '|'
previous:tag:separators = ' ', '\t'
start:tag = '*.'
end:separators = '|', '>', ' ', '\t'
txt:colorFG = 0x800040
//-- PARENT (+dyn) -------------------------------------------------
lexClass:
name = c_LexClass_Prop_Parent_name_part
ParseOnScreen = 0
parent = c_LexClass_section
children = 0
token:tag = 'parent:dyn', 'parent'
txt:colorFG = 0x505050
txt:Underline = 1
lexClass:
name = c_LexClass_Prop_Parent
ParseOnScreen = 0
parent = c_LexClass_section
children = c_LexClass_Prop_EQ
children = c_LexClass_ClassName_List
start:class = c_LexClass_Prop_Parent_name_part
end:tag = @eol
//-- CHILDREN -------------------------------------------------
lexClass:
name = c_LexClass_Prop_Children_name_part
ParseOnScreen = 0
parent = c_LexClass_section
children = 0
token:tag = 'children'
txt:colorFG = 0x505050
lexClass:
name = c_LexClass_Prop_Children
ParseOnScreen = 0
parent = c_LexClass_section
children = c_LexClass_Prop_EQ
children = c_LexClass_Prop_Children_value1_part
children = c_LexClass_ClassName_List
start:class = c_LexClass_Prop_Children_name_part
end:separators = @eol
lexClass:
name = c_LexClass_Prop_Children_value1_part
ParseOnScreen = 0
parent = c_LexClass_Prop_Children
children = c_LexClass_Prop_Children_value1_error
//children = c_LexCommentSL
previous:tag = '='
previous:tag:separators = ' ', '\t'
start:tag = '0'
end:separators = @eol
txt:colorFG = 0x000090
txt:bold = 1
lexClass:
name = c_LexClass_Prop_Children_value1_error
ParseOnScreen = 0
parent = c_LexClass_Prop_Children_value1_part
children = c_LexCommentSL
previous:class = c_LexClass_Prop_Children_value1_part
end:separators = @eol
txt:colorFG = 0xFF0000
txt:bold = 0
//////////////////////////////////////////////////////////////////////////////
lexClass:
name = c_LexClass_Prop_EQ
ParseOnScreen = 0
parent:dyn = c_LexClass_section
children = 0
token:tag = '='
txt:colorFG = 0x0000B0
txt:Bold = 0
lexClass:
name = c_LexClass_ClassName
ParseOnScreen = 0
//parent:dyn = c_LexClass_section
parent = c_LexClass_Prop_Name_value_part //, c_LexClass_ClassName_List,
children = 0
previous:tag = '='
previous:tag:separators = ' ', '\t'
start:tag = @alpha, '_'
skip:Tag = @alpha, @digit, '_'
end:separators = @alpha:not, @digit:not
txt:colorFG = 0x0000EE
lexClass:
name = c_LexClass_ClassName_List
ParseOnScreen = 0
parent:dyn = c_LexClass_section
children = c_LexClass_ClassName_List1
children = c_LexClass_ClassName_List2
children = c_LexClass_CommaSeparator
children = c_LexCommentSL
previous:tag = '='
previous:tag:separators = ' ', '\t'
start:tag = @alpha, '_'
end:separators = @eol
lexClass: name = c_LexClass_ClassName_List1
ParseOnScreen = 0
parent = c_LexClass_ClassName_List
children = 0
start:class = c_LexClass_ClassName_List
//previous:class = c_LexClass_ClassName_List
skip:Tag = @alpha, @digit, '_'
end:separators = @alpha:not, @digit:not
txt:colorFG = 0x5000EE
lexClass: name = c_LexClass_ClassName_List2
ParseOnScreen = 0
parent = c_LexClass_ClassName_List
children = 0
previous:tag = ','
previous:tag:separators = ' ', '\t'
start:tag = @alpha, '_'
skip:Tag = @alpha, @digit, '_'
end:separators = @alpha:not, @digit:not
txt:colorFG = 0x5000EE
//////////////////////////////////////////////////////////////////////////////
lexClass:
name = c_LexClass_Prop_ParseOnScreen
ParseOnScreen = 0
parent = c_LexClass_section
children = 0
token:tag = 'ParseOnScreen'
txt:colorFG = 0x60AF60
txt:colorBK = 0xDFCFFF
//txt:Bold = 1
txt:Italic = 0
lexClass:
name = c_LexClass_AttributeName
ParseOnScreen = 0
parent = c_LexClass_section
children = 0
token:tag = 'previous:class', 'previous:tag:separators', 'previous:tag'
token:tag = 'start:class', 'start:Tag'
token:tag = 'skip:Tag'
token:tag = 'end:class', 'end:class:parent', 'end:Tag', 'end:separators'
token:tag = 'Token:tag', 'Token:start:separators', 'Token:end:separators'
token:tag = 'caseSensitive', 'Collapsable', 'CollapsedText', 'ParseOnScreen'
token:tag = 'RecurrenceDepth', 'DisplayName'
token:tag = 'txt:colorFG', 'txt:colorBK', 'txt:colorSelFG', 'txt:colorSelBK'
token:tag = 'txt:Bold', 'txt:Italic', 'txt:Underline'
txt:colorFG = 0x505050
//txt:Bold = 1
txt:Italic = 1
lexClass:
name = c_LexClass_GlobalAttributeName
ParseOnScreen = 0
parent = c_LexClass_section
children = 0
txt:Bold = 1
txt:colorFG = 0x0091E0
token:tag = 'global:FirstParseInSeparateThread'
token:tag = 'global:EditReparceInSeparateThread'
token:tag = 'global:EditReparceTimeout_ms'
token:tag = 'global:MaxBackParseOffset'
token:tag = 'global:OnScreenSchCacheLifeTime_sec'
token:tag = 'global:ParserThreadIdleLifeTime_sec'

View file

@ -0,0 +1,401 @@
//=======================================================================
//================ Lex class support ====================================
//=======================================================================
// lexClass:
// name = c_CPPString
// parent = c_CPP
// parent:dyn = c_CPP
//
// children = 0
// children = class1, class2, ...
//
// previous:class =
// previous:tag =
// previous:tag:separators =
//
// start:class =
// start:Tag = '"'
//
// skip:Tag = '\"'
//
// end:class = //
// end:Tag = '"'
// end:separators = ' '
//
// Token:tag = 'if', 'for', 'while', 'do'
// Token:start:separators =
// Token:end:separators =
//-----------------------------------------------------------------------
//---------------- Attributes -------------------------------------------
//-----------------------------------------------------------------------
// txt:colorFG = 0xffc0c0 // color value in hex format. default: black
// txt:colorBK = 0xffc0c0 // color value in hex format. default: white
//
// txt:colorSelFG = 0xffc0c0 // color value in hex format. default: white
// txt:colorSelBK = 0xffc0c0 // color value in hex format. default: black
//
// txt:Bold = 1 // {1,0} default: 0
// txt:Italic = 1 // {1,0} default: 0
// txt:Underline = 1 // {1,0} default: 0
//
// caseSensitive = 1 // {1,0} default: 0
//
// Collapsable = 1 // {1,0} default: 0
// CollapsedText = '/*...*/' // quoted string value. default: '[..]'
//
// ParseOnScreen = 1 // {1,0} default: 0
//
//-----------------------------------------------------------------------
//* Global attributes ***************************************************
//-----------------------------------------------------------------------
// global:FirstParseInSeparateThread = 1 // {0,1} default=1
// global:EditReparceInSeparateThread = 1 // {0,1} default=1
// global:ConfigChangedReparceInSeparateThread= 1 // {0,1} default=1
// global:EditReparceTimeout_ms = 500 // default= 500 ms; time out for start reparse after last key was pressed.
// global:MaxBackParseOffset = 100 // default= 100 chars; maximum back buffer size. Some times parser look back for the text from current position.
// global:OnScreenSchCacheLifeTime_sec = 180 // default= 180 sec; -1 and 0 means infinite; time out for on screen parsed pices of text. for memory using optimization.
// global:ParserThreadIdleLifeTime_sec = 60 // default=60 sec; -1 and 0 means infinite; time out for existing of parser thread when parser idle (no parse requests).
/////////////////////////////////////////////////////////////////////////
//=======================================================================
//================ Variables support ====================================
//=======================================================================
// NON operation - example: @alpha:not
//
// @alpha = a-z, A-Z
// @digit = 0-9
// @HexDdigit = 0-9, a-f, A-F
// @specs = "~`!@#$%^&*()_-+=\\|{}[];:'\",.<>/?"
// @EOL = End Of Line
//---------------------------------------------
// special tags: '\\', '\'', '\t', '\r', '\n'
/////////////////////////////////////////////////////////////////////////
/// SQL ///
lexClass:
parent:file = <*.sql>
name = c_SQL
caseSensitive = 0
txt:colorFG = 0x000000
global:EditReparceTimeout_ms = 15000
global:OnScreenSchcacheLifeTime_sec = 0
global:ParserThreadIdleLifeTime_sec = 300
//:lexClass
lexClass:
name = c_TSQL_Batch_Separator
parent = c_SQL
children = 0
previous:tag = '\t', ' ', @eol
start:Tag = 'go'
//end:Tag = '\t', ' ', @eol
end:Separators = '\t', ' ', @eol
txt:colorFG = 0x0000FF
//:lexClass
//lexClass:
// name = c_TSQL_Batch_Block
// parent = c_SQL
// //children = c_PascalCodeBlock_End
// start:CLASS = c_TSQL_Batch_Separator
// end:CLASS = c_TSQL_Batch_Separator
// Collapsable = 1
// CollapsedText = '...'
//** (1) **
lexClass:
name = c_TSQL_CodeBlock_Frame
parent = c_SQL, c_TSQL_CodeBlock
RecurrenceDepth = 15
//children = c_TSQL_CodeBlock
previous:tag = ';', ' ', '\t', @eol
Start:Tag = 'begin ', 'begin\t', 'begin\r', 'begin\n'
End:Tag = ' end', '\tend', '\rend', '\nend'
End:separators = ';', ' ', '\t', @eol
Collapsable = 1
CollapsedText = '...'
txt:colorFG = 0x0000FF
txt:colorBK = 0xFFFFFF
txt:Bold = 1
//:lexClass
lexClass:
name = c_TSQL_CodeBlock
parent = c_TSQL_CodeBlock_Frame
previous:class = c_TSQL_CodeBlock_Frame
end:separators = ' end;', '\tend;', '\rend;', '\nend;'
end:separators = ' end ', '\tend ', '\rend ', '\nend '
end:separators = ' end\t', '\tend\t', '\rend\t', '\nend\t'
end:separators = ' end\r', '\tend\r', '\rend\r', '\nend\r'
end:separators = ' end\n', '\tend\n', '\rend\n', '\nend\n'
txt:colorFG = 0x000000
txt:colorBK = 0xFFFFFF
txt:Bold = 0
RecurrenceDepth = 15
//:lexClass
//lexClass:
// name = c_TSQL_CodeBlock_Start
// parent = c_SQL, c_TSQL_CodeBlock
// children = 0
// Token:Tag = 'begin'
// Token:start:separators = ';', ' ', '\t', @eol
// Token:end:separators = ' ', '\t', @eol
//
// txt:colorFG = 0x0000FF
// txt:Underline = 1
////:lexClass
//
//lexClass:
// name = c_TSQL_CodeBlock_End
// parent = c_SQL, c_TSQL_CodeBlock
// children = 0
// Token:tag = 'end'
// Token:start:separators = ';', ' ', '\t', @specs, @eol
// Token:end:separators = ';', ' ', '\t', @specs, @eol
// txt:colorFG = 0x0000FF
// //txt:colorBK = 0x80808f
// txt:bold = 1
//
////:lexClass
//
//lexClass:
// name = c_TSQL_CodeBlock
// parent = c_SQL, c_TSQL_CodeBlock
// //children = c_TSQL_CodeBlock_End
//
// previous:class = c_TSQL_CodeBlock_Start
// //start:class = c_TSQL_CodeBlock_Start
// end:class = c_TSQL_CodeBlock_End
// end:CLASS:Parent= this
//
// Collapsable = 1
// CollapsedText = '...'
//
// //RestartRunLoop = 1
//
// txt:colorBK = 0xFF8000
////:lexClass
//
//
////lexClass:
// name = c_TSQL_CodeBlock
// parent:dyn = c_SQL, c_TSQL_CodeBlock
// start:Tag = 'begin'
// end:tag = 'ebd'
// Collapsable = 1
// CollapsedText = '...'
//lexClass:
// name = c_TSQL_Proc_Start
// parent = c_SQL
// children = 0
// previous:tag = ' ', '\t', @eol
// start:Tag = 'as'
// end:Tag = '\t', ' ', @eol
// end:Separators = '\t', ' ', @eol
// txt:colorFG = 0x0000FF
//lexClass:
// name = c_TSQL_Proc_End
// parent = c_SQL
// children = 0
// previous:tag = @specs, ' ', '\t', @eol
// start:Tag = 'go'
// end:Separators = @specs, @eol
// txt:colorFG = 0x0000FF
//lexClass:
// name = c_TSQL_Proc_Body
// parent = c_SQL
// children = c_TSQL_Proc_End
// start:CLASS = c_TSQL_Proc_Start
// end:CLASS = c_TSQL_Proc_End
// Collapsable = 1
// CollapsedText = '...'
lexClass:
name = c_SQLCommentML
parent:dyn = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
children = 0
start:Tag ='/*'
end:Tag ='*/'
Collapsable = 1
CollapsedText = '/**/'
txt:colorfg = 0x80FF00
lexClass:
name = c_SQLCommentSL
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
children = c_SQLString_char
start:tag ='--'
skip:Tag = '\\\r\n', '\\\n\r', '\\\n', '\\\r'
end:tag = @eol
txt:colorFG = 0x80FF00
lexClass:
name = c_SQL_A_OPERATORS
ParseOnScreen = 1
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
Token:Tag = '<', '>', '=', '+', '-', '!', '(', ')'
txt:colorfg = 0xC0C0C0
lexClass:
name = c_SQL_L_OPERATORS
ParseOnScreen = 1
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
Token:Tag = 'AND', 'OR', 'NOT', 'EXISTS', 'JOIN'
token:start:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
token:end:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
txt:colorfg = 0xC0C0C0
lexClass:
name = c_SQLString_char
parent:dyn = c_SQL, c_TSQL_CodeBlock
children = 0
start:Tag = '\''
end:Tag = '\'', @eol
txt:colorFG = 0xE00000
lexClass:
name = c_TSQL_Key_Words
ParseOnScreen = 1
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
Token:Tag = 'ABSOLUTE', 'ACTION', 'ADA', 'ADD', 'ALL', 'ALLOCATE', 'ALTER', 'ANY'
Token:Tag = 'ARE', 'AS', 'ASC', 'ASSERTION', 'AT', 'AUTHORIZATION', 'AVG', 'BEGIN'
Token:Tag = 'BETWEEN', 'BIT', 'BIT_LENGTH', 'BOTH', 'BY', 'CASCADE', 'CASCADED', 'CASE'
Token:Tag = 'CAST', 'CATALOG', 'CHAR', 'CHAR_LENGTH', 'CHARACTER', 'CHARACTER_LENGTH'
Token:Tag = 'CHECK', 'CLOSE', 'COALESCE', 'COLLATE', 'COLLATION', 'COLUMN', 'COMMIT'
Token:Tag = 'CONNECT', 'CONNECTION', 'CONSTRAINT', 'CONSTRAINTS', 'CONTINUE', 'CONVERT'
Token:Tag = 'CORRESPONDING', 'COUNT', 'CREATE', 'CROSS', 'CURRENT', 'CURRENT_DATE'
Token:Tag = 'CURRENT_TIME', 'CURRENT_TIMESTAMP', 'CURRENT_USER', 'CURSOR', 'DATE', 'DAY'
Token:Tag = 'DEALLOCATE', 'DEC', 'DECIMAL', 'DECLARE', 'DEFAULT', 'DEFERRABLE', 'DEFERRED'
Token:Tag = 'DELETE', 'DESC', 'DESCRIBE', 'DESCRIPTOR', 'DIAGNOSTICS', 'DISCONNECT'
Token:Tag = 'DISTINCT', 'DOMAIN', 'DOUBLE', 'DROP', 'ELSE', 'END', 'END-EXEC', 'ESCAPE'
Token:Tag = 'EXCEPT', 'EXCEPTION', 'EXEC', 'EXECUTE', 'EXISTS', 'EXTERNAL', 'EXTRACT'
Token:Tag = 'FALSE', 'FETCH', 'FIRST', 'FLOAT', 'FOR', 'FOREIGN', 'FORTRAN', 'FOUND'
Token:Tag = 'FROM', 'FULL', 'GET', 'GLOBAL', 'GO', 'GOTO', 'GRANT', 'GROUP', 'HAVING'
Token:Tag = 'HOUR', 'IDENTITY', 'IMMEDIATE', 'IN', 'INCLUDE', 'INDEX', 'INDICATOR'
Token:Tag = 'INITIALLY', 'INNER', 'INPUT', 'INSENSITIVE', 'INSERT', 'INT', 'INTEGER'
Token:Tag = 'INTERSECT', 'INTERVAL', 'INTO', 'IS', 'ISOLATION', 'JOIN', 'KEY', 'LANGUAGE'
Token:Tag = 'LAST', 'LEADING', 'LEFT', 'LEVEL', 'LIKE', 'LOCAL', 'LOWER', 'MATCH', 'MAX'
Token:Tag = 'MIN', 'MINUTE', 'MODULE', 'MONTH', 'NAMES', 'NATIONAL', 'NATURAL', 'NCHAR'
Token:Tag = 'NEXT', 'NO', 'NONE', 'NOT', 'NULL', 'NULLIF', 'NUMERIC', 'OCTET_LENGTH'
Token:Tag = 'OF', 'ON', 'ONLY', 'OPEN', 'OPTION', 'OR', 'ORDER', 'OUTER', 'OUTPUT'
Token:Tag = 'OVERLAPS', 'PAD', 'PARTIAL', 'PASCAL', 'POSITION', 'PRECISION', 'PREPARE'
Token:Tag = 'PRESERVE', 'PRIMARY', 'PRIOR', 'PRIVILEGES', 'PROCEDURE', 'PUBLIC', 'READ'
Token:Tag = 'REAL', 'REFERENCES', 'RELATIVE', 'RESTRICT', 'return', 'returns', 'REVOKE', 'RIGHT', 'ROLLBACK'
Token:Tag = 'ROWS', 'SCHEMA', 'SCROLL', 'SECOND', 'SECTION', 'SELECT', 'SESSION'
Token:Tag = 'SESSION_USER', 'SET', 'SIZE', 'SMALLINT', 'SOME', 'SPACE', 'SQL', 'SQLCA'
Token:Tag = 'SQLCODE', 'SQLERROR', 'SQLSTATE', 'SQLWARNING', 'SUBSTRING', 'SUM', 'SYSTEM_USER'
Token:Tag = 'TABLE', 'TEMPORARY', 'THEN', 'TIME', 'TIMESTAMP', 'TIMEZONE_HOUR', 'TIMEZONE_MINUTE'
Token:Tag = 'TO', 'TRAILING', 'TRANSACTION', 'TRANSLATE', 'TRANSLATION', 'TRIM', 'TRUE'
Token:Tag = 'UNION', 'UNIQUE', 'UNKNOWN', 'UPDATE', 'UPPER', 'USAGE', 'USER', 'USING'
Token:Tag = 'VALUE', 'VALUES', 'VARCHAR', 'VARYING', 'VIEW', 'WHEN', 'WHENEVER', 'WHERE'
Token:Tag = 'WITH', 'WORK', 'WRITE', 'YEAR', 'ZONE'
txt:colorfg = 0x0000FF
token:start:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
token:end:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
lexClass:
name = c_SQL_Key_Words
ParseOnScreen = 1
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
Token:Tag = 'add', 'all', 'alter', 'and', 'any', 'as', 'asc', 'authorization', 'avg'
Token:Tag = 'backup', 'begin', 'between', 'break', 'browse', 'bulk', 'by', 'cascade'
Token:Tag = 'case', 'check', 'checkpoint', 'close', 'clustered', 'coalesce', 'column'
Token:Tag = 'commit', 'commited', 'compute', 'confirm', 'constraint', 'contains', 'containstable'
Token:Tag = 'continue', 'controlrow', 'convert', 'count', 'create', 'cross', 'current'
Token:Tag = 'current_date', 'current_time', 'current_timestamp', 'current_user', 'cursor'
Token:Tag = 'database', 'dbcc', 'deallocate', 'declare', 'default', 'delete', 'deny'
Token:Tag = 'desc', 'disk', 'distinct', 'distributed', 'double', 'drop', 'dummy', 'dump'
Token:Tag = 'else', 'end', 'errlvl', 'errorexit', 'escape', 'except', 'exec', 'exit'
Token:Tag = 'file', 'fillfactor', 'floppy', 'for', 'foreign', 'freetext', 'freetexttable'
Token:Tag = 'from', 'full', 'goto', 'grant', 'group', 'having', 'holdlock', 'identity'
Token:Tag = 'identity_insert', 'identitycol', 'if', 'in', 'index', 'insert', 'intersect'
Token:Tag = 'into', 'is', 'isolation', 'join', 'key', 'kill', 'left', 'level', 'like'
Token:Tag = 'lineno', 'load', 'max', 'min', 'mirrorexit', 'national', 'nocheck', 'nonclustered'
Token:Tag = 'not', 'null', 'nullif', 'of', 'off', 'offsets', 'on', 'once', 'only', 'open'
Token:Tag = 'opendatasource', 'openquery', 'openrowset', 'option', 'or', 'order', 'outer'
Token:Tag = 'over', 'percent', 'perm', 'permanent', 'pipe', 'plan', 'precision', 'prepare'
Token:Tag = 'primary', 'print', 'privileges', 'proc', 'procedure', 'processexit', 'public'
Token:Tag = 'raiserror', 'readtext', 'reconfigure', 'references', 'repeatable', 'replication', 'restore'
Token:Tag = 'restrict', 'return', 'revoke', 'right', 'rollback', 'rowcount', 'rowguidecol'
Token:Tag = 'rule', 'save', 'schema', 'select', 'serializable', 'session_user', 'set'
Token:Tag = 'setuser', 'shutdown', 'some', 'statistics', 'sum', 'system_user', 'table'
Token:Tag = 'tape', 'temp', 'temporary', 'textsize', 'then', 'to', 'top', 'tran', 'transaction'
Token:Tag = 'trigger', 'truncate', 'tsequal', 'ucommited', 'union', 'unique', 'update'
Token:Tag = 'updatetext', 'use', 'user', 'values', 'varying', 'view', 'waitfor', 'when'
Token:Tag = 'where', 'while', 'with', 'work', 'writetext'
txt:colorfg = 0x0000FF
token:start:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
token:end:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
lexClass:
name = c_TSQL_Functions
ParseOnScreen = 1
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
Token:Tag = 'abs', 'acos', 'all', 'and', 'any', 'ascii', 'asin', 'atan', 'atn2', 'avg'
Token:Tag = 'case', 'cast', 'ceiling', 'CHAR', 'CHARINDEX', 'convert', 'cos', 'current_timestamp'
Token:Tag = 'current_user', 'cursor_status', 'datalenght', 'date', 'dateadd', 'datediff'
Token:Tag = 'datename', 'datepart', 'decode', 'degrees', 'DIFFERENCE', 'exp', 'floor', 'getdate'
Token:Tag = 'identity', 'LEFT', 'LEN', 'log', 'log10', 'LOWER', 'LTRIM', 'NCHAR', 'object_id'
Token:Tag = 'object_name', 'objectproperty', 'odbc', 'openquery', 'openrowset', 'parsename'
Token:Tag = 'PATINDEX', 'power', 'rand', 'readtext', 'REPLACE', 'REPLICATE', 'REVERSE'
Token:Tag = 'RIGHT', 'RTRIM', 'sin', 'SOUNDEX', 'SPACE', 'STR', 'STUFF', 'SUBSTRING'
Token:Tag = 'UNICODE', 'updatetext', 'UPPER', 'PATINDEX', 'TEXTPTR', 'writetext'
Token:Tag = '@@DATEFIRST', '@@OPTIONS', '@@DBTS', '@@REMSERVER', '@@LANGID', '@@SERVERNAME'
Token:Tag = '@@LANGUAGE', '@@SERVICENAME', '@@LOCK_TIMEOUT', '@@SPID', '@@MAX_CONNECTIONS'
Token:Tag = '@@TEXTSIZE', '@@MAX_PRECISION', '@@VERSION', '@@NESTLEVEL'
txt:colorfg = 0xFF0080
token:start:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
token:end:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
lexClass:
name = c_SQL_Set_Operators
ParseOnScreen = 1
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
Token:Tag = 'UNION', 'UNION ALL', 'INTERSECT', 'MINUS'
txt:colorfg = 0xFF0080
token:start:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
token:end:separators = ' ', '\t', ':', ';', '!', '(', ')', '{', '}', @eol
lexClass:
name = c_SQL_ORACLE_Functions
ParseOnScreen = 1
parent = c_SQL, c_TSQL_CodeBlock//,c_TSQL_Batch_Block
Token:Tag = 'ABS', 'ACOS', 'ADD_MONTHS', 'ASCII', 'ASCIISTR', 'ASIN', 'ATAN', 'ATAN2', 'AVG'
Token:Tag = 'BFILENAME', 'BIN_TO_NUM', 'BITAND', 'CAST', 'CEIL', 'CHARTOROWID', 'CHR', 'COALESCE'
Token:Tag = 'COMPOSE', 'CONCAT', 'CONVERT', 'CORR', 'COS', 'COSH', 'COUNT', 'COVAR_POP', 'COVAR_SAMP'
Token:Tag = 'CUME_DIST', 'CURRENT_DATE', 'CURRENT_TIMESTAMP', 'DBTIMEZONE', 'DECODE', 'DECOMPOSE'
Token:Tag = 'DENSE_RANK', 'DEPTH', 'DEREF', 'DUMP', 'EMPTY_BLOB', 'EMPTY_CLOB', 'EXISTSNODE', 'EXP'
Token:Tag = 'EXTRACT', 'EXTRACT', 'EXTRACTVALUE', 'FIRST', 'FIRST_VALUE', 'FLOOR', 'FROM_TZ'
Token:Tag = 'GREATEST', 'GROUP_ID', 'GROUPING', 'GROUPING_ID', 'HEXTORAW', 'INITCAP', 'INSTR'
Token:Tag = 'LAG', 'LAST', 'LAST_DAY', 'LAST_VALUE', 'LEAD', 'LEAST', 'LENGTH', 'LN', 'LOCALTIMESTAMP'
Token:Tag = 'LOG', 'LOWER', 'LPAD', 'LTRIM', 'MAKE_REF', 'MAX', 'MIN', 'MOD', 'MONTHS_BETWEEN', 'NCHR'
Token:Tag = 'NEW_TIME', 'NEXT_DAY', 'NLS_CHARSET_DECL_LEN', 'NLS_CHARSET_ID', 'NLS_CHARSET_NAME', 'NLS_INITCAP'
Token:Tag = 'NLS_LOWER', 'NLSSORT', 'NLS_UPPER', 'NTILE', 'NULLIF', 'NUMTODSINTERVAL', 'NUMTOYMINTERVAL'
Token:Tag = 'NVL', 'NVL2', 'PATH', 'PERCENT_RANK', 'PERCENTILE_CONT', 'PERCENTILE_DISC', 'POWER'
Token:Tag = 'RANK', 'RATIO_TO_REPORT', 'RAWTOHEX', 'RAWTONHEX', 'REF', 'REFTOHEX', 'REGR_'
Token:Tag = 'REPLACE', 'ROUND', 'ROW_NUMBER', 'ROWIDTOCHAR', 'ROWIDTONCHAR', 'RPAD', 'RTRIM'
Token:Tag = 'SESSIONTIMEZONE', 'SIGN', 'SIN', 'SINH', 'SOUNDEX', 'SQRT', 'STDDEV', 'STDDEV_POP'
Token:Tag = 'STDDEV_SAMP', 'SUBSTR', 'SUM', 'SYS_CONNECT_BY_PATH', 'SYS_CONTEXT', 'SYS_DBURIGEN'
Token:Tag = 'SYS_EXTRACT_UTC', 'SYS_GUID', 'SYS_TYPEID', 'SYS_XMLAGG', 'SYS_XMLGEN', 'SYSDATE', 'SYSTIMESTAMP'
Token:Tag = 'TAN', 'TANH', 'TO_CHAR', 'TO_CHAR', 'TO_CLOB', 'TO_DATE', 'TO_DSINTERVAL', 'TO_LOB'
Token:Tag = 'TO_MULTI_BYTE', 'TO_NCHAR', 'TO_NCLOB', 'TO_NUMBER', 'TO_SINGLE_BYTE', 'TO_TIMESTAMP'
Token:Tag = 'TO_TIMESTAMP_TZ', 'TO_YMINTERVAL', 'TRANSLATE', 'TRANSLATE', 'USING', 'TREAT', 'TRIM'
Token:Tag = 'TRUNC', 'TZ_OFFSET', 'UID', 'UNISTR', 'UPDATEXML', 'UPPER', 'USER', 'USERENV', 'VALUE'
Token:Tag = 'VAR_POP', 'VAR_SAMP', 'VARIANCE', 'VSIZE', 'WIDTH_BUCKET', 'XMLAGG', 'XMLCOLATTVAL', 'XMLCONCAT'
Token:Tag = 'XMLELEMENT', 'XMLFOREST', 'XMLSEQUENCE', 'XMLTRANSFORM', 'ROUND','TRUNC'

View file

@ -0,0 +1,12 @@
[Schemes]
CPP=Schemas/_cpp.schclass ; Visual C++
HTML=Schemas/_HTML_ASP.schclass ; HTML and ASP
schclass=Schemas/_schclass.schclass ; Codejock Schema
NSI=Schemas/_nsi.schclass ; Nullsoft Installer
Pascal=Schemas/_pascal.schclass ; Pascal
INI=Schemas/_ini.schclass ; INI Files
SQL=Schemas/_sql.schclass ; SQL Query
[Themes]
Default=Themes/colorSchema0.ini
Alternative=Themes/colorSchema1.ini

View file

@ -0,0 +1,24 @@
; parent schema
; SchemaName=Default
[c_CPP]
colorBK =0xFFFFFF
;colorBK = 0xafbfcf
colorFG =0x000000
[c_URL]
colorFG=0x0000FF
italic=1
[c_CPPCommentML]
colorFG=0x008200
[c_CPPCommentSL]
colorFG=0x008200
;colorBK=0xccff00
;colorFG=0xaa1100
;colorSelFG=0x00A000
;colorSelBK=0xd0d0d0
[c_Token1]
colorFG=0x0011AA

View file

@ -0,0 +1,13 @@
SchemaName=Alternative
[Main]
ParentSchema=Default
[c_URL]
colorBK=0xCCFF00
colorFG=0xAA1100
Bold =1
[c_CPPCommentSL]
colorFG=0xCCFF00
colorBK=0xAA1100
Italic=1