Як налаштувати кольори vimdiff?


22

Я намагаюся використовувати vimdiff як мій інструмент злиття git, але використовувані кольори роблять його нестерпним (принаймні для Windows / Mingw): колір фону та колір переднього плану однакові для деяких суперечливих ліній, що робить його непотрібним важким щоб з'ясувати, що відбувається (див. рядки, що містять нижче include=).

приклад

Відповіді:


13

Кольорами керують ці чотири групи виділень ( :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

Одне швидке виправлення - відключити виділення синтаксису. Іноді підсвічування синтаксису коду призведе до того, що текст переднього плану буде таким же кольором, як і колір тла vimdiff, зробивши текст "невидимим".

:syntax off

Якщо ви хочете автоматично зробити це для vimdiff, додайте це до кінця ~/.vimrc:

if &diff
    syntax off
endif
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.