From 0ee75344101963a0d8f709828acbe2d8a6b0b59f Mon Sep 17 00:00:00 2001 From: Ludovic Koenig Date: Tue, 6 Aug 2019 21:48:39 +0200 Subject: [PATCH] Fix the highlight of import for nested classes It fixes the highlight of the 'import' statement for nested classes. In order to do so, it declares the 'javaOdysseyDottedClass' before the 'javaOdysseyImport' syntax group. It follows that all outer classes are considered as being part of the 'javaOdysseyDottedClass' syntax group. It fixes #1 on GitHub. --- after/syntax/java.vim | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/after/syntax/java.vim b/after/syntax/java.vim index 5ec3277..02b4026 100644 --- a/after/syntax/java.vim +++ b/after/syntax/java.vim @@ -35,15 +35,15 @@ 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 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 javaOdysseyDottedClass "\<\u\w*\>\."me=e-1 containedin=javaParenT,javaParenT1,javaParenT2 +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 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*;\)\@=" +syntax match javaOdysseyImport "\%(\\s\+\%(\w\+\.\)\+\)\@<=\%(\u\w*\)\%(\s*;\)\@=" syntax match javaOdysseyStaticMethod "\%(\\s\+\\s\+\%(\w\+\.\)\+\)\@<=\%(\l\w*\)\%(\s*;\)\@=" syntax match javaOdysseyStaticClass "\%(\\s\+\\s\+\%(\w\+\.\)\+\)\@<=\%(\u\w*\)\%(\s*;\)\@=" syntax match javaOdysseyExtends "\%(\\s\+\)\@<=\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=" contains=javaOdysseyGeneric,javaOdysseySeparator syntax match javaOdysseyImplements "\%(\\s\+\)\@<=\%(\<\u\w*\>\)\%(<\%(\u\w*\|,\|\s\|<\|>\)*>\)\=" contains=javaOdysseyGeneric,javaOdysseySeparator -syntax match javaOdysseyDottedClass "\<\u\w*\>\."me=e-1 containedin=javaParenT,javaParenT1,javaParenT2 -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