VIM цвета не отображаются должным образом - PullRequest
1 голос
/ 01 апреля 2019

Я использую vim в терминале Mac по умолчанию и пытаюсь изменить цветовую схему на одну из включенных цветовых схем, но ни одна из них не отображается должным образом.

Например, если я наберу: colorscheme blue, цвета изменятся, но вокруг фона будет белая рамка.

enter image description here

Кроме того, если я наберу: colorscheme desert, то есть цветовую схему, которую я хочу использовать, подсветка синтаксиса изменится, а цвет фона - нет.

enter image description here

Обратите внимание, что цветовая схема пустыни якобы должна выглядеть следующим образом: enter image description here

Почему эти цветовые схемы не отображаются должным образом, и есть ли способ их исправить?Спасибо!

1 Ответ

2 голосов
/ 01 апреля 2019

vim's set background={light|dark} - это , а не , предназначенный для изменения цвета фона, он предназначен для работы с существующим цветом фона и дает цвета, которые отображаются на этом фоне.

В некоторых цветовых схемах есть несколько вариантов, чтобы попытаться воспроизвести то, что хотели дизайнеры, в различных настройках. Например, у схемы цветов, которую я использую, есть базовый раздел со всеми настройками цвета, за которым следует специальный раздел из 256 цветов:

....
hi LineNr          guifg=#465457 guibg=#232526
if &t_Co > 255
    hi Normal       ctermfg=252 " ctermbg=232
    hi CursorLine               ctermbg=234   cterm=none
    ...

, который устанавливает все цвета на основе наличия цветового терминала 256, так что люди с 256 цветными терминалами все еще могут приблизиться к тому, что предполагал автор схемы цветов, поскольку терминал с 256 цветами не может рисовать цвета RRGGBB.

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

Наконец, vim только пытается нарисовать фон, где он может рисовать символы, то есть только область печати экрана. Если ширина вашего терминала составляет, например, от 64 до 65 COLUMNS в ширину, то vim может рисовать только 64 символа, и по краям будет некоторое пространство, где vim не пытается рисовать, оставляя фон терминала по умолчанию.

В Terminal.app для Mac самый простой способ изменить цвет фона - перейти в «Настройки» -> «Профили» и либо выбрать тему по умолчанию, либо отредактировать раздел «Цвета и эффекты» Фон . ты хочешь.

...