私はVimがRubyとPythonの好みの配色で構文を強調表示していることがわかりましたが、Javaコードを書く必要があるときはいつでも、そもそもハイライトをオンにしていません。
ご覧のとおり、キーワードは強調表示されていますが、括弧またはメソッドの強調表示はありません。 Sublime Text(私にとってはそれほど好まれないエディター)で、私ははるかに優れた強調表示を目にしています。クラス名のイタリック体と数学演算子の強調表示があります。比較すると、Vimはまばらに見えます。
Vimで魅力的なSublime Textスタイルの強調表示を取得する方法はありますか?
cSyntaxAfter プラグインを見てください。オペレーターなどを強調しています。
別のオプションは、syntax/Java.vim
スクリプトを編集し、Operator
グループの強調表示を追加することです。例としてsyntax/Pascal.vim
をご覧ください。
Javaシンタックスファイルがグループとして認識している場合に可能であるはずですが、クラス名にイタリックを使用したい場合、クラス名はJavaTypedef
グループ。
次に、そのグループに新しいハイライトを定義する必要があります。それは行を削除することを意味します
JavaHiLink javaTypedef Typedef
構文ファイルから、新しいものを追加します。以下では、TypedefがリンクされているTypeのハイライト宣言を再利用しています。 term
をunderline
からitalic
に変更しました。
以下をyout Java.vim
構文ファイルに追加する必要があります。
hi javaTypedef term=italic cterm=NONE ctermfg=LightGreen ctermbg=NONE gui=bold guifg=#60ff60 guibg=NONE
そこには、リッチな構文ファイルがないだけのようです。
ただし、バンドルされている構文ファイルをもう少し絞ることができます。
let Java_highlight_functions = 1
let Java_highlight_all = 1
" If you are trying this at runtime, you need to reload the syntax file
set filetype=Java
" Some more highlights, in addition to those suggested by cmcginty
highlight link javaScopeDecl Statement
highlight link javaType Type
highlight link javaDocTags PreProc
最初のトリックは here から来ました。
誰かがより豊かなJava構文ファイルを作成した場合、それを vim-polyglot !
私はVimでbase16-defaultの配色を使用していますが、なんらかの理由でJavaの色の定義がうまくいっていません。次の行を追加すると、その方法の一部を取得するのに役立ちます。
" Java: 'new', 'instanceof'
highlight Operator ctermfg=5 guifg=#d175bc
" Java: 'this', 'super'
highlight Typedef ctermfg=5 guifg=#d175bc
" Java: 'void', 'int', 'double'
highlight Type ctermfg=4 guifg=#69b7d3
" literal numbers
highlight Number term=bold ctermfg=16 gui=bold guifg=#d2d22d