forked from aniani/vim
		
	
		
			
				
	
	
		
			93 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Copyright by Jan-Oliver Wagner
 | |
| " Language:	avenue
 | |
| " Maintainer:	Jan-Oliver Wagner <Jan-Oliver.Wagner@intevation.de>
 | |
| " Last change:	2001 May 10
 | |
| 
 | |
| " Avenue is the ArcView built-in language. ArcView is
 | |
| " a desktop GIS by ESRI. Though it is a built-in language
 | |
| " and a built-in editor is provided, the use of VIM increases
 | |
| " development speed.
 | |
| " I use some technologies to automatically load avenue scripts
 | |
| " into ArcView.
 | |
| 
 | |
| " 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
 | |
| 
 | |
| " Avenue is entirely case-insensitive.
 | |
| syn case ignore
 | |
| 
 | |
| " The keywords
 | |
| 
 | |
| syn keyword aveStatement	if then elseif else end break exit return
 | |
| syn keyword aveStatement	for each in continue while
 | |
| 
 | |
| " String
 | |
| 
 | |
| syn region aveString		start=+"+ end=+"+
 | |
| 
 | |
| " Integer number
 | |
| syn match  aveNumber		"[+-]\=\<[0-9]\+\>"
 | |
| 
 | |
| " Operator
 | |
| 
 | |
| syn keyword aveOperator		or and max min xor mod by
 | |
| " 'not' is a kind of a problem: Its an Operator as well as a method
 | |
| " 'not' is only marked as an Operator if not applied as method
 | |
| syn match aveOperator		"[^\.]not[^a-zA-Z]"
 | |
| 
 | |
| " Variables
 | |
| 
 | |
| syn keyword aveFixVariables	av nil self false true nl tab cr tab
 | |
| syn match globalVariables	"_[a-zA-Z][a-zA-Z0-9]*"
 | |
| syn match aveVariables		"[a-zA-Z][a-zA-Z0-9_]*"
 | |
| syn match aveConst		"#[A-Z][A-Z_]+"
 | |
| 
 | |
| " Comments
 | |
| 
 | |
| syn match aveComment	"'.*"
 | |
| 
 | |
| " Typical Typos
 | |
| 
 | |
| " for C programmers:
 | |
| syn match aveTypos	"=="
 | |
| syn match aveTypos	"!="
 | |
| 
 | |
| " 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_ave_syn_inits")
 | |
|   if version < 508
 | |
| 	let did_ave_syn_inits = 1
 | |
| 	command -nargs=+ HiLink hi link <args>
 | |
|   else
 | |
| 	command -nargs=+ HiLink hi def link <args>
 | |
|   endif
 | |
| 
 | |
|   HiLink aveStatement		Statement
 | |
| 
 | |
|   HiLink aveString		String
 | |
|   HiLink aveNumber		Number
 | |
| 
 | |
|   HiLink aveFixVariables	Special
 | |
|   HiLink aveVariables		Identifier
 | |
|   HiLink globalVariables	Special
 | |
|   HiLink aveConst		Special
 | |
| 
 | |
|   HiLink aveClassMethods	Function
 | |
| 
 | |
|   HiLink aveOperator		Operator
 | |
|   HiLink aveComment		Comment
 | |
| 
 | |
|   HiLink aveTypos		Error
 | |
| 
 | |
|   delcommand HiLink
 | |
| endif
 | |
| 
 | |
| let b:current_syntax = "ave"
 |