Я импортировал соляризованную цветовую схему и палитру. У моего терминала правильные цвета и фон, у gvim правильные цвета и фон, но у vim неправильно окрашенный фон. Текст полностью правильный, но фон выглядит чисто черным.
Вот мой .vimrc:
syntax enable
if has('gui_running')
set background=dark
else
set background=dark
endif
:set t_Co=256
let g:solarized_termcolors=256
colorscheme solarized
Если у кого-то есть какие-либо предложения о том, что может быть причиной этого, я был бы очень признателен. Я запускаю xubuntu с терминалом по умолчанию.
Я должен также упомянуть, что светлая опция приводит к очень желтому фону для Vim.
vimrc
terminal
colorscheme
x11
Oberdiear
источник
источник
g:solarized_termcolors=256
опцию. Если вы счастливы использовать соляризованные цвета в своем терминале, этот метод работает намного лучше. Текст вашего вопроса означает , что вы уже создали свой терминальный использовать соляризации цвета (хотя на скриншоте вы показываете не смотрит на меня , как это делает), так что в этом случае, почему вы с помощьюg:solarized_termcolors=256
параметра?gnome-terminal
.Ответы:
Я думаю, что это может произойти по двум причинам:
Соляризованная цветовая схема, которую вы используете, не декларируется
ctermfg
иctermbg
ни для одной из функций, которые вы хотите выделить. Попробуйте эту цветовую схему , она должна выглядеть одинаково как внутри вашего терминала, так и в gvim. Если это так, то вам может понадобиться использовать цветовую схему, которая объявляетctermfg
иctermbg
.Возможно, вам нужно убедиться, что ваш эмулятор терминала поддерживает цвета, которые вы пытаетесь отобразить:
ncurses-term
пакет файлов (который предоставляет файл/usr/share/terminfo/x/xterm+256color
) установлен.Установите значение вашей
TERM
переменной среды , запустивна оболочке.
vim
с этой оболочки.Обратите внимание, что обе эти вещи могут происходить одновременно, но это трудно диагностировать без дополнительной информации о вашей системе.
источник
TERM
переменная неверна, но я не знаю, как ее изменить.export TERM=xterm+256color
, а не «цвет с » (множественное число). Кроме того, я считаю, что это должно бытьxterm-256color
, НЕ "** + ** 256color; но я могу ошибаться, особенно если использовать его с соляризацией. Согласно этому ответу ,# Entries with embedded plus signs are designed to be included through use/tc capabilities, not used as standalone entries.
export TERM=xterm+256color
на OSX я получаюzle-line-finish:echoti:1: no such terminfo capability: rmkx
export TERM=xterm+256colors
помог vim solarized обнаружить и использовать точный цвет фона, как у моего терминала.Хорошие новости, все. @Tom и @Rich поставили меня на правильный путь. Я нашел решение, представленное здесь . Я установил свой .vimrc на простой
Это, кажется, исправить все. Цвета не кажутся такими яркими в примерах шрифтов , но это вполне может быть только я. Любому, кто хочет использовать цветовую схему Solarized и использует xfce4-терминал, просто изменение терминала rc и .vimrc, казалось, решили мои основные проблемы. Спасибо всем за вашу помощь!
источник
set t_Co
строка в вашем vimrc: Vim может читать это значение из терминала (Настройка't_Co'
кажется чем-то вроде культового груза Vim: многие люди в Интернете рекомендуют делать это, не понимая проблем, которые пытаются решить) .)$TERM=screen
и настройкаt_Co=16
действительно исправляет визуальные проблемы для меня, но я хотел бы знать, каковы отношения, в первую очередь.Я думаю, что это проблема совместимости этого
colorscheme
с терминалом. Плагинcsaprox
чудесным образом решает кучу этих проблем.Сводка:
Ссылки на плагин:
источник
Соляризованная цветовая схема Terminal-Vim может работать одним из двух способов.
16-цветный режим: Solarized содержит только 16 цветов, поэтому в этом режиме вы настраиваете свой терминал на использование соляризованных цветов в качестве 16 цветов, а схема цветов Vim просто использует их. Так, например, схема цветов Vim будет запрашивать цвет терминала «1», и терминал отображает его как шестнадцатеричный цвет # dc322f.
256-цветный режим, в котором он выбирает наиболее близкие совпадения для 16 цветов из 256-цветовой палитры.
Первый метод настоятельно рекомендуется автором (и мной), и звучит так, как будто вы счастливы использовать этот метод, потому что вы заявляете, что ваш «терминал имеет правильные цвета и фон».
Однако из вашего скриншота видно, что ваш терминал не установлены правильные цвета. (Белый не является цветом в соляризованном наборе, и хотя я не усматривал его в глазу, другой цвет текста на скриншоте не выглядит мне так, как будто это Соляризованный "Фиолетовый" (# 6c71c4).)
Если вы удалите настройки линий
t_Co
иg:solarized_termcolors
из вашего vimrc * и правильно настроите цвета терминала, то вы обнаружите, что 16-цветная соляризованная схема цветов начнет работать.* Эти линии переключаются с использованием солнечного режима (менее точного) на 256 цветов. Это также должно работать (я подозреваю, что @Jubal правильно предположил, что здесь проблема с BCE ), но предпочтительнее использовать 16-цветный режим, если вы явно не хотите использовать соляризацию в своем терминале.
источник
Похоже, вы нашли свой ответ. У меня была такая же проблема и выше ничего не получалось. То, что работало для меня, использовало ссоры
terminalrc
, а не сгерран .Мое отношение
vimrc
просто:Надеюсь, что это помогает кому-то!
источник
Вот что у меня работает (на всех терминалах, которые я использовал - xterm, konsole, gnome-терминал, iterm2, roxterm - как в Linux, так и в OS X, также с gvim и macvim):
источник
Трудно было работать (я использую терминал Vim в Linux Mint), и, к сожалению, я не записывал подробности всего, что я делал. Вот соответствующий раздел моего vimrc:
Также стоит проверить этот проект на GitHub .
источник
Что сработало для меня, так это удалить эту часть ваших настроек
Я использую xfce4-терминал
источник
У меня тоже была эта проблема
xfce-terminal
.После небольшого исследования я обнаружил эту ошибку : все, что вы устанавливаете
$TERM
в терминале XFCE, игнорируется.Я думаю, что это действительно ошибка базовой (и не поддерживаемой) старой библиотеки VTE, которую использует терминал XFCE (все еще основанный на GTK + 2). Переход на терминал GTK + 3, который косвенно использует новую библиотеку VTE , решил проблему.
источник