Add suports for Java Enum values and constructors
Enum values that are often/always written in uppercase are now handled and considered as constants. They are highlighted within the Enum declaration and outside of it in case statements or through the use of the dot operator on an enum.
This commit is contained in:
+18
-16
@@ -17,22 +17,24 @@
|
|||||||
"
|
"
|
||||||
" Java Syntax {{{
|
" Java Syntax {{{
|
||||||
|
|
||||||
syntax keyword javaOdysseyThis this
|
syntax keyword javaOdysseyThis this
|
||||||
syntax keyword javaOdysseyLombok val var
|
syntax keyword javaOdysseyLombok val var
|
||||||
syntax match javaOdysseyArrow "->" containedin=javaParenT,javaParenT1,javaParenT2
|
syntax match javaOdysseyArrow "->" containedin=javaParenT,javaParenT1,javaParenT2
|
||||||
syntax match javaOdysseyClass "\%(\<class\>\s\+\)\@<=\<\u\w*\>"
|
syntax match javaOdysseyClass "\%(\<class\>\s\+\)\@<=\<\u\w*\>"
|
||||||
syntax match javaOdysseyInterface "\%(\<interface\>\s\+\)\@<=\<\u\w*\>"
|
syntax match javaOdysseyInterface "\%(\<interface\>\s\+\)\@<=\<\u\w*\>"
|
||||||
syntax match javaOdysseyEnum "\%(\<enum\>\s\+\)\@<=\<\u\w*\>"
|
syntax match javaOdysseyEnum "\%(\<enum\>\s\+\)\@<=\<\u\w*\>"
|
||||||
syntax match javaOdysseyArray "\[\]" contained
|
syntax match javaOdysseyArray "\[\]" contained
|
||||||
syntax match javaOdysseyGeneric "[><]" contained
|
syntax match javaOdysseyGeneric "[><]" contained
|
||||||
syntax match javaOdysseySeparator "," contained
|
syntax match javaOdysseySeparator "," contained
|
||||||
syntax match javaOdysseyType "\%(\<\u\w*\>\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=\%(\[\]\)\=\)\%(\s*\<\l\w*\>\)\@=" containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,javaOdysseyArray,javaOdysseySeparator
|
syntax match javaOdysseyType "\%(\<\u\w*\>\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=\%(\[\]\)\=\)\%(\s*\<\l\w*\>\)\@=" containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,javaOdysseyArray,javaOdysseySeparator
|
||||||
syntax match javaOdysseyConstructor "\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=\%((\|\[\)"me=e-1 containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,javaOdysseySeparator
|
syntax match javaOdysseyConstructor "\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=\%((\|\[\)"me=e-1 containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,javaOdysseySeparator
|
||||||
syntax match javaOdysseyMethod "\<\l\w*\>("me=e-1 containedin=javaParenT,javaParenT1,javaParenT2
|
syntax match javaOdysseyMethod "\<\l\w*\>("me=e-1 containedin=javaParenT,javaParenT1,javaParenT2
|
||||||
syntax match javaOdysseyCasting "(\<\u\w*\>\%(<\%(\u\w*\|,\|\s\|<\|>\)\+>\)\=\%(\[\]\)\=)"hs=s+1,he=e-1 containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,javaOdysseyArray,javaOdysseySeparator
|
syntax match javaOdysseyCasting "(\<\u\w*\>\%(<\%(\u\w*\|,\|\s\|<\|>\)\+>\)\=\%(\[\]\)\=)"hs=s+1,he=e-1 containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,javaOdysseyArray,javaOdysseySeparator
|
||||||
syntax match javaOdysseyImport "\%(\<import\>\s\+\%(\l\+.\)\+\)\@<=\%(\u\w*\)\%(\s*;\)\@="
|
syntax match javaOdysseyImport "\%(\<import\>\s\+\%(\l\+.\)\+\)\@<=\%(\u\w*\)\%(\s*;\)\@="
|
||||||
syntax match javaOdysseyExtends "\%(\<extends\>\s\+\)\@<=\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=" contains=javaOdysseyGeneric,javaOdysseySeparator
|
syntax match javaOdysseyExtends "\%(\<extends\>\s\+\)\@<=\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=" contains=javaOdysseyGeneric,javaOdysseySeparator
|
||||||
syntax match javaOdysseyImplements "\%(\<implements\>\s\+\)\@<=\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=" contains=javaOdysseyGeneric,javaOdysseySeparator
|
syntax match javaOdysseyImplements "\%(\<implements\>\s\+\)\@<=\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=" contains=javaOdysseyGeneric,javaOdysseySeparator
|
||||||
|
syntax match javaOdysseyEnumValue "\<[A-Z][_A-Z0-9]*\>" containedin=javaParenT,javaParenT1,javaParenT2,javaLabelRegion
|
||||||
|
syntax match javaOdysseyEnumConstructor "\<[A-Z][_A-Z0-9]*\>("me=e-1 containedin=javaParenT,javaParenT1,javaParenT2
|
||||||
|
|
||||||
" }}}
|
" }}}
|
||||||
" vim: foldmethod=marker
|
" vim: foldmethod=marker
|
||||||
|
|||||||
+20
-18
@@ -258,24 +258,26 @@ call s:h( 'Todo', 'background', 'warning', 'bold')
|
|||||||
" }}}
|
" }}}
|
||||||
" Java Highlights {{{
|
" Java Highlights {{{
|
||||||
|
|
||||||
call s:h( 'javaAnnotation', 'background', 'warning', 'italic')
|
call s:h( 'javaAnnotation', 'background', 'warning', 'italic')
|
||||||
call s:l( 'javaExternal', 'Statement')
|
call s:l( 'javaExternal', 'Statement')
|
||||||
call s:l( 'javaTypeDef', 'javaOdysseyThis')
|
call s:l( 'javaTypeDef', 'javaOdysseyThis')
|
||||||
call s:l( 'javaOdysseyClass', 'Type')
|
call s:l( 'javaOdysseyClass', 'Type')
|
||||||
call s:l( 'javaOdysseyInterface', 'Type')
|
call s:l( 'javaOdysseyInterface', 'Type')
|
||||||
call s:l( 'javaOdysseyEnum', 'Type')
|
call s:l( 'javaOdysseyEnum', 'Type')
|
||||||
call s:l( 'javaOdysseyCasting', 'Type')
|
call s:l( 'javaOdysseyCasting', 'Type')
|
||||||
call s:l( 'javaOdysseyImport', 'Type')
|
call s:l( 'javaOdysseyImport', 'Type')
|
||||||
call s:l( 'javaOdysseyExtends', 'Type')
|
call s:l( 'javaOdysseyExtends', 'Type')
|
||||||
call s:l( 'javaOdysseyImplements', 'Type')
|
call s:l( 'javaOdysseyImplements', 'Type')
|
||||||
call s:l( 'javaOdysseyArray', 'Normal')
|
call s:l( 'javaOdysseyArray', 'Normal')
|
||||||
call s:l( 'javaOdysseyGeneric', 'Normal')
|
call s:l( 'javaOdysseyGeneric', 'Normal')
|
||||||
call s:l( 'javaOdysseyType', 'Type')
|
call s:l( 'javaOdysseyType', 'Type')
|
||||||
call s:l('javaOdysseyConstructor', 'Type')
|
call s:l( 'javaOdysseyConstructor', 'Type')
|
||||||
call s:l( 'javaOdysseyMethod', 'Function')
|
call s:l( 'javaOdysseyMethod', 'Function')
|
||||||
call s:l( 'javaOdysseyThis', 'Special')
|
call s:l( 'javaOdysseyThis', 'Special')
|
||||||
call s:l( 'javaOdysseyArrow', 'Operator')
|
call s:l( 'javaOdysseyArrow', 'Operator')
|
||||||
call s:l( 'javaOdysseyLombok', 'Statement')
|
call s:l( 'javaOdysseyLombok', 'Statement')
|
||||||
|
call s:l( 'javaOdysseyEnumValue', 'Constant')
|
||||||
|
call s:l('javaOdysseyEnumConstructor', 'Constant')
|
||||||
|
|
||||||
" }}}
|
" }}}
|
||||||
" Ruby Highlights {{{
|
" Ruby Highlights {{{
|
||||||
|
|||||||
Reference in New Issue
Block a user