scilab.vim (3210B)
1 " 2 " Vim syntax file 3 " Language : Scilab 4 " Maintainer : Benoit Hamelin 5 " File type : *.sci (see :help filetype) 6 " History 7 " 28jan2002 benoith 0.1 Creation. Adapted from matlab.vim. 8 " 04feb2002 benoith 0.5 Fixed bugs with constant highlighting. 9 " 10 11 12 " quit when a syntax file was already loaded 13 if exists("b:current_syntax") 14 finish 15 endif 16 17 18 " Reserved words. 19 syn keyword scilabStatement abort clear clearglobal end exit global mode predef quit resume 20 syn keyword scilabStatement return 21 syn keyword scilabFunction function endfunction funptr 22 syn keyword scilabPredicate null iserror isglobal 23 syn keyword scilabKeyword typename 24 syn keyword scilabDebug debug pause what where whereami whereis who whos 25 syn keyword scilabRepeat for while break 26 syn keyword scilabConditional if then else elseif 27 syn keyword scilabMultiplex select case 28 29 " Reserved constants. 30 syn match scilabConstant "\(%\)[0-9A-Za-z?!#$]\+" 31 syn match scilabBoolean "\(%\)[FTft]\>" 32 33 " Delimiters and operators. 34 syn match scilabDelimiter "[][;,()]" 35 syn match scilabComparison "[=~]=" 36 syn match scilabComparison "[<>]=\=" 37 syn match scilabComparison "<>" 38 syn match scilabLogical "[&|~]" 39 syn match scilabAssignment "=" 40 syn match scilabArithmetic "[+-]" 41 syn match scilabArithmetic "\.\=[*/\\]\.\=" 42 syn match scilabArithmetic "\.\=^" 43 syn match scilabRange ":" 44 syn match scilabMlistAccess "\." 45 46 syn match scilabLineContinuation "\.\{2,}" 47 48 syn match scilabTransposition "[])a-zA-Z0-9?!_#$.]'"lc=1 49 50 " Comments and tools. 51 syn keyword scilabTodo TODO todo FIXME fixme TBD tbd contained 52 syn match scilabComment "//.*$" contains=scilabTodo 53 54 " Constants. 55 syn match scilabNumber "[0-9]\+\(\.[0-9]*\)\=\([DEde][+-]\=[0-9]\+\)\=" 56 syn match scilabNumber "\.[0-9]\+\([DEde][+-]\=[0-9]\+\)\=" 57 syn region scilabString start=+'+ skip=+''+ end=+'+ oneline 58 syn region scilabString start=+"+ end=+"+ oneline 59 60 " Identifiers. 61 syn match scilabIdentifier "\<[A-Za-z?!_#$][A-Za-z0-9?!_#$]*\>" 62 syn match scilabOverload "%[A-Za-z0-9?!_#$]\+_[A-Za-z0-9?!_#$]\+" 63 64 65 " Define the default highlighting. 66 " Only when an item doesn't have highlighting yet 67 68 hi def link scilabStatement Statement 69 hi def link scilabFunction Keyword 70 hi def link scilabPredicate Keyword 71 hi def link scilabKeyword Keyword 72 hi def link scilabDebug Debug 73 hi def link scilabRepeat Repeat 74 hi def link scilabConditional Conditional 75 hi def link scilabMultiplex Conditional 76 77 hi def link scilabConstant Constant 78 hi def link scilabBoolean Boolean 79 80 hi def link scilabDelimiter Delimiter 81 hi def link scilabMlistAccess Delimiter 82 hi def link scilabComparison Operator 83 hi def link scilabLogical Operator 84 hi def link scilabAssignment Operator 85 hi def link scilabArithmetic Operator 86 hi def link scilabRange Operator 87 hi def link scilabLineContinuation Underlined 88 hi def link scilabTransposition Operator 89 90 hi def link scilabTodo Todo 91 hi def link scilabComment Comment 92 93 hi def link scilabNumber Number 94 hi def link scilabString String 95 96 hi def link scilabIdentifier Identifier 97 hi def link scilabOverload Special 98 99 100 let b:current_syntax = "scilab" 101 102 "EOF vim: ts=4 noet tw=100 sw=4 sts=0