You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			278 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			Plaintext
		
	
		
		
			
		
	
	
			278 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			Plaintext
		
	
| 
											2 years ago
										 | //======================================================================= | ||
|  | //================ 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		= <*.vb|*.vbs> | ||
|  | 	name			= c_VBS | ||
|  | 	//caseSensitive	= 0 | ||
|  | 	txt:colorFG	= 0x000000 | ||
|  | 	DisplayName = 'Normal Text' | ||
|  | 
 | ||
|  | //============================================================================= | ||
|  | //*** VB, VB Script colorization *** ========================================== | ||
|  | //============================================================================= | ||
|  | lexClass: | ||
|  | 	name		= c_VBScriptComment | ||
|  | 	parent		= c_VBS | ||
|  | 	start:Tag	= '\'' | ||
|  | 	end:separators = @EOL | ||
|  | 	txt:colorFG	= 0x008200 | ||
|  | 	DisplayName = 'VB Script Comment' | ||
|  | //:lexClass | ||
|  | 
 | ||
|  | lexClass: | ||
|  | 	name		= c_VBScriptStr | ||
|  | 	parent		= c_VBS | ||
|  | 	ParseOnScreen = 0	 | ||
|  | 	start:Tag	='"' | ||
|  | 	end:Tag		='"', @EOL | ||
|  | 	txt:colorFG	= 0x840000 | ||
|  | 	DisplayName = 'VB Script String' | ||
|  | //:lexClass | ||
|  | 
 | ||
|  | lexClass: | ||
|  | 	name			= c_VBScriptNumber10 | ||
|  | 	parent			= c_VBS | ||
|  | 	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_VBS | ||
|  | 	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_VBS | ||
|  | 	ParseOnScreen = 0 | ||
|  | 
 | ||
|  | 	token:start:separators	= ' ', '\t', '<%=', '<%', '>', '(', @eol | ||
|  | 	token:end:separators	= ' ', '\t', '%>', '<', '(', ')', @eol | ||
|  | 	 | ||
|  | 	txt:colorFG	= 0x8000FF | ||
|  | 		 | ||
|  |     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 | ||
|  | //            "~" | ||
|  | ///////////////////////////////////////////////////////////// | ||
|  | 
 | ||
|  | //============================================================================= |