2016年の更新
Vim構文ファイルは、v7.4.649(2015年3月)でこのために更新されました。したがって、このパッチがあれば、これを行う必要はありません。
これを修正する最も簡単な方法は、おそらく新しいsyntax/java.vimファイルをダウンロードして~/.vim/syntax/java.vim、デフォルトの設定を上書きするように設定することです$VIMRUNTIME/syntax/java.vim。html.vimこれにjava.vim依存するように動作させるには、シンボリックリンクする必要があります:
ln -s /usr/share/vim/vim74/syntax/html.vim ~/.vim/syntax/
元の答え
私/usr/share/vim/vim74/syntax/java.vimはこれを持っています:
syn match javaError "<<<\|\.\.\|=>\|||=\|&&=\|[^-]->\|\*\/"
参照[^-]->部分を?これにより、エラーが強調表示されます。
~/.vim/after/syntax/java.vim同じルールからラムダ構文を除いたファイルを追加することにより、このルールをオーバーライドできます。
syn clear javaError
syn match javaError "<<<\|\.\.\|=>\|||=\|&&=\|\*\/"
ボーナスポイントについては、この行を追加して、これを関数として強調表示できます。
syn match javaFuncDef "[^-]->"
バグレポートの提出を検討してください。:help bug-reports方法を説明します。...inのように、エラーとしてハイライトされたより多くの(新しい?)コンストラクトがあるようですpublic static void main(String... args)。
java_highlight_functions有効になっているかどうかはチェックされません。あなたが一貫性について神経症なら、おそらくsyn match電話の前にそれをチェックするべきです:if exists("java_highlight_functions") | syn match javaFuncDef "[^-]->" | endif