103 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| "
 | |
| " Vim syntax file
 | |
| " Language   :	Scilab
 | |
| " Maintainer :	Benoit Hamelin
 | |
| " File type  :	*.sci (see :help filetype)
 | |
| " History
 | |
| "	28jan2002	benoith		0.1		Creation.  Adapted from matlab.vim.
 | |
| "	04feb2002	benoith		0.5		Fixed bugs with constant highlighting.
 | |
| "
 | |
| 
 | |
| 
 | |
| " quit when a syntax file was already loaded
 | |
| if exists("b:current_syntax")
 | |
|   finish
 | |
| endif
 | |
| 
 | |
| 
 | |
| " Reserved words.
 | |
| syn keyword scilabStatement			abort clear clearglobal end exit global mode predef quit resume
 | |
| syn keyword scilabStatement			return
 | |
| syn keyword scilabFunction			function endfunction funptr
 | |
| syn keyword scilabPredicate			null iserror isglobal
 | |
| syn keyword scilabKeyword			typename
 | |
| syn keyword scilabDebug				debug pause what where whereami whereis who whos
 | |
| syn keyword scilabRepeat			for while break
 | |
| syn keyword scilabConditional		if then else elseif
 | |
| syn keyword scilabMultiplex			select case
 | |
| 
 | |
| " Reserved constants.
 | |
| syn match scilabConstant			"\(%\)[0-9A-Za-z?!#$]\+"
 | |
| syn match scilabBoolean				"\(%\)[FTft]\>"
 | |
| 
 | |
| " Delimiters and operators.
 | |
| syn match scilabDelimiter			"[][;,()]"
 | |
| syn match scilabComparison			"[=~]="
 | |
| syn match scilabComparison			"[<>]=\="
 | |
| syn match scilabComparison			"<>"
 | |
| syn match scilabLogical				"[&|~]"
 | |
| syn match scilabAssignment			"="
 | |
| syn match scilabArithmetic			"[+-]"
 | |
| syn match scilabArithmetic			"\.\=[*/\\]\.\="
 | |
| syn match scilabArithmetic			"\.\=^"
 | |
| syn match scilabRange				":"
 | |
| syn match scilabMlistAccess			"\."
 | |
| 
 | |
| syn match scilabLineContinuation	"\.\{2,}"
 | |
| 
 | |
| syn match scilabTransposition		"[])a-zA-Z0-9?!_#$.]'"lc=1
 | |
| 
 | |
| " Comments and tools.
 | |
| syn keyword scilabTodo				TODO todo FIXME fixme TBD tbd	contained
 | |
| syn match scilabComment				"//.*$"	contains=scilabTodo
 | |
| 
 | |
| " Constants.
 | |
| syn match scilabNumber				"[0-9]\+\(\.[0-9]*\)\=\([DEde][+-]\=[0-9]\+\)\="
 | |
| syn match scilabNumber				"\.[0-9]\+\([DEde][+-]\=[0-9]\+\)\="
 | |
| syn region scilabString				start=+'+ skip=+''+ end=+'+		oneline
 | |
| syn region scilabString				start=+"+ end=+"+				oneline
 | |
| 
 | |
| " Identifiers.
 | |
| syn match scilabIdentifier			"\<[A-Za-z?!_#$][A-Za-z0-9?!_#$]*\>"
 | |
| syn match scilabOverload			"%[A-Za-z0-9?!_#$]\+_[A-Za-z0-9?!_#$]\+"
 | |
| 
 | |
| 
 | |
| " Define the default highlighting.
 | |
| " Only when an item doesn't have highlighting yet
 | |
| 
 | |
| hi def link scilabStatement				Statement
 | |
| hi def link scilabFunction				Keyword
 | |
| hi def link scilabPredicate				Keyword
 | |
| hi def link scilabKeyword				Keyword
 | |
| hi def link scilabDebug					Debug
 | |
| hi def link scilabRepeat				Repeat
 | |
| hi def link scilabConditional			Conditional
 | |
| hi def link scilabMultiplex				Conditional
 | |
| 
 | |
| hi def link scilabConstant				Constant
 | |
| hi def link scilabBoolean				Boolean
 | |
| 
 | |
| hi def link scilabDelimiter				Delimiter
 | |
| hi def link scilabMlistAccess			Delimiter
 | |
| hi def link scilabComparison			Operator
 | |
| hi def link scilabLogical				Operator
 | |
| hi def link scilabAssignment			Operator
 | |
| hi def link scilabArithmetic			Operator
 | |
| hi def link scilabRange					Operator
 | |
| hi def link scilabLineContinuation		Underlined
 | |
| hi def link scilabTransposition			Operator
 | |
| 
 | |
| hi def link scilabTodo					Todo
 | |
| hi def link scilabComment				Comment
 | |
| 
 | |
| hi def link scilabNumber				Number
 | |
| hi def link scilabString				String
 | |
| 
 | |
| hi def link scilabIdentifier			Identifier
 | |
| hi def link scilabOverload				Special
 | |
| 
 | |
| 
 | |
| let b:current_syntax = "scilab"
 | |
| 
 | |
| "EOF	vim: ts=4 noet tw=100 sw=4 sts=0
 |