ave.vim (1900B)
1 " Vim syntax file 2 " Copyright by Jan-Oliver Wagner 3 " Language: avenue 4 " Maintainer: Jan-Oliver Wagner <Jan-Oliver.Wagner@intevation.de> 5 " Last change: 2001 May 10 6 7 " Avenue is the ArcView built-in language. ArcView is 8 " a desktop GIS by ESRI. Though it is a built-in language 9 " and a built-in editor is provided, the use of VIM increases 10 " development speed. 11 " I use some technologies to automatically load avenue scripts 12 " into ArcView. 13 14 " quit when a syntax file was already loaded 15 if exists("b:current_syntax") 16 finish 17 endif 18 19 " Avenue is entirely case-insensitive. 20 syn case ignore 21 22 " The keywords 23 24 syn keyword aveStatement if then elseif else end break exit return 25 syn keyword aveStatement for each in continue while 26 27 " String 28 29 syn region aveString start=+"+ end=+"+ 30 31 " Integer number 32 syn match aveNumber "[+-]\=\<[0-9]\+\>" 33 34 " Operator 35 36 syn keyword aveOperator or and max min xor mod by 37 " 'not' is a kind of a problem: It's an Operator as well as a method 38 " 'not' is only marked as an Operator if not applied as method 39 syn match aveOperator "[^\.]not[^a-zA-Z]" 40 41 " Variables 42 43 syn keyword aveFixVariables av nil self false true nl tab cr tab 44 syn match globalVariables "_[a-zA-Z][a-zA-Z0-9]*" 45 syn match aveVariables "[a-zA-Z][a-zA-Z0-9_]*" 46 syn match aveConst "#[A-Z][A-Z_]+" 47 48 " Comments 49 50 syn match aveComment "'.*" 51 52 " Typical Typos 53 54 " for C programmers: 55 syn match aveTypos "==" 56 syn match aveTypos "!=" 57 58 " Define the default highlighting. 59 " Only when an item doesn't have highlighting+yet 60 61 hi def link aveStatement Statement 62 63 hi def link aveString String 64 hi def link aveNumber Number 65 66 hi def link aveFixVariables Special 67 hi def link aveVariables Identifier 68 hi def link globalVariables Special 69 hi def link aveConst Special 70 71 hi def link aveClassMethods Function 72 73 hi def link aveOperator Operator 74 hi def link aveComment Comment 75 76 hi def link aveTypos Error 77 78 79 let b:current_syntax = "ave"