Загружать разные цвета при использовании vimdiff - PullRequest
119 голосов
/ 07 января 2010

Как загрузить другую цветовую схему при выполнении vimdiff.

Я хочу это, потому что моя текущая цветовая схема не показывает должным образом различия в vimdiff, For. например, некоторые различия отображаются с тем же цветом fg / bg. Это очень затрудняет понимание различий. Поэтому каждый раз, когда я делаю vimdiff, я должен делать :colorscheme some_other_scheme

Можно ли это сделать в .vimrc файле?

Ответы [ 12 ]

2 голосов
/ 02 марта 2018

моя текущая схема цветов не отображает некоторые различия в vimdiff, For. например, некоторые различия отображаются с тем же цветом fg / bg

На самом деле, я обнаружил, что основной виновник того же цвета fg / bg - из-за конфликта между подсветкой синтаксиса кода и схемой сравнения цветов. Вы можете попытаться изменить цветовую схему различий, но это может быть игра в прятки при открытии файлов разных типов (с разной подсветкой синтаксиса кода).

Верное решение - отключить подсветку синтаксиса в vimdiff. Вы можете ввести:

:syntax off

Или, если вы хотите автоматически делать это каждый раз, то добавьте это в конец вашего ~/.vimrc:

if &diff
    syntax off
endif
0 голосов
/ 04 апреля 2019

Чтобы расширить @dean и некоторые другие ответы здесь, добавьте это к своему .vimrc:

if &diff
  " colorscheme evening
  highlight DiffAdd    cterm=bold ctermfg=10 ctermbg=17 gui=none guifg=bg guibg=Red
  highlight DiffDelete cterm=bold ctermfg=10 ctermbg=17 gui=none guifg=bg guibg=Red
  highlight DiffChange cterm=bold ctermfg=10 ctermbg=17 gui=none guifg=bg guibg=Red
  highlight DiffText   cterm=bold ctermfg=10 ctermbg=88 gui=none guifg=bg guibg=Red
endif
...