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.
		
		
		
		
		
			
		
			
				
	
	
		
			355 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			Plaintext
		
	
			
		
		
	
	
			355 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			Plaintext
		
	
| //=======================================================================
 | |
| //================ 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_LUA	
 | |
| 	parent:file		= <*.lua>	
 | |
| 	caseSensitive		= 1
 | |
| 
 | |
| 	//global:FirstParseInSeparateThread	= 0
 | |
| 	global:EditReparceInSeparateThread	= 1
 | |
| 
 | |
| 	//global:EditReparceTimeout_ms	= 250
 | |
| 	//global:MaxBackParseOffset		= 100
 | |
| 	//global:OnScreenSchCacheLifeTime_sec = 60
 | |
| 	//global:ParserThreadIdleLifeTime_sec = -1
 | |
| 
 | |
| 
 | |
| lexClass: 	
 | |
| 	name		= c_LUACodeBlock
 | |
| 	parent:dyn	= c_LUA, c_LUACodeBlock
 | |
| 	start:Tag	= '{'
 | |
| 	end:tag		= '}'
 | |
| // start:Tag	= 'do', 'for', 'function', 'if', 'while'
 | |
| // end:tag		= 'end'
 | |
| 	Collapsable	= 1 
 | |
| 	CollapsedText	= '{ ... }'
 | |
| 	DisplayName		= 'Curly Braces'
 | |
| 	
 | |
| lexClass: 	
 | |
| 	name			= c_URL	
 | |
| 	ParseOnScreen	= 0
 | |
| 	parent:dyn		= c_LUA, c_LUACodeBlock
 | |
| 	caseSensitive	= 0
 | |
| 	children		= 0
 | |
| 	previous:tag	= @specs, ' ', '\t', @eol
 | |
| 	start:Tag		= 'http://'
 | |
| 	end:separators	= ' ', '\t', @eol
 | |
| 	DisplayName		= 'URL'
 | |
| 
 | |
| lexClass: 	
 | |
| 	name			= c_String	
 | |
| 	parent:dyn		= c_LUA, c_LUACodeBlock
 | |
| 	children		= c_URL
 | |
| 	start:Tag		= '"'
 | |
| 	skip:Tag		= '\\"', '\\\r\n', '\\\n\r', '\\\n', '\\\r'	
 | |
| 	end:Tag			= '"', @eol
 | |
| 	txt:colorFG		= 0x009090
 | |
| 	//txt:colorFG	= 0xA31515
 | |
| 	DisplayName		= 'String (Double Quotes)'
 | |
| 
 | |
| lexClass: 	
 | |
| 	name			= c_String_char	
 | |
| 	parent:dyn		= c_LUA, c_LUACodeBlock
 | |
| 	children		= 0
 | |
| 	start:Tag		= '\''
 | |
| 	//skip:Tag		= '\\"', '\\\r\n', '\\\n\r', '\\\n', '\\\r'	
 | |
| 	end:Tag			= '\'', @eol
 | |
| 	txt:colorFG		= 0x009090
 | |
| 	//txt:colorFG	= 0xA31515
 | |
| 	DisplayName		= 'String (Single Quotes)'
 | |
| 
 | |
| lexClass:
 | |
| 	name		= c_LUACommentML_Start
 | |
| 	parent		= c_LUA, c_LUACodeBlock
 | |
| 	children	= c_URL	
 | |
| 	start:Tag	= '--[['
 | |
| 	end:Separators	= @eol    
 | |
| 	txt:colorFG	= 0x00A000
 | |
| 
 | |
| lexClass:
 | |
| 	name		= c_LUACommentML_End
 | |
| 	parent		= c_LUA, c_LUACodeBlock, c_LUACommentML
 | |
| 	children	= c_URL	
 | |
| 	start:Tag	= '--]]'
 | |
| 	end:Separators	= @eol    
 | |
| 	txt:colorFG	= 0x00A000
 | |
| 
 | |
| lexClass:
 | |
| 	name		= c_LUACommentML
 | |
| 	parent		= c_LUA, c_LUACodeBlock
 | |
| 	children	= c_LUACommentML_End
 | |
| 	start:CLASS	= c_LUACommentML_Start
 | |
| 	end:CLASS	= c_LUACommentML_End
 | |
| 	Collapsable	= 1
 | |
| 	txt:colorFG	= 0x00A000
 | |
| 	DisplayName	= 'Comment (Multi-Line)'
 | |
| 
 | |
| lexClass:	
 | |
| 	name		= c_LUACommentSL
 | |
| 	parent		= c_LUA, c_LUACodeBlock
 | |
| 	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_LUAKeywords
 | |
| 	ParseOnScreen	= 0
 | |
| 	parent:Dyn	= c_LUA, c_LUACodeBlock
 | |
| 	children	= 0
 | |
| 	DisplayName	= 'Keyword'
 | |
| 
 | |
| 	token:tag	= 'and'
 | |
| 	token:tag	= 'break'
 | |
| 	token:tag	= 'do'
 | |
| 	token:tag	= 'else'
 | |
| 	token:tag	= 'elseif'
 | |
| 	token:tag	= 'end'
 | |
| 	token:tag	= 'false'
 | |
| 	token:tag	= 'for'
 | |
| 	token:tag	= 'function'
 | |
| 	token:tag	= 'global'
 | |
| 	token:tag	= 'if'
 | |
| 	token:tag	= 'in'
 | |
| 	token:tag	= 'local'
 | |
| 	token:tag	= 'nil'
 | |
| 	token:tag	= 'not'
 | |
| 	token:tag	= 'or'
 | |
| 	token:tag	= 'repeat'
 | |
| 	token:tag	= 'return'
 | |
| 	token:tag	= 'then'
 | |
| 	token:tag	= 'true'
 | |
| 	token:tag	= 'until'
 | |
| 	token:tag	= 'while'
 | |
| 
 | |
| 	token:start:separators	= @specs, ' ', '\t', @eol
 | |
| 	token:end:separators	= @specs, ' ', '\t', @eol
 | |
| 	
 | |
| 	txt:colorFG	= 0x000080
 | |
| 	txt:bold = 1
 | |
| 		
 | |
| lexClass:
 | |
| 	name		= c_LUAFunctions
 | |
| 	ParseOnScreen	= 0
 | |
| 	parent:Dyn	= c_LUA, c_LUACodeBlock
 | |
| 	children	= 0
 | |
| 	DisplayName	= 'LUA Function'
 | |
| 
 | |
| 	token:tag	= '_G'
 | |
| 	token:tag	= '_VERSION'
 | |
| 	token:tag	= 'assert'
 | |
| 	token:tag	= 'collectgarbage'
 | |
| 	token:tag	= 'dofile'
 | |
| 	token:tag	= 'error'
 | |
| 	token:tag	= 'getfenv'
 | |
| 	token:tag	= 'getmetatable'
 | |
| 	token:tag	= 'ipairs'
 | |
| 	token:tag	= 'load'
 | |
| 	token:tag	= 'loadfile'
 | |
| 	token:tag	= 'loadstring'
 | |
| 	token:tag	= 'module'
 | |
| 	token:tag	= 'next'
 | |
| 	token:tag	= 'pairs'
 | |
| 	token:tag	= 'pcall'
 | |
| 	token:tag	= 'print'
 | |
| 	token:tag	= 'rawequal'
 | |
| 	token:tag	= 'rawget'
 | |
| 	token:tag	= 'rawset'
 | |
| 	token:tag	= 'require'
 | |
| 	token:tag	= 'select'
 | |
| 	token:tag	= 'setfenv'
 | |
| 	token:tag	= 'setmetatable'
 | |
| 	token:tag	= 'tonumber'
 | |
| 	token:tag	= 'tostring'
 | |
| 	token:tag	= 'type'
 | |
| 	token:tag	= 'unpack'
 | |
| 	token:tag	= 'xpcall'
 | |
| 	
 | |
| 	//token:tag	= 'coroutine.create'
 | |
| 	//token:tag	= 'coroutine.resume'
 | |
| 	//token:tag	= 'coroutine.running'
 | |
| 	//token:tag	= 'coroutine.status'
 | |
| 	//token:tag	= 'coroutine.wrap'
 | |
| 	//token:tag	= 'coroutine.yield'
 | |
| 	//token:tag	= 'debug.debug'
 | |
| 	//token:tag	= 'debug.getfenv'
 | |
| 	//token:tag	= 'debug.gethook'
 | |
| 	//token:tag	= 'debug.getinfo'
 | |
| 	//token:tag	= 'debug.getlocal'
 | |
| 	//token:tag	= 'debug.getmetatable'
 | |
| 	//token:tag	= 'debug.getregistry'
 | |
| 	//token:tag	= 'debug.getupvalue'
 | |
| 	//token:tag	= 'debug.setfenv'
 | |
| 	//token:tag	= 'debug.sethook'
 | |
| 	//token:tag	= 'debug.setlocal'
 | |
| 	//token:tag	= 'debug.setmetatable'
 | |
| 	//token:tag	= 'debug.setupvalue'
 | |
| 	//token:tag	= 'debug.traceback'
 | |
| 	//token:tag	= 'file:close'
 | |
| 	//token:tag	= 'file:flush'
 | |
| 	//token:tag	= 'file:lines'
 | |
| 	//token:tag	= 'file:read'
 | |
| 	//token:tag	= 'file:seek'
 | |
| 	//token:tag	= 'file:setvbuf'
 | |
| 	//token:tag	= 'file:write'
 | |
| 	//token:tag	= 'io.close'
 | |
| 	//token:tag	= 'io.flush'
 | |
| 	//token:tag	= 'io.input'
 | |
| 	//token:tag	= 'io.lines'
 | |
| 	//token:tag	= 'io.open'
 | |
| 	//token:tag	= 'io.output'
 | |
| 	//token:tag	= 'io.popen'
 | |
| 	//token:tag	= 'io.read'
 | |
| 	//token:tag	= 'io.tmpfile'
 | |
| 	//token:tag	= 'io.type'
 | |
| 	//token:tag	= 'io.write'
 | |
| 	//token:tag	= 'math.abs'
 | |
| 	//token:tag	= 'math.acos'
 | |
| 	//token:tag	= 'math.asin'
 | |
| 	//token:tag	= 'math.atan2'
 | |
| 	//token:tag	= 'math.atan'
 | |
| 	//token:tag	= 'math.ceil'
 | |
| 	//token:tag	= 'math.cosh'
 | |
| 	//token:tag	= 'math.cos'
 | |
| 	//token:tag	= 'math.deg'
 | |
| 	//token:tag	= 'math.exp'
 | |
| 	//token:tag	= 'math.floor'
 | |
| 	//token:tag	= 'math.fmod'
 | |
| 	//token:tag	= 'math.frexp'
 | |
| 	//token:tag	= 'math.huge'
 | |
| 	//token:tag	= 'math.ldexp'
 | |
| 	//token:tag	= 'math.log10'
 | |
| 	//token:tag	= 'math.log'
 | |
| 	//token:tag	= 'math.max'
 | |
| 	//token:tag	= 'math.min'
 | |
| 	//token:tag	= 'math.modf'
 | |
| 	//token:tag	= 'math.pi'
 | |
| 	//token:tag	= 'math.pow'
 | |
| 	//token:tag	= 'math.rad'
 | |
| 	//token:tag	= 'math.random'
 | |
| 	//token:tag	= 'math.randomseed'
 | |
| 	//token:tag	= 'math.sinh'
 | |
| 	//token:tag	= 'math.sin'
 | |
| 	//token:tag	= 'math.sqrt'
 | |
| 	//token:tag	= 'math.tanh'
 | |
| 	//token:tag	= 'math.tan'
 | |
| 	//token:tag	= 'os.clock'
 | |
| 	//token:tag	= 'os.date'
 | |
| 	//token:tag	= 'os.difftime'
 | |
| 	//token:tag	= 'os.execute'
 | |
| 	//token:tag	= 'os.exit'
 | |
| 	//token:tag	= 'os.getenv'
 | |
| 	//token:tag	= 'os.remove'
 | |
| 	//token:tag	= 'os.rename'
 | |
| 	//token:tag	= 'os.setlocale'
 | |
| 	//token:tag	= 'os.time'
 | |
| 	//token:tag	= 'os.tmpname'
 | |
| 	//token:tag	= 'package.cpath'
 | |
| 	//token:tag	= 'package.loaded'
 | |
| 	//token:tag	= 'package.loadlib'
 | |
| 	//token:tag	= 'package.path'
 | |
| 	//token:tag	= 'package.preload'
 | |
| 	//token:tag	= 'package.seeall'
 | |
| 	//token:tag	= 'string.byte'
 | |
| 	//token:tag	= 'string.char'
 | |
| 	//token:tag	= 'string.dump'
 | |
| 	//token:tag	= 'string.find'
 | |
| 	//token:tag	= 'string.format'
 | |
| 	//token:tag	= 'string.gmatch'
 | |
| 	//token:tag	= 'string.gsub'
 | |
| 	//token:tag	= 'string.len'
 | |
| 	//token:tag	= 'string.lower'
 | |
| 	//token:tag	= 'string.match'
 | |
| 	//token:tag	= 'string.rep'
 | |
| 	//token:tag	= 'string.reverse'
 | |
| 	//token:tag	= 'string.sub'
 | |
| 	//token:tag	= 'string.upper'
 | |
| 	//token:tag	= 'table.concat'
 | |
| 	//token:tag	= 'table.insert'
 | |
| 	//token:tag	= 'table.maxn'
 | |
| 	//token:tag	= 'table.remove'
 | |
| 	//token:tag	= 'table.sort'
 | |
|  
 | |
| 
 | |
| 	
 | |
| 	token:start:separators	= @specs, ' ', '\t', @eol
 | |
| 	token:end:separators	= @specs, ' ', '\t', @eol
 | |
|                    
 | |
| 	txt:colorFG	= 0x900090
 | |
| 	txt:bold = 0
 |