現在の行の背景を強調表示せずに、vimでonly現在の行番号(左側の列)を強調表示する方法はありますか?理想的には、現在の行番号をboldにしたいと思います。
&cursorline
オプションがアクティブなときに表示される行の強調表示を決定するグループは、CursorLine
とCursorLineNR
の2つです。 1つ目は行全体を強調表示するために使用され、2つ目は行番号を強調表示するために使用されます。だからあなたが望むものを達成するには
CursorLine
の強調表示をクリアします:hi clear CursorLine
:colorscheme
およびset background=
の呼び出し後のみ。
hi clear CursorLine
augroup CLClear
autocmd! ColorScheme * hi clear CursorLine
augroup END
CursorLineNR
の強調表示を設定します(colorschemeで設定されていない場合)。
hi CursorLineNR cterm=bold
augroup CLNRSet
autocmd! ColorScheme * hi CursorLineNR cterm=bold
augroup END
(colorschemeで既に設定されているかどうかを確認することをお勧めします。その場合、おそらくより見栄えが良くなります)。
もちろん、両方のオートコマンドに参加できます。
CursorLineNR
はバージョン7.3.488
を中心に比較的最近追加されました。
これは私のために働いたものです:
highlight CursorLine cterm=NONE ctermbg=NONE ctermfg=NONE guibg=NONE guifg=NONE
set cursorline
配色を設定した後、これを.vimrcで使用しています。もちろん、特定の背景色を設定することもできますが、すべてをNONEに設定すると、行番号が強調表示されます(つまり、明るくなります)。
:hi CursorLine cterm=NONE
しかし、私はすべてを透明にすることを望んでいました(gvimが含まれています)。
CursorLineNR
を使用して、強調表示された数値の前景色と背景色を設定することができました。
私にとってこれは自動コマンドなしで機能し、ほとんどの人が必要とするものなので、これを書いているだけです。
見たい
:se cursorline
そしておそらくさらに/また
:se cursorcolumn
これは私にとって、行の残りではなく行番号を強調するのに役立ちました:
highlight CursorLineNr cterm=NONE ctermbg=15 ctermfg=8 gui=NONE guibg=#ffffff guifg=#d70000
highlight-groups のヘルプでは、排他的な「現在の行数」構文グループについて言及されていないため、公式の回答はno。
役立つ場合は、行全体を強調表示する cursorline オプションを確認することをお勧めします。