vimdiffの色をカスタマイズするにはどうすればよいですか?


22

私はgitマージツールとしてvimdiffを使用しようとしていますが、使用されている色は耐えられません(少なくともWindows / Mingwでは):背景色と前景色は競合するラインの一部と同じであり、不必要に難しいです何が起こっているかを把握するために(以下を含む以下の行を参照include=)。

例

回答:


13

色は、次の4つのハイライトグループ(:help hl-DiffAdd)によって制御されます。

DiffAdd     diff mode: Added line
DiffChange  diff mode: Changed line
DiffDelete  diff mode: Deleted line
DiffText    diff mode: Changed text within a changed line

これらは通常、配色によって定義されますが、差分強調表示ではなく、全体的に配色が好きな場合~/.vimrcは、:colorschemeコマンドでカスタマイズできます。を使用して再定義するだけ:highlightです。私の個人的なカスタマイズは次のとおりです(GVIMの場合、端末の場合はctermfg/bg=...代わりに/追加で適切な属性が必要です):

hi DiffAdd      gui=none    guifg=NONE          guibg=#bada9f
hi DiffChange   gui=none    guifg=NONE          guibg=#e5d5ac
hi DiffDelete   gui=bold    guifg=#ff8080       guibg=#ffb0b0
hi DiffText     gui=none    guifg=NONE          guibg=#8cbee2

その場でカラースキームを切り替える場合は、これらの:hiコマンドを再起動する必要があります:autocmd ColorScheme * hi ...


11

1つの簡単な修正方法は、構文の強調表示を無効にすることです。コード構文の強調表示により、前景のテキストがvimdiffの背景色と同じ色になり、テキストが「見えない」ことがあります。

:syntax off

vimdiffでこれを自動的に実行する場合は、これをの最後に追加します~/.vimrc

if &diff
    syntax off
endif
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.