7
|
1 " Vim syntax file
|
|
2 " Language: ART-IM and ART*Enterprise
|
|
3 " Maintainer: Dorai Sitaram <ds26@gte.com>
|
|
4 " URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
|
3237
|
5 " Last Change: 2011 Dec 28 by Thilo Six
|
7
|
6
|
|
7 if exists("b:current_syntax")
|
|
8 finish
|
|
9 endif
|
|
10
|
3237
|
11 let s:cpo_save = &cpo
|
|
12 set cpo&vim
|
|
13
|
7
|
14 syn case ignore
|
|
15
|
|
16 syn keyword artspform => and assert bind
|
|
17 syn keyword artspform declare def-art-fun deffacts defglobal defrule defschema do
|
|
18 syn keyword artspform else for if in$ not or
|
|
19 syn keyword artspform progn retract salience schema test then while
|
|
20
|
|
21 syn match artvariable "?[^ \t";()|&~]\+"
|
|
22
|
|
23 syn match artglobalvar "?\*[^ \t";()|&~]\+\*"
|
|
24
|
|
25 syn match artinstance "![^ \t";()|&~]\+"
|
|
26
|
|
27 syn match delimiter "[()|&~]"
|
|
28
|
|
29 syn region string start=/"/ skip=/\\[\\"]/ end=/"/
|
|
30
|
|
31 syn match number "\<[-+]\=\([0-9]\+\(\.[0-9]*\)\=\|\.[0-9]\+\)\>"
|
|
32
|
|
33 syn match comment ";.*$"
|
|
34
|
|
35 syn match comment "#+:\=ignore" nextgroup=artignore skipwhite skipnl
|
|
36
|
|
37 syn region artignore start="(" end=")" contained contains=artignore,comment
|
|
38
|
|
39 syn region artignore start=/"/ skip=/\\[\\"]/ end=/"/ contained
|
|
40
|
|
41 hi def link artinstance type
|
|
42 hi def link artglobalvar preproc
|
|
43 hi def link artignore comment
|
|
44 hi def link artspform statement
|
|
45 hi def link artvariable function
|
|
46
|
|
47 let b:current_syntax = "art"
|
3237
|
48
|
|
49 let &cpo = s:cpo_save
|
|
50 unlet s:cpo_save
|