blob: c1faddb1efb681b89ae8f17e2d9ffa009d80bacc [file] [log] [blame]
" Vim syntax file
" Language: ART-IM and ART*Enterprise
" Maintainer: Dorai Sitaram <ds26@gte.com>
" URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
" Last Change: Nov 6, 2002
if exists("b:current_syntax")
finish
endif
syn case ignore
syn keyword artspform => and assert bind
syn keyword artspform declare def-art-fun deffacts defglobal defrule defschema do
syn keyword artspform else for if in$ not or
syn keyword artspform progn retract salience schema test then while
syn match artvariable "?[^ \t";()|&~]\+"
syn match artglobalvar "?\*[^ \t";()|&~]\+\*"
syn match artinstance "![^ \t";()|&~]\+"
syn match delimiter "[()|&~]"
syn region string start=/"/ skip=/\\[\\"]/ end=/"/
syn match number "\<[-+]\=\([0-9]\+\(\.[0-9]*\)\=\|\.[0-9]\+\)\>"
syn match comment ";.*$"
syn match comment "#+:\=ignore" nextgroup=artignore skipwhite skipnl
syn region artignore start="(" end=")" contained contains=artignore,comment
syn region artignore start=/"/ skip=/\\[\\"]/ end=/"/ contained
hi def link artinstance type
hi def link artglobalvar preproc
hi def link artignore comment
hi def link artspform statement
hi def link artvariable function
let b:current_syntax = "art"