Mercurial > vim
annotate runtime/syntax/java.vim @ 34875:6231e29aec3d
ftplugin(gdb): add matchit support
Commit: https://github.com/vim/vim/commit/556c62165963359f1b35f17a49913fc61c43f937
Author: Wu, Zhenyu <wuzhenyu@ustc.edu>
Date: Wed Apr 10 22:42:10 2024 +0200
ftplugin(gdb): add matchit support
closes: https://github.com/vim/vim/issues/14462
Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 10 Apr 2024 22:45:05 +0200 |
parents | e0059b2d4e2b |
children | c95bcbccb165 |
rev | line source |
---|---|
3854 | 1 " Vim syntax file |
2 " Language: Java | |
2152 | 3 " Maintainer: Claudio Fleiner <claudio@fleiner.com> |
14421 | 4 " URL: https://github.com/fleiner/vim/blob/master/runtime/syntax/java.vim |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
5 " Last Change: 2024 Apr 04 |
7 | 6 |
7 " Please check :help java.vim for comments on some of the options available. | |
8 | |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
6648
diff
changeset
|
9 " quit when a syntax file was already loaded |
7 | 10 if !exists("main_syntax") |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
6648
diff
changeset
|
11 if exists("b:current_syntax") |
7 | 12 finish |
13 endif | |
14 " we define it here so that included files can test for it | |
15 let main_syntax='java' | |
2034 | 16 syn region javaFold start="{" end="}" transparent fold |
7 | 17 endif |
18 | |
3854 | 19 let s:cpo_save = &cpo |
20 set cpo&vim | |
21 | |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
22 " Admit the ASCII dollar sign to keyword characters (JLS-17, §3.8): |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
23 execute printf('syntax iskeyword %s,$', &l:iskeyword) |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
24 |
7 | 25 " some characters that cannot be in a java program (outside a string) |
26 syn match javaError "[\\@`]" | |
6648 | 27 syn match javaError "<<<\|\.\.\|=>\|||=\|&&=\|\*\/" |
3854 | 28 |
7 | 29 " use separate name so that it can be deleted in javacc.vim |
30 syn match javaError2 "#\|=<" | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
31 hi def link javaError2 javaError |
7 | 32 |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
33 " Keywords (JLS-17, §3.9): |
7 | 34 syn keyword javaExternal native package |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
35 syn match javaExternal "\<import\>\%(\s\+static\>\)\=" |
7 | 36 syn keyword javaError goto const |
37 syn keyword javaConditional if else switch | |
38 syn keyword javaRepeat while for do | |
39 syn keyword javaBoolean true false | |
40 syn keyword javaConstant null | |
41 syn keyword javaTypedef this super | |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
42 syn keyword javaOperator new instanceof |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
43 syn match javaOperator "\<var\>\%(\s*(\)\@!" |
34445
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
44 " Since the yield statement, which could take a parenthesised operand, |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
45 " and _qualified_ yield methods get along within the switch block |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
46 " (JLS-17, §3.8), it seems futile to make a region definition for this |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
47 " block; instead look for the _yield_ word alone, and if found, |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
48 " backtrack (arbitrarily) 80 bytes, at most, on the matched line and, |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
49 " if necessary, on the line before that (h: \@<=), trying to match |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
50 " neither a method reference nor a qualified method invocation. |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
51 syn match javaOperator "\%(\%(::\|\.\)[[:space:]\n]*\)\@80<!\<yield\>" |
7 | 52 syn keyword javaType boolean char byte short int long float double |
53 syn keyword javaType void | |
34445
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
54 syn keyword javaStatement return |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
55 syn keyword javaStorageClass static synchronized transient volatile strictfp serializable |
7 | 56 syn keyword javaExceptions throw try catch finally |
57 syn keyword javaAssert assert | |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
58 syn keyword javaMethodDecl throws |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
59 " Differentiate a "MyClass.class" literal from the keyword "class". |
7 | 60 syn match javaTypedef "\.\s*\<class\>"ms=s+1 |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
61 syn keyword javaClassDecl enum extends implements interface |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
62 syn match javaClassDecl "\<permits\>\%(\s*(\)\@!" |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
63 syn match javaClassDecl "\<record\>\%(\s*(\)\@!" |
7 | 64 syn match javaClassDecl "^class\>" |
65 syn match javaClassDecl "[^.]\s*\<class\>"ms=s+1 | |
14421 | 66 syn match javaAnnotation "@\([_$a-zA-Z][_$a-zA-Z0-9]*\.\)*[_$a-zA-Z][_$a-zA-Z0-9]*\>" contains=javaString |
2152 | 67 syn match javaClassDecl "@interface\>" |
7 | 68 syn keyword javaBranch break continue nextgroup=javaUserLabelRef skipwhite |
69 syn match javaUserLabelRef "\k\+" contained | |
856 | 70 syn match javaVarArg "\.\.\." |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
71 syn keyword javaScopeDecl public protected private |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
72 syn keyword javaConceptKind abstract final |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
73 syn match javaConceptKind "\<non-sealed\>" |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
74 syn match javaConceptKind "\<sealed\>\%(\s*(\)\@!" |
34445
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
75 syn match javaConceptKind "\<default\>\%(\s*\%(:\|->\)\)\@!" |
7 | 76 |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
77 " Note that a "module-info" file will be recognised with an arbitrary |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
78 " file extension (or no extension at all) so that more than one such |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
79 " declaration for the same Java module can be maintained for modular |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
80 " testing in a project without attendant confusion for IDEs, with the |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
81 " ".java\=" extension used for a production version and an arbitrary |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
82 " extension used for a testing version. |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
83 let s:module_info_cur_buf = fnamemodify(bufname("%"), ":t") =~ '^module-info\%(\.class\>\)\@!' |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
84 lockvar s:module_info_cur_buf |
29104 | 85 |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
86 " Java modules (since Java 9, for "module-info.java" file). |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
87 if s:module_info_cur_buf |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
88 syn keyword javaModuleStorageClass module transitive |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
89 syn keyword javaModuleStmt open requires exports opens uses provides |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
90 syn keyword javaModuleExternal to with |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
91 syn cluster javaTop add=javaModuleStorageClass,javaModuleStmt,javaModuleExternal |
14421 | 92 endif |
93 | |
632 | 94 if exists("java_highlight_java_lang_ids") |
95 let java_highlight_all=1 | |
96 endif | |
14421 | 97 if exists("java_highlight_all") || exists("java_highlight_java") || exists("java_highlight_java_lang") |
7 | 98 " java.lang.* |
29104 | 99 " |
100 " The keywords of javaR_JavaLang, javaC_JavaLang, javaE_JavaLang, | |
101 " and javaX_JavaLang are sub-grouped according to the Java version | |
102 " of their introduction, and sub-group keywords (that is, class | |
103 " names) are arranged in alphabetical order, so that future newer | |
104 " keywords can be pre-sorted and appended without disturbing | |
105 " the current keyword placement. The below _match_es follow suit. | |
106 | |
34644
9b94748e226a
runtime(java): Update java[CR]_JavaLang type lists (#14297)
Christian Brabandt <cb@256bit.org>
parents:
34632
diff
changeset
|
107 syn keyword javaR_JavaLang ArithmeticException ArrayIndexOutOfBoundsException ArrayStoreException ClassCastException IllegalArgumentException IllegalMonitorStateException IllegalThreadStateException IndexOutOfBoundsException NegativeArraySizeException NullPointerException NumberFormatException RuntimeException SecurityException StringIndexOutOfBoundsException IllegalStateException UnsupportedOperationException EnumConstantNotPresentException TypeNotPresentException IllegalCallerException LayerInstantiationException WrongThreadException MatchException |
632 | 108 syn cluster javaTop add=javaR_JavaLang |
109 syn cluster javaClasses add=javaR_JavaLang | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
110 hi def link javaR_JavaLang javaR_Java |
29104 | 111 " Member enumerations: |
112 syn match javaC_JavaLang "\%(\<Thread\.\)\@<=\<State\>" | |
113 syn match javaC_JavaLang "\%(\<Character\.\)\@<=\<UnicodeScript\>" | |
114 syn match javaC_JavaLang "\%(\<ProcessBuilder\.Redirect\.\)\@<=\<Type\>" | |
115 syn match javaC_JavaLang "\%(\<StackWalker\.\)\@<=\<Option\>" | |
116 syn match javaC_JavaLang "\%(\<System\.Logger\.\)\@<=\<Level\>" | |
117 " Member classes: | |
118 syn match javaC_JavaLang "\%(\<Character\.\)\@<=\<Subset\>" | |
119 syn match javaC_JavaLang "\%(\<Character\.\)\@<=\<UnicodeBlock\>" | |
120 syn match javaC_JavaLang "\%(\<ProcessBuilder\.\)\@<=\<Redirect\>" | |
121 syn match javaC_JavaLang "\%(\<ModuleLayer\.\)\@<=\<Controller\>" | |
122 syn match javaC_JavaLang "\%(\<Runtime\.\)\@<=\<Version\>" | |
123 syn match javaC_JavaLang "\%(\<System\.\)\@<=\<LoggerFinder\>" | |
124 syn match javaC_JavaLang "\%(\<Enum\.\)\@<=\<EnumDesc\>" | |
125 syn keyword javaC_JavaLang Boolean Character Class ClassLoader Compiler Double Float Integer Long Math Number Object Process Runtime SecurityManager String StringBuffer Thread ThreadGroup Byte Short Void InheritableThreadLocal Package RuntimePermission ThreadLocal StrictMath StackTraceElement Enum ProcessBuilder StringBuilder ClassValue Module ModuleLayer StackWalker Record | |
126 syn match javaC_JavaLang "\<System\>" " See javaDebug. | |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
127 " As of JDK 21, java.lang.Compiler is no more (deprecated in JDK 9). |
34644
9b94748e226a
runtime(java): Update java[CR]_JavaLang type lists (#14297)
Christian Brabandt <cb@256bit.org>
parents:
34632
diff
changeset
|
128 syn keyword javaLangDeprecated Compiler |
632 | 129 syn cluster javaTop add=javaC_JavaLang |
130 syn cluster javaClasses add=javaC_JavaLang | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
131 hi def link javaC_JavaLang javaC_Java |
29104 | 132 syn keyword javaE_JavaLang AbstractMethodError ClassCircularityError ClassFormatError Error IllegalAccessError IncompatibleClassChangeError InstantiationError InternalError LinkageError NoClassDefFoundError NoSuchFieldError NoSuchMethodError OutOfMemoryError StackOverflowError ThreadDeath UnknownError UnsatisfiedLinkError VerifyError VirtualMachineError ExceptionInInitializerError UnsupportedClassVersionError AssertionError BootstrapMethodError |
632 | 133 syn cluster javaTop add=javaE_JavaLang |
134 syn cluster javaClasses add=javaE_JavaLang | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
135 hi def link javaE_JavaLang javaE_Java |
29104 | 136 syn keyword javaX_JavaLang ClassNotFoundException CloneNotSupportedException Exception IllegalAccessException InstantiationException InterruptedException NoSuchMethodException Throwable NoSuchFieldException ReflectiveOperationException |
632 | 137 syn cluster javaTop add=javaX_JavaLang |
138 syn cluster javaClasses add=javaX_JavaLang | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
139 hi def link javaX_JavaLang javaX_Java |
632 | 140 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
141 hi def link javaR_Java javaR_ |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
142 hi def link javaC_Java javaC_ |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
143 hi def link javaE_Java javaE_ |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
144 hi def link javaX_Java javaX_ |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
145 hi def link javaX_ javaExceptions |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
146 hi def link javaR_ javaExceptions |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
147 hi def link javaE_ javaExceptions |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
148 hi def link javaC_ javaConstant |
632 | 149 |
7 | 150 syn keyword javaLangObject clone equals finalize getClass hashCode |
151 syn keyword javaLangObject notify notifyAll toString wait | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
152 hi def link javaLangObject javaConstant |
632 | 153 syn cluster javaTop add=javaLangObject |
7 | 154 endif |
155 | |
156 if filereadable(expand("<sfile>:p:h")."/javaid.vim") | |
157 source <sfile>:p:h/javaid.vim | |
158 endif | |
159 | |
160 if exists("java_space_errors") | |
161 if !exists("java_no_trail_space_error") | |
2152 | 162 syn match javaSpaceError "\s\+$" |
7 | 163 endif |
164 if !exists("java_no_tab_space_error") | |
2152 | 165 syn match javaSpaceError " \+\t"me=e-1 |
7 | 166 endif |
167 endif | |
168 | |
34445
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
169 syn match javaUserLabel "^\s*\<\K\k*\>\%(\<default\>\)\@<!\s*:"he=e-1 |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
170 syn region javaLabelRegion transparent matchgroup=javaLabel start="\<case\>" matchgroup=NONE end=":\|->" contains=javaLabelCastType,javaLabelNumber,javaCharacter,javaString,javaConstant,@javaClasses,javaLabelDefault,javaLabelVarType,javaLabelWhenClause |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
171 syn region javaLabelRegion transparent matchgroup=javaLabel start="\<default\>\%(\s*\%(:\|->\)\)\@=" matchgroup=NONE end=":\|->" oneline |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
172 " Consider grouped _default_ _case_ labels, i.e. |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
173 " case null, default -> |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
174 " case null: default: |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
175 syn keyword javaLabelDefault contained default |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
176 syn keyword javaLabelVarType contained var |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
177 syn keyword javaLabelCastType contained char byte short int |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
178 " Allow for the contingency of the enclosing region not being able to |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
179 " _keep_ its _end_, e.g. case ':':. |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
180 syn region javaLabelWhenClause contained transparent matchgroup=javaLabel start="\<when\>" matchgroup=NONE end=":"me=e-1 end="->"me=e-2 contains=TOP,javaExternal |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
181 syn match javaLabelNumber contained "\<0\>[lL]\@!" |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
182 syn match javaLabelNumber contained "\<\%(0\%([xX]\x\%(_*\x\)*\|_*\o\%(_*\o\)*\|[bB][01]\%(_*[01]\)*\)\|[1-9]\%(_*\d\)*\)\>[lL]\@!" |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
183 hi def link javaLabelDefault javaLabel |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
184 hi def link javaLabelVarType javaOperator |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
185 hi def link javaLabelNumber javaNumber |
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
186 hi def link javaLabelCastType javaType |
7 | 187 |
3237 | 188 " highlighting C++ keywords as errors removed, too many people find it |
189 " annoying. Was: if !exists("java_allow_cpp_keywords") | |
7 | 190 |
191 " The following cluster contains all java groups except the contained ones | |
34445
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
192 syn cluster javaTop add=javaExternal,javaError,javaBranch,javaLabelRegion,javaConditional,javaRepeat,javaBoolean,javaConstant,javaTypedef,javaOperator,javaType,javaStatement,javaStorageClass,javaAssert,javaExceptions,javaMethodDecl,javaClassDecl,javaScopeDecl,javaConceptKind,javaError2,javaUserLabel,javaLangObject,javaAnnotation,javaVarArg |
7 | 193 |
194 | |
195 " Comments | |
196 syn keyword javaTodo contained TODO FIXME XXX | |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
197 |
7 | 198 if exists("java_comment_strings") |
199 syn region javaCommentString contained start=+"+ end=+"+ end=+$+ end=+\*/+me=s-1,he=s-1 contains=javaSpecial,javaCommentStar,javaSpecialChar,@Spell | |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
200 syn region javaCommentString contained start=+"""[ \t\x0c\r]*$+hs=e+1 end=+"""+he=s-1 contains=javaSpecial,javaCommentStar,javaSpecialChar,@Spell,javaSpecialError,javaTextBlockError |
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
201 syn region javaComment2String contained start=+"+ end=+$\|"+ contains=javaSpecial,javaSpecialChar,@Spell |
7 | 202 syn match javaCommentCharacter contained "'\\[^']\{1,6\}'" contains=javaSpecialChar |
203 syn match javaCommentCharacter contained "'\\''" contains=javaSpecialChar | |
204 syn match javaCommentCharacter contained "'[^\\]'" | |
34514
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
205 syn cluster javaCommentSpecial add=javaCommentString,javaCommentCharacter,javaNumber,javaStrTempl |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
206 syn cluster javaCommentSpecial2 add=javaComment2String,javaCommentCharacter,javaNumber,javaStrTempl |
7 | 207 endif |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
208 |
34632
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
209 syn region javaComment matchgroup=javaCommentStart start="/\*" end="\*/" contains=@javaCommentSpecial,javaTodo,javaCommentError,javaSpaceError,@Spell |
2152 | 210 syn match javaCommentStar contained "^\s*\*[^/]"me=e-1 |
211 syn match javaCommentStar contained "^\s*\*$" | |
34613
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
212 syn match javaLineComment "//.*" contains=@javaCommentSpecial2,javaTodo,javaCommentMarkupTag,javaSpaceError,@Spell |
34632
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
213 syn match javaCommentMarkupTag contained "@\%(end\|highlight\|link\|replace\|start\)\>" nextgroup=javaCommentMarkupTagAttr,javaSpaceError skipwhite |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
214 syn match javaCommentMarkupTagAttr contained "\<region\>" nextgroup=javaCommentMarkupTagAttr,javaSpaceError skipwhite |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
215 syn region javaCommentMarkupTagAttr contained transparent matchgroup=htmlArg start=/\<\%(re\%(gex\|gion\|placement\)\|substring\|t\%(arget\|ype\)\)\%(\s*=\)\@=/ matchgroup=htmlString end=/\%(=\s*\)\@<=\%("[^"]\+"\|'[^']\+'\|\%([.-]\|\k\)\+\)/ nextgroup=javaCommentMarkupTagAttr,javaSpaceError skipwhite oneline |
34613
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
216 hi def link javaCommentMarkupTagAttr htmlArg |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
217 hi def link javaCommentString javaString |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
218 hi def link javaComment2String javaString |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
219 hi def link javaCommentCharacter javaCharacter |
34632
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
220 syn match javaCommentError contained "/\*"me=e-1 display |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
221 hi def link javaCommentError javaError |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
222 hi def link javaCommentStart javaComment |
7 | 223 |
224 syn cluster javaTop add=javaComment,javaLineComment | |
225 | |
226 if !exists("java_ignore_javadoc") && main_syntax != 'jsp' | |
227 syntax case ignore | |
228 " syntax coloring for javadoc comments (HTML) | |
29104 | 229 syntax include @javaHtml syntax/html.vim |
7 | 230 unlet b:current_syntax |
2034 | 231 " HTML enables spell checking for all text that is not in a syntax item. This |
232 " is wrong for Java (all identifiers would be spell-checked), so it's undone | |
233 " here. | |
234 syntax spell default | |
235 | |
34632
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
236 syn region javaDocComment start="/\*\*" end="\*/" keepend contains=javaCommentTitle,@javaHtml,javaDocTags,javaDocSeeTag,javaDocCodeTag,javaDocSnippetTag,javaTodo,javaCommentError,javaSpaceError,@Spell |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
237 syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*" matchgroup=javaCommentTitle end="\.$" end="\.[ \t\r]\@=" end="\%(^\s*\**\s*\)\@<=@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1 contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,javaDocTags,javaDocSeeTag,javaDocCodeTag,javaDocSnippetTag |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
238 syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*\s*\r\=\n\=\s*\**\s*\%({@return\>\)\@=" matchgroup=javaCommentTitle end="}\%(\s*\.*\)*" contains=@javaHtml,javaCommentStar,javaTodo,javaCommentError,javaSpaceError,@Spell,javaDocTags,javaDocSeeTag,javaDocCodeTag,javaDocSnippetTag |
34613
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
239 syn region javaDocTags contained start="{@\%(li\%(teral\|nk\%(plain\)\=\)\|inherit[Dd]oc\|doc[rR]oot\|value\)\>" end="}" |
34632
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
240 syn match javaDocTags contained "@\%(param\|exception\|throws\|since\)\s\+\S\+" contains=javaDocParam |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
241 syn match javaDocParam contained "\s\S\+" |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
242 syn match javaDocTags contained "@\%(version\|author\|return\|deprecated\|serial\%(Field\|Data\)\=\)\>" |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
243 syn region javaDocSeeTag contained matchgroup=javaDocTags start="@see\s\+" matchgroup=NONE end="\_."re=e-1 contains=javaDocSeeTagParam |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
244 syn match javaDocSeeTagParam contained @"\_[^"]\+"\|<a\s\+\_.\{-}</a>\|\%(\k\|\.\)*\%(#\k\+\%((\_[^)]*)\)\=\)\=@ contains=@javaHtml extend |
34613
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
245 syn region javaCodeSkipBlock contained transparent start="{\%(@code\>\)\@!" end="}" contains=javaCodeSkipBlock,javaDocCodeTag |
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
246 syn region javaDocCodeTag contained start="{@code\>" end="}" contains=javaDocCodeTag,javaCodeSkipBlock |
34632
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
247 syn region javaDocSnippetTagAttr contained transparent matchgroup=htmlArg start=/\<\%(class\|file\|id\|lang\|region\)\%(\s*=\)\@=/ matchgroup=htmlString end=/:$/ end=/\%(=\s*\)\@<=\%("[^"]\+"\|'[^']\+'\|\%([.\\/-]\|\k\)\+\)/ nextgroup=javaDocSnippetTagAttr skipwhite skipnl |
34613
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
248 syn region javaSnippetSkipBlock contained transparent start="{\%(@snippet\>\)\@!" end="}" contains=javaSnippetSkipBlock,javaDocSnippetTag,javaCommentMarkupTag |
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
249 syn region javaDocSnippetTag contained start="{@snippet\>" end="}" contains=javaDocSnippetTag,javaSnippetSkipBlock,javaDocSnippetTagAttr,javaCommentMarkupTag |
7 | 250 syntax case match |
251 endif | |
252 | |
253 " match the special comment /**/ | |
254 syn match javaComment "/\*\*/" | |
255 | |
256 " Strings and constants | |
2152 | 257 syn match javaSpecialError contained "\\." |
7 | 258 syn match javaSpecialCharError contained "[^']" |
34466
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
259 " Escape Sequences (JLS-17, §3.10.7): |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
260 syn match javaSpecialChar contained "\\\%(u\x\x\x\x\|[0-3]\o\o\|\o\o\=\|[bstnfr"'\\]\)" |
7 | 261 syn region javaString start=+"+ end=+"+ end=+$+ contains=javaSpecialChar,javaSpecialError,@Spell |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
262 syn region javaString start=+"""[ \t\x0c\r]*$+hs=e+1 end=+"""+he=s-1 contains=javaSpecialChar,javaSpecialError,javaTextBlockError,@Spell |
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
263 syn match javaTextBlockError +"""\s*"""+ |
34514
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
264 syn region javaStrTemplEmbExp contained matchgroup=javaStrTempl start="\\{" end="}" contains=TOP |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
265 syn region javaStrTempl start=+\%(\.[[:space:]\n]*\)\@<="+ end=+"+ contains=javaStrTemplEmbExp,javaSpecialChar,javaSpecialError,@Spell |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
266 syn region javaStrTempl start=+\%(\.[[:space:]\n]*\)\@<="""[ \t\x0c\r]*$+hs=e+1 end=+"""+he=s-1 contains=javaStrTemplEmbExp,javaSpecialChar,javaSpecialError,javaTextBlockError,@Spell |
34466
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
267 " The next line is commented out, it can cause a crash for a long line |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
268 "syn match javaStringError +"\%([^"\\]\|\\.\)*$+ |
7 | 269 syn match javaCharacter "'[^']*'" contains=javaSpecialChar,javaSpecialCharError |
270 syn match javaCharacter "'\\''" contains=javaSpecialChar | |
271 syn match javaCharacter "'[^\\]'" | |
34466
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
272 " Integer literals (JLS-17, §3.10.1): |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
273 syn keyword javaNumber 0 0l 0L |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
274 syn match javaNumber "\<\%(0\%([xX]\x\%(_*\x\)*\|_*\o\%(_*\o\)*\|[bB][01]\%(_*[01]\)*\)\|[1-9]\%(_*\d\)*\)[lL]\=\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
275 " Decimal floating-point literals (JLS-17, §3.10.2): |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
276 " Against "\<\d\+\>\.": |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
277 syn match javaNumber "\<\d\%(_*\d\)*\." |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
278 syn match javaNumber "\%(\<\d\%(_*\d\)*\.\%(\d\%(_*\d\)*\)\=\|\.\d\%(_*\d\)*\)\%([eE][-+]\=\d\%(_*\d\)*\)\=[fFdD]\=\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
279 syn match javaNumber "\<\d\%(_*\d\)*[eE][-+]\=\d\%(_*\d\)*[fFdD]\=\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
280 syn match javaNumber "\<\d\%(_*\d\)*\%([eE][-+]\=\d\%(_*\d\)*\)\=[fFdD]\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
281 " Hexadecimal floating-point literals (JLS-17, §3.10.2): |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
282 syn match javaNumber "\<0[xX]\%(\x\%(_*\x\)*\.\=\|\%(\x\%(_*\x\)*\)\=\.\x\%(_*\x\)*\)[pP][-+]\=\d\%(_*\d\)*[fFdD]\=\>" |
7 | 283 |
34466
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
284 " Unicode characters |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
285 syn match javaSpecial "\\u\x\x\x\x" |
7 | 286 |
34514
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
287 syn cluster javaTop add=javaString,javaStrTempl,javaCharacter,javaNumber,javaSpecial,javaStringError,javaTextBlockError |
7 | 288 |
289 if exists("java_highlight_functions") | |
290 if java_highlight_functions == "indent" | |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
291 syn match javaFuncDef "^\(\t\| \{8\}\)[_$a-zA-Z][_$a-zA-Z0-9_. \[\]<>]*([^-+*/]*)" contains=javaScopeDecl,javaConceptKind,javaType,javaStorageClass,@javaClasses,javaAnnotation |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
292 syn region javaFuncDef start=+^\(\t\| \{8\}\)[$_a-zA-Z][$_a-zA-Z0-9_. \[\]<>]*([^-+*/]*,\s*+ end=+)+ contains=javaScopeDecl,javaConceptKind,javaType,javaStorageClass,@javaClasses,javaAnnotation |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
293 syn match javaFuncDef "^ [$_a-zA-Z][$_a-zA-Z0-9_. \[\]<>]*([^-+*/]*)" contains=javaScopeDecl,javaConceptKind,javaType,javaStorageClass,@javaClasses,javaAnnotation |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
294 syn region javaFuncDef start=+^ [$_a-zA-Z][$_a-zA-Z0-9_. \[\]<>]*([^-+*/]*,\s*+ end=+)+ contains=javaScopeDecl,javaConceptKind,javaType,javaStorageClass,@javaClasses,javaAnnotation |
7 | 295 else |
296 " This line catches method declarations at any indentation>0, but it assumes | |
297 " two things: | |
2152 | 298 " 1. class names are always capitalized (ie: Button) |
299 " 2. method names are never capitalized (except constructors, of course) | |
6648 | 300 "syn region javaFuncDef start=+^\s\+\(\(public\|protected\|private\|static\|abstract\|final\|native\|synchronized\)\s\+\)*\(\(void\|boolean\|char\|byte\|short\|int\|long\|float\|double\|\([A-Za-z_][A-Za-z0-9_$]*\.\)*[A-Z][A-Za-z0-9_$]*\)\(<[^>]*>\)\=\(\[\]\)*\s\+[a-z][A-Za-z0-9_$]*\|[A-Z][A-Za-z0-9_$]*\)\s*([^0-9]+ end=+)+ contains=javaScopeDecl,javaType,javaStorageClass,javaComment,javaLineComment,@javaClasses |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
301 syn region javaFuncDef start=+^\s\+\%(\%(public\|protected\|private\|static\|\%(abstract\|default\)\|final\|native\|synchronized\)\s\+\)*\%(<.*>\s\+\)\?\%(\%(void\|boolean\|char\|byte\|short\|int\|long\|float\|double\|\%([A-Za-z_][A-Za-z0-9_$]*\.\)*[A-Z][A-Za-z0-9_$]*\)\%(<[^(){}]*>\)\=\%(\[\]\)*\s\+[a-z][A-Za-z0-9_$]*\|[A-Z][A-Za-z0-9_$]*\)\s*(+ end=+)+ contains=javaScopeDecl,javaConceptKind,javaType,javaStorageClass,javaComment,javaLineComment,@javaClasses,javaAnnotation |
7 | 302 endif |
34445
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
303 syn match javaLambdaDef "\<\K\k*\>\%(\<default\>\)\@<!\s*->" |
7 | 304 syn match javaBraces "[{}]" |
6648 | 305 syn cluster javaTop add=javaFuncDef,javaBraces,javaLambdaDef |
7 | 306 endif |
307 | |
308 if exists("java_highlight_debug") | |
309 " Strings and constants | |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
310 syn match javaDebugSpecial contained "\\\%(u\x\x\x\x\|[0-3]\o\o\|\o\o\=\|[bstnfr"'\\]\)" |
7 | 311 syn region javaDebugString contained start=+"+ end=+"+ contains=javaDebugSpecial |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
312 syn region javaDebugString contained start=+"""[ \t\x0c\r]*$+hs=e+1 end=+"""+he=s-1 contains=javaDebugSpecial,javaDebugTextBlockError |
34514
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
313 " The highlight groups of java{StrTempl,Debug{,Paren,StrTempl}}\, |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
314 " share one colour by default. Do not conflate unrelated parens. |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
315 syn region javaDebugStrTemplEmbExp contained matchgroup=javaDebugStrTempl start="\\{" end="}" contains=javaComment,javaLineComment,javaDebug\%(Paren\)\@!.* |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
316 syn region javaDebugStrTempl contained start=+\%(\.[[:space:]\n]*\)\@<="+ end=+"+ contains=javaDebugStrTemplEmbExp,javaDebugSpecial |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
317 syn region javaDebugStrTempl contained start=+\%(\.[[:space:]\n]*\)\@<="""[ \t\x0c\r]*$+hs=e+1 end=+"""+he=s-1 contains=javaDebugStrTemplEmbExp,javaDebugSpecial,javaDebugTextBlockError |
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
318 " The next line is commented out, it can cause a crash for a long line |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
319 " syn match javaDebugStringError contained +"\%([^"\\]\|\\.\)*$+ |
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
320 syn match javaDebugTextBlockError contained +"""\s*"""+ |
7 | 321 syn match javaDebugCharacter contained "'[^\\]'" |
322 syn match javaDebugSpecialCharacter contained "'\\.'" | |
323 syn match javaDebugSpecialCharacter contained "'\\''" | |
34466
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
324 syn keyword javaDebugNumber contained 0 0l 0L |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
325 syn match javaDebugNumber contained "\<\d\%(_*\d\)*\." |
34466
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
326 syn match javaDebugNumber contained "\<\%(0\%([xX]\x\%(_*\x\)*\|_*\o\%(_*\o\)*\|[bB][01]\%(_*[01]\)*\)\|[1-9]\%(_*\d\)*\)[lL]\=\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
327 syn match javaDebugNumber contained "\%(\<\d\%(_*\d\)*\.\%(\d\%(_*\d\)*\)\=\|\.\d\%(_*\d\)*\)\%([eE][-+]\=\d\%(_*\d\)*\)\=[fFdD]\=\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
328 syn match javaDebugNumber contained "\<\d\%(_*\d\)*[eE][-+]\=\d\%(_*\d\)*[fFdD]\=\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
329 syn match javaDebugNumber contained "\<\d\%(_*\d\)*\%([eE][-+]\=\d\%(_*\d\)*\)\=[fFdD]\>" |
315c0d987fd2
runtime(java): Improve the recognition of literals (#14120)
Christian Brabandt <cb@256bit.org>
parents:
34445
diff
changeset
|
330 syn match javaDebugNumber contained "\<0[xX]\%(\x\%(_*\x\)*\.\=\|\%(\x\%(_*\x\)*\)\=\.\x\%(_*\x\)*\)[pP][-+]\=\d\%(_*\d\)*[fFdD]\=\>" |
7 | 331 syn keyword javaDebugBoolean contained true false |
332 syn keyword javaDebugType contained null this super | |
333 syn region javaDebugParen start=+(+ end=+)+ contained contains=javaDebug.*,javaDebugParen | |
334 | |
335 " to make this work you must define the highlighting for these groups | |
336 syn match javaDebug "\<System\.\(out\|err\)\.print\(ln\)*\s*("me=e-1 contains=javaDebug.* nextgroup=javaDebugParen | |
36 | 337 syn match javaDebug "\<p\s*("me=e-1 contains=javaDebug.* nextgroup=javaDebugParen |
7 | 338 syn match javaDebug "[A-Za-z][a-zA-Z0-9_]*\.printStackTrace\s*("me=e-1 contains=javaDebug.* nextgroup=javaDebugParen |
339 syn match javaDebug "\<trace[SL]\=\s*("me=e-1 contains=javaDebug.* nextgroup=javaDebugParen | |
340 | |
341 syn cluster javaTop add=javaDebug | |
342 | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
343 hi def link javaDebug Debug |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
344 hi def link javaDebugString DebugString |
34514
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
345 hi def link javaDebugStrTempl Macro |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
346 hi def link javaDebugStringError javaError |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
347 hi def link javaDebugTextBlockError javaDebugStringError |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
348 hi def link javaDebugType DebugType |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
349 hi def link javaDebugBoolean DebugBoolean |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
350 hi def link javaDebugNumber Debug |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
351 hi def link javaDebugSpecial DebugSpecial |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
352 hi def link javaDebugSpecialCharacter DebugSpecial |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
353 hi def link javaDebugCharacter DebugString |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
354 hi def link javaDebugParen Debug |
7 | 355 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
356 hi def link DebugString String |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
357 hi def link DebugSpecial Special |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
358 hi def link DebugBoolean Boolean |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
359 hi def link DebugType Type |
7 | 360 endif |
361 | |
362 if exists("java_mark_braces_in_parens_as_errors") | |
363 syn match javaInParen contained "[{}]" | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
364 hi def link javaInParen javaError |
7 | 365 syn cluster javaTop add=javaInParen |
366 endif | |
367 | |
368 " catch errors caused by wrong parenthesis | |
6648 | 369 syn region javaParenT transparent matchgroup=javaParen start="(" end=")" contains=@javaTop,javaParenT1 |
7 | 370 syn region javaParenT1 transparent matchgroup=javaParen1 start="(" end=")" contains=@javaTop,javaParenT2 contained |
371 syn region javaParenT2 transparent matchgroup=javaParen2 start="(" end=")" contains=@javaTop,javaParenT contained | |
2152 | 372 syn match javaParenError ")" |
36 | 373 " catch errors caused by wrong square parenthesis |
6648 | 374 syn region javaParenT transparent matchgroup=javaParen start="\[" end="\]" contains=@javaTop,javaParenT1 |
36 | 375 syn region javaParenT1 transparent matchgroup=javaParen1 start="\[" end="\]" contains=@javaTop,javaParenT2 contained |
376 syn region javaParenT2 transparent matchgroup=javaParen2 start="\[" end="\]" contains=@javaTop,javaParenT contained | |
2152 | 377 syn match javaParenError "\]" |
36 | 378 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
379 hi def link javaParenError javaError |
7 | 380 |
6648 | 381 if exists("java_highlight_functions") |
382 syn match javaLambdaDef "([a-zA-Z0-9_<>\[\], \t]*)\s*->" | |
383 " needs to be defined after the parenthesis error catcher to work | |
384 endif | |
385 | |
7 | 386 if !exists("java_minlines") |
387 let java_minlines = 10 | |
388 endif | |
34632
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
389 |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
390 " Note that variations of a /*/ balanced comment, e.g., /*/*/, /*//*/, |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
391 " /* /*/, /* /*/, etc., may have their rightmost /*/ part accepted |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
392 " as a comment start by ':syntax sync ccomment'; consider alternatives |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
393 " to make synchronisation start further towards file's beginning by |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
394 " bumping up g:java_minlines or issuing ':syntax sync fromstart' or |
a717b67d7241
runtime(java): Recognise the inline kind of the {@return} tag (#14284)
Christian Brabandt <cb@256bit.org>
parents:
34613
diff
changeset
|
395 " preferring &foldmethod set to 'syntax'. |
7 | 396 exec "syn sync ccomment javaComment minlines=" . java_minlines |
397 | |
398 " The default highlighting. | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
399 hi def link javaLambdaDef Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
400 hi def link javaFuncDef Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
401 hi def link javaVarArg Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
402 hi def link javaBraces Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
403 hi def link javaBranch Conditional |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
404 hi def link javaUserLabelRef javaUserLabel |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
405 hi def link javaLabel Label |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
406 hi def link javaUserLabel Label |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
407 hi def link javaConditional Conditional |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
408 hi def link javaRepeat Repeat |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
409 hi def link javaExceptions Exception |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
410 hi def link javaAssert Statement |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
411 hi def link javaStorageClass StorageClass |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
412 hi def link javaMethodDecl javaStorageClass |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
413 hi def link javaClassDecl javaStorageClass |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
414 hi def link javaScopeDecl javaStorageClass |
34445
5609b011fd70
runtime(java): Recognise _when_ clauses in _switch_ blocks
Christian Brabandt <cb@256bit.org>
parents:
34401
diff
changeset
|
415 hi def link javaConceptKind NonText |
14421 | 416 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
417 hi def link javaBoolean Boolean |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
418 hi def link javaSpecial Special |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
419 hi def link javaSpecialError Error |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
420 hi def link javaSpecialCharError Error |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
421 hi def link javaString String |
34514
728675946924
runtime(java): Recognise string templates (#14150)
Christian Brabandt <cb@256bit.org>
parents:
34468
diff
changeset
|
422 hi def link javaStrTempl Macro |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
423 hi def link javaCharacter Character |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
424 hi def link javaSpecialChar SpecialChar |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
425 hi def link javaNumber Number |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
426 hi def link javaError Error |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
427 hi def link javaStringError Error |
34468
f5d114f7440e
runtime(java): Recognise text blocks (#14128)
Christian Brabandt <cb@256bit.org>
parents:
34466
diff
changeset
|
428 hi def link javaTextBlockError javaStringError |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
429 hi def link javaStatement Statement |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
430 hi def link javaOperator Operator |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
431 hi def link javaComment Comment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
432 hi def link javaDocComment Comment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
433 hi def link javaLineComment Comment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
434 hi def link javaConstant Constant |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
435 hi def link javaTypedef Typedef |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
436 hi def link javaTodo Todo |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
437 hi def link javaAnnotation PreProc |
7 | 438 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
439 hi def link javaCommentTitle SpecialComment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
440 hi def link javaDocTags Special |
34613
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
441 hi def link javaDocCodeTag Special |
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
442 hi def link javaDocSnippetTag Special |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
443 hi def link javaDocParam Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
444 hi def link javaDocSeeTagParam Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
445 hi def link javaCommentStar javaComment |
7 | 446 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
447 hi def link javaType Type |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
448 hi def link javaExternal Include |
7 | 449 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
450 hi def link htmlComment Special |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
451 hi def link htmlCommentPart Special |
34613
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
452 hi def link htmlArg Type |
b0d91b836400
runtime(java): Recognise the {@snippet} documentation tag (#14271)
Christian Brabandt <cb@256bit.org>
parents:
34514
diff
changeset
|
453 hi def link htmlString String |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
454 hi def link javaSpaceError Error |
7 | 455 |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
456 if s:module_info_cur_buf |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
457 hi def link javaModuleStorageClass StorageClass |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
458 hi def link javaModuleStmt Statement |
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
459 hi def link javaModuleExternal Include |
14421 | 460 endif |
461 | |
7 | 462 let b:current_syntax = "java" |
463 | |
464 if main_syntax == 'java' | |
465 unlet main_syntax | |
466 endif | |
467 | |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
468 let b:spell_options = "contained" |
3854 | 469 let &cpo = s:cpo_save |
34775
e0059b2d4e2b
runtime(java): Improve the matching of contextual keywords
Christian Brabandt <cb@256bit.org>
parents:
34644
diff
changeset
|
470 unlet s:module_info_cur_buf s:cpo_save |
7 | 471 |
472 " vim: ts=8 |