view runtime/syntax/ave.vim @ 22643:71b57779177d v8.2.1870

patch 8.2.1870: Vim9: no need to keep all script variables Commit: https://github.com/vim/vim/commit/39ca4127a094d8aca6f77c01be4f3fea506d5cb7 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Oct 20 14:25:07 2020 +0200 patch 8.2.1870: Vim9: no need to keep all script variables Problem: Vim9: no need to keep all script variables. Solution: Only keep script variables when a function was defined that could use them. Fix freeing static string on exit.
author Bram Moolenaar <Bram@vim.org>
date Tue, 20 Oct 2020 14:30:04 +0200
parents 8a1481e59d64
children
line wrap: on
line source

" 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.

" quit when a syntax file was already loaded
if 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: It's 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.
" Only when an item doesn't have highlighting+yet

hi def link aveStatement		Statement

hi def link aveString		String
hi def link aveNumber		Number

hi def link aveFixVariables	Special
hi def link aveVariables		Identifier
hi def link globalVariables	Special
hi def link aveConst		Special

hi def link aveClassMethods	Function

hi def link aveOperator		Operator
hi def link aveComment		Comment

hi def link aveTypos		Error


let b:current_syntax = "ave"