Цветовая схема в .vimrc не работает

16

Я просмотрел кучу вопросов здесь, и у меня довольно большой опыт работы с Vim, но по некоторым причинам я .vimrcбольше не задаю colorscheme.

Я не знаю, когда это началось, но я только что перешел на новую машину, и это довольно сложно для меня. Странная часть я могу установить его вручную :colorscheme vividchalk, он просто не будет работать , если у меня есть colorscheme vividchalkв .vimrc. Я пытался закомментировать абсолютно все остальное в моем .vimrc, до сих пор не повезло. Попробовал закомментировать все, кроме syntax onи set t_Co=256, все равно не повезло (и такое же поведение ручных настроек работает).

Есть идеи? Мои настройки sshв моем компьютере с Ubuntu из Chrome OS.

калифорниец
источник

Ответы:

17

[Ответ полностью пересмотрен для других.]

Так как команда " :colorscheme" работает вручную, это доказывает, что у вас установлена ​​цветовая схема. Это означает, что в ваших скриптах инициализации у вас есть что-то, что следует за вашей предпочтительной схемой. Вы можете отследить это, набрав " :scriptnames" и прочитав его, чтобы загрузить другую цветовую схему. Найдя его, вы можете удалить или закомментировать эту строку в любом скрипте инициализации, из которого вызывается.

Heptite
источник
1
Нет, к сожалению, он там указан. Я имею vividchalk.vimв своем ~/.vim/colorsкаталоге, и, как я уже говорил, он прекрасно загружается, пока я :colorscheme vividchalkпечатаю в сеансе vim. Это как будто что-то переопределяет, но больше ничего не загружается.
Калифорнийский
1
И тут я подумал, что правильно прочитал твой вопрос. Приношу извинения. Что :scriptnamesпоказывает вывод " "?
Гептит
Не стоит беспокоиться; спасибо, что нашли время, чтобы ответить на все! Ах, да, и я думаю, что именно в этом проблема ... так что в нем есть куча вещей, но это слишком долго для этого комментария, поэтому я опубликую его отдельно. Кроме того, перед тем, как я прокомментировал некоторую цветовую вещь в synload.vim(из строки 4 выше), он имел некоторую ошибку из-за невозможности найти цветовую схему под названием "ansi_blows" во время работы :so $MYVIMRC. Любые идеи, какой файл я должен исследовать дальше?
Калифорнийский
1
@ Heptite Есть много вещей, которые запускаются до и после моего, ~/.vimrcкажется. Есть ли способ просто проинструктировать, что мой ~/.vimrcзапускается последним, чтобы он перезаписывал все, что случилось до этого?
мечтатель
1
В моем случае моя ошибка заключалась в том, чтобы поставить colorscheme ... перед set t_Co=256 и вызвать проблему.
Нима
9

set background=darkдолжно быть до syntax enableи colorscheme whateverв вашем .vimrc

Аластер Ирвин
источник
2
Точно, но проблема была найдена с ответом выше. Однако, спасибо; надеюсь, кто-то найдет это полезным.
Калифорнийский
Это исправило это для меня после просмотра всех сценариев. Благодарность! (Просто не могу дождаться неовима ...).
Бен
6

Для таких как я спотыкаюсь в:

Если вы используете vimили nvimвнутри эмулятора терминала, убедитесь, что настройки цвета для вашего профиля правильные. Для gnome-terminalэтого мне пришлось отключить «использовать цвета из системной темы» в настройках «Настройки» / «Профиль» / «Цвет», прежде чем я смог правильно настроить схему цветов:

введите описание изображения здесь

Кроме того, по состоянию на последнее время nvim устарела NVIM_TUI_ENABLE_TRUE_COLORв пользу set termguicolors(см. Это ).

kuzyn
источник
0

У меня была такая же проблема на растяжке Debian, а также с некоторыми другими командами (цвет и настройка фона работают вручную, но не в .vimrc). Но я не хотел просматривать каждый файл в именах скриптов.

Решение добавить

source $VIMRUNTIME/defaults.vim

в .vimrc

Эту строку можно найти в /usr/share/vim/vimXX/vimrc_example.vim для справки (XX - это версия vim, в моем случае 80).

Я полагаю, что defaults.vim выполняет некоторые настройки, необходимые для изменения цвета. Но defaults.vim не загружается, если у пользователя есть ~ / .vimrc, в соответствии с / usr / share / vim / vimrc

" Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc.
Benitok
источник
0

В моем случае я использую цветовые схемы из плагинов (внешние репозитории). Поэтому я должен загрузить плагины перед применением colorschemeкоманды.

Максим Суслов
источник
0

.gvimrc

При использовании gvimможет быть необходимо colorscheme vividchalkтакже поместить в .gvimrcфайл, несмотря на то , что это уже присутствует в.vimrc

:scriptnamesможет показать, когда /usr/share/vim/vim80/colors/ron.vimзагружается цветовая схема по умолчанию .

Серж Строобандт
источник