diff --git a/after/syntax/java.vim b/after/syntax/java.vim index 1857b4d..b0ff150 100644 --- a/after/syntax/java.vim +++ b/after/syntax/java.vim @@ -16,15 +16,20 @@ " License: MIT " " Java Syntax {{{ + syntax keyword javaOdysseyThis this +syntax match javaOdysseyArrow "->" containedin=javaParenT,javaParenT1,javaParenT2 syntax match javaOdysseyClass "\%(\\s\+\)\@<=\<\u\w*\>" syntax match javaOdysseyInterface "\%(\\s\+\)\@<=\<\u\w*\>" +syntax match javaOdysseyEnum "\%(\\s\+\)\@<=\<\u\w*\>" syntax match javaOdysseyArray "\[\]" contained syntax match javaOdysseyGeneric "[><]" contained syntax match javaOdysseySeparator "," contained -syntax match javaOdysseyType "\%(\<\u\w*\>\%(<\%(\w\|,\|\s\|<\|>\)\+>\)\=\%(\[\]\)\=\)\%(\s*\<\l\w*\>\)\@=" containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,javaOdysseyArray,javaOdysseySeparator -syntax match javaOdysseyConstructor "\%(\<\u\w*\>\)\%(<\%(\w\|,\|\s\|<\|>\)\+>\)\=\%((\|\[\)"me=e-1 containedin=javaParenT,javaParenT1,javaParenT2 contains=javaOdysseyGeneric,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 javaOdysseyMethod "\<\l\w*\>("me=e-1 containedin=javaParenT,javaParenT1,javaParenT2 -syntax match javaOdysseyCasting "(\<\u\w*\>\%(<\%(\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 "\%(\\s\+\%(\l\+.\)\+\)\@<=\%(\u\w*\)\s*;" + " }}} " vim: foldmethod=marker diff --git a/colors/odyssey.vim b/colors/odyssey.vim index 44747fb..0f490fa 100644 --- a/colors/odyssey.vim +++ b/colors/odyssey.vim @@ -263,13 +263,16 @@ call s:l( 'javaExternal', 'Statement') call s:l( 'javaTypeDef', 'javaOdysseyThis') call s:l( 'javaOdysseyClass', 'Type') call s:l( 'javaOdysseyInterface', 'Type') +call s:l( 'javaOdysseyEnum', 'Type') call s:l( 'javaOdysseyCasting', 'Type') +call s:l( 'javaOdysseyImport', 'Type') call s:l( 'javaOdysseyArray', 'Normal') call s:l( 'javaOdysseyGeneric', 'Normal') call s:l( 'javaOdysseyType', 'Type') call s:l('javaOdysseyConstructor', 'Type') call s:l( 'javaOdysseyMethod', 'Function') call s:l( 'javaOdysseyThis', 'Special') +call s:l( 'javaOdysseyArrow', 'Operator') " }}} " Ruby Highlights {{{