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