Ubuntu, vim и солнечная цветовая палитра


113

Я действительно хотел бы вникнуть во все красочное совершенство солнечной цветовой схемы , но, похоже, я не могу правильно ее настроить.
У меня есть основной солнечный файл в моей папке .vim / colors, я установил цвета своего профиля терминала в соответствии с тем, что указано на сайте, и добавил строки

 set background=dark
 let g:solarized_termcolors=16
 colorscheme solarized

в мой .vimrc, но vim выглядит серым и по умолчанию использует ярко-зеленый цвет. Любые идеи?


это может быть полезно для вас [проблема] [1] [1]: superuser.com/questions/311370/…
vrkansagara 05

Ответы:


150

Вот что я рекомендую попробовать:

  1. убедитесь, что syntax onнаходится в вашем .vimrc
  2. Проверьте, что t_Co vim получил от вашего эмулятора термина (быстро :echo &t_Co). Если будет 8, ты захочешь se t_Co=16. Вы также можете попробовать, se t_Co=256хотя без let g:solarized_termcolors=16этого будет использоваться резервный режим 256, что не совсем правильная цветовая схема.

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


12
Блин, не ожидал ответа от автора! Спасибо за спор, я попробую ваши рекомендации и отправлю вам электронное письмо сегодня же.
danwoods

25
t_Co - это тоже проблема с моей коробкой Ubuntu. Я установил пакет gnome-terminal-colors-solarized, но он использовал неправильный цвет фона. se t_Co = 16 сделал свое дело. Спасибо!
Мартин Яничек

3
порядок, очевидно, тоже имеет значение. Я обнаружил, что установка t_Co = 16 после соляризации цветовой схемы не работает. вы должны установить t_Co перед цветовой схемой.
rev 03

1
Я обнаружил, что мои пустые / пустые строки имеют другой цвет фона. Как это исправить?
Сетерон

Я делаю syntax on, let g:solarized_termcolors=256, set background=darkи , colorscheme solarizedно это не совсем правильно. Также пользуюсь Pathogen.
kleinfreund

41

set t_Co=16и let g:solarized_termcolors=16у меня не сработало. Вот что сработало:

syntax on
let g:solarized_termcolors=256
set t_Co=256 
set background=dark
colorscheme solarized

Я надеюсь, что это поможет кому-то.


Мне нужен синтаксис перед остальным (у меня он был после), плюс пусть g: solarized_termcolors = 256. Спасибо!
user798275

1
Я потратил два часа, пытаясь понять это, оказалось, что solarized_termcolors = 256 была моей проблемой - И - она ​​должна появиться до изменения цветовой схемы.
PeterT

19

Я узнал, как это сделать, из этой статьи.

Я написал следующий сценарий для работы с gnome-terminal.

gconftool-2 --set "/apps/gnome-terminal/profiles/Default/use_theme_background" --type bool false
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/use_theme_colors" --type bool false
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/palette" --type string "#070736364242:#D3D301010202:#858599990000:#B5B589890000:#26268B8BD2D2:#D3D336368282:#2A2AA1A19898:#EEEEE8E8D5D5:#00002B2B3636:#CBCB4B4B1616:#58586E6E7575:#65657B7B8383:#838394949696:#6C6C7171C4C4:#9393A1A1A1A1:#FDFDF6F6E3E3"
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/background_color" --type string "#00002B2B3636"
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/foreground_color" --type string "#838394949696"

2
Я думаю, что цвет переднего плана на темном фоне должен быть «base0», а не «base00». Итак, последняя строчка должна бытьgconftool-2 --set "/apps/gnome-terminal/profiles/Default/foreground_color" --type string "#838394949696"
Крис Весселинг

А, знаешь, я всегда думал, что это не так. Спасибо!
t-mart

он исправил проблему, но испортил исходные цвета файлов и папок .... я хотел соляризовать только в vim или, по крайней мере, сохранить выделение папок и файлов (исполняемых файлов), теперь все выглядит так же .. какой-либо обходной путь?
Eliethesaiyan

1
Статья, на которую вы указали в своем ответе, больше не доступна. В этом ответе отсутствует необходимый контекст / объяснение.
kleinfreund


3

Пробую сам, кажется, работает лучше без

let g:solarized_termcolors=16

Установив его на 16, я получаю ярко-зеленый цвет, который вы, кажется, описываете. Может, попробовать оставить по умолчанию 256?

Однако это не совсем имитирует цвета со снимков экрана (хотя облегченная версия выглядит довольно близко). Я получаю цвета со снимком экрана, только если использую gvim.

Однако я не использовал предоставленные цвета профиля терминала, поэтому вы можете получить другой результат.


3

Для любителей копирования и вставки: вот как вы устанавливаете солнечную цветовую схему vim в Ubuntu:

sudo apt-get install wget unzip curl
cd
wget http://ethanschoonover.com/solarized/files/solarized.zip
unzip solarized.zip
mkdir .vim
mkdir .vim/colors/
mv solarized/vim-colors-solarized/colors/solarized.vim ~/.vim/colors/
cp .vimrc .vimrc.old
echo "syntax enable" > .vimrc
echo "set background=dark" >> .vimrc
echo "colorscheme solarized" >> .vimrc
curl https://raw.github.com/seebi/dircolors-solarized/master/dircolors.256dark > ~/.dircolors
source .bashrc
rm -r solarized
rm solarized.zip

И presto


2

Это сработало для меня для exherbo

git clone https://github.com/sigurdga/gnome-terminal-colors-solarized
cd gnome-terminal-colors-solarized
sh install.sh -s dark -p <my_current_profile>

256 цветов в vim также могут помочь


Это было единственное решение, которое сработало для меня. Я использовал схему Solarized Dark gnome-terminal, с которой поставляется Ubuntu, и, хотя в самой оболочке она выглядела нормально, Vim выглядел как беспорядок. Некоторые из других ответов здесь (настройка конфигурации Vim) помогли приблизить его к правильному, но цвет фона все еще был черным или серым, а не грифельно-синим, как должен быть. Установка этой замененной схемы цветов gnome-terminal исправила ее с моей конфигурацией Vim по умолчанию.
Джим Стюарт

1

Из README ( выделено мной ):

ВАЖНОЕ ПРИМЕЧАНИЕ ДЛЯ ТЕРМИНАЛЬНЫХ ПОЛЬЗОВАТЕЛЕЙ:

Если вы собираетесь использовать Solarized в режиме терминала (то есть не в версии с графическим интерфейсом, такой как gvim или macvim), пожалуйста, подумайте о настройке цветовой схемы эмулятора терминала на использование палитры Solarized. Я включил палитры для некоторых популярных эмуляторов терминала, а также Xdefaults в официальную загрузку Solarized, доступную на [Домашняя страница Solarized]. Если вы используете Solarized без этих цветов, Solarized нужно будет указать, чтобы он снизил свою цветовую схему до набора, совместимого с ограниченной 256 палитрой терминала (тогда как, используя 16 значений цветов ansi терминала, вы можете установить правильные конкретные значения для Solarized палитра).

Если вы все же используете собственные цвета терминала, solarized.vim должен работать за вас. Если вы используете эмулятор терминала, поддерживающий 256 цветов, и не хотите использовать пользовательские цвета терминала Solarized, вам нужно будет использовать деградированную схему 256 цветов. Для этого просто добавьте следующую строку перед тем на colorschem solarizedлинии:

let g:solarized_termcolors=256

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

Что сработало для меня в Ubuntu 16.04 с включенным приложением Терминал, так это просто выбрать Solarized для «Цвета текста и фона» (выбрать светлый или темный) и «Палитра» в Терминале> Настройки> Профили> (выберите свой)> Редактировать> Цвета

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


Выбор палитры был той частью, которую я сначала упустил.
Ричард Мён
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.