blob: 9b0b061ae19a8383d4909d4b653ff111a93546a3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
" Vim syntax file
" Antlr: ANTLR, Another Tool For Language Recognition <www.antlr.org>
" Maintainer: Mathieu Clabaut <mathieu.clabaut@free.fr>
" LastChange: 02 May 2001
" Original: Comes from JavaCC.vim
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" This syntac file is a first attempt. It is far from perfect...
" Uses java.vim, and adds a few special things for JavaCC Parser files.
" Those files usually have the extension *.jj
" source the java.vim file
runtime! syntax/java.vim
unlet b:current_syntax
"remove catching errors caused by wrong parenthesis (does not work in antlr
"files) (first define them in case they have not been defined in java)
syn match javaParen "--"
syn match javaParenError "--"
syn match javaInParen "--"
syn match javaError2 "--"
syn clear javaParen
syn clear javaParenError
syn clear javaInParen
syn clear javaError2
" remove function definitions (they look different) (first define in
" in case it was not defined in java.vim)
"syn match javaFuncDef "--"
"syn clear javaFuncDef
"syn match javaFuncDef "[a-zA-Z][a-zA-Z0-9_. \[\]]*([^-+*/()]*)[ \t]*:" contains=javaType
" syn region javaFuncDef start=+t[a-zA-Z][a-zA-Z0-9_. \[\]]*([^-+*/()]*,[ ]*+ end=+)[ \t]*:+
syn keyword antlrPackages options language buildAST
syn match antlrPackages "PARSER_END([^)]*)"
syn match antlrPackages "PARSER_BEGIN([^)]*)"
syn match antlrSpecToken "<EOF>"
" the dot is necessary as otherwise it will be matched as a keyword.
syn match antlrSpecToken ".LOOKAHEAD("ms=s+1,me=e-1
syn match antlrSep "[|:]\|\.\."
syn keyword antlrActionToken TOKEN SKIP MORE SPECIAL_TOKEN
syn keyword antlrError DEBUG IGNORE_IN_BNF
hi def link antlrSep Statement
hi def link antlrPackages Statement
let b:current_syntax = "antlr"
" vim: ts=8
|