diff runtime/syntax/scilab.vim @ 7:3fc0f57ecb91 v7.0001

updated for version 7.0001
author vimboss
date Sun, 13 Jun 2004 20:20:40 +0000
parents
children 43efa4f5a8ea
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/runtime/syntax/scilab.vim
@@ -0,0 +1,115 @@
+"
+" 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.
+"
+
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+  syntax clear
+elseif 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.
+" For version 5.7 and earlier: only when not done already
+" For version 5.8 and later: only when an item doesn't have highlighting yet
+if version >= 508 || !exists("did_scilab_syntax_inits")
+	if version < 508
+		let did_scilab_syntax_inits = 1
+		command -nargs=+ HiLink hi link <args>
+	else
+		command -nargs=+ HiLink hi def link <args>
+	endif
+
+	HiLink	scilabStatement				Statement
+	HiLink	scilabFunction				Keyword
+	HiLink	scilabPredicate				Keyword
+	HiLink	scilabKeyword				Keyword
+	HiLink	scilabDebug					Debug
+	HiLink	scilabRepeat				Repeat
+	HiLink	scilabConditional			Conditional
+	HiLink	scilabMultiplex				Conditional
+
+	HiLink	scilabConstant				Constant
+	HiLink	scilabBoolean				Boolean
+
+	HiLink	scilabDelimiter				Delimiter
+	HiLink	scilabMlistAccess			Delimiter
+	HiLink	scilabComparison			Operator
+	HiLink	scilabLogical				Operator
+	HiLink	scilabAssignment			Operator
+	HiLink	scilabArithmetic			Operator
+	HiLink	scilabRange					Operator
+	HiLink	scilabLineContinuation		Underlined
+	HiLink	scilabTransposition			Operator
+
+	HiLink	scilabTodo					Todo
+	HiLink	scilabComment				Comment
+
+	HiLink	scilabNumber				Number
+	HiLink	scilabString				String
+
+	HiLink	scilabIdentifier			Identifier
+	HiLink	scilabOverload				Special
+
+	delcommand HiLink
+endif
+
+let b:current_syntax = "scilab"
+
+"EOF	vim: ts=4 noet tw=100 sw=4 sts=0