256 цветов
Соляризованная палитра не включает в себя все подходящие цвета, которые большинство современных терминалов по умолчанию включают в список цветовых атрибутов, предоставляемых вашим виртуальным терминалом. Насколько я понимаю, ваш виртуальный терминал предоставляет список цветов (от color0 до color255 - то есть 256 цветов), представленных обычно в виде шестнадцатеричных значений. Это позволяет вашему терминалу в графической среде (не tty) отображать каждый цвет {0..255} который должен отображаться определенным цветом.
Вы можете просмотреть все 256 цветов в своем виртуальном терминале, запустив этот короткий скрипт bash, который я сделал. Вы должны увидеть что-то вроде этого:

Например, я использую виртуальный терминал st в linux, и чтобы получить соляризованную схему цветов в vim, нужно установить цвета терминала 0-15 в файле конфигурации st следующим образом:
static const char *colorname[] = {
/* solarized dark */
"#073642", /* 0: black */
"#dc322f", /* 1: red */
"#859900", /* 2: green */
"#b58900", /* 3: yellow */
"#268bd2", /* 4: blue */
"#d33682", /* 5: magenta */
"#2aa198", /* 6: cyan */
"#eee8d5", /* 7: white */
"#002b36", /* 8: brblack */
"#cb4b16", /* 9: brred */
"#5f8700", /* 10: brgreen */
"#d8b822", /* 11: bryellow */
"#0087ff", /* 12: brblue */
"#6c71c4", /* 13: brmagenta*/
"#00afaf", /* 14: brcyan */
"#fdf6e3", /* 15: brwhite */
/* special colors */
[256] = "#002b36", /* background */
[257] = "#93a1a1", /* foreground */
};
/*
* Default colors (colorname index)
* foreground, background, cursor
*/
static unsigned int defaultfg = 257;
static unsigned int defaultbg = 256;
static unsigned int defaultcs = 257;
static unsigned int defaultrcs = 15;
Вы можете видеть, что st, как и все (что я знаю) о современных виртуальных терминалах, использует шестнадцатеричные значения для представления каждого 256 цветов.
Обратите внимание, что для соляризованной схемы цветов в vim необходимо, чтобы по крайней мере color0 и color8 установлены правильно, поскольку эти два цвета по умолчанию не найдены в списке {0..255} цветов. Оттуда вы можете использовать цвета, аналогичные цветам, используемым в диапазоне {0..15} соляризованной схемой, но я просто заставляю всю консоль соляризоваться и позволить соляризации работать так, как обычно.
напор
Что касается конфигурации внутри вашего vimrc, я обнаружил, что стоит упомянуть несколько вещей, которые раздражают соляризованную цветовую схему.
let g:solarzied_termcolors=256 портит цвета в терминале, даже если он поддерживает 256 цветов. Вероятно, это потому, что когда solarized_termcolors равен 256 , он, вероятно, ожидает графический интерфейс, подобный gvim. Поэтому лучше оставить этот параметр по умолчанию.
Я не заметил никакой разницы между set t_Co=16 и set t_Co=256 , но вы, вероятно, хотите set t_Co=16 внутри виртуального терминала, и вы, вероятно, хотите set t_Co=8 внутри терминала tty.
Кроме того, я хотел бы let g:solarized_italic=0 внутри вашего vimrc по этой причине: во многих терминалах, если vim не может правильно отображать курсив (даже если он поддерживается), он часто возвращается к атрибуту reverse reverse. Это означает, что если у вас был темный соляризованный фон, и курсив был включен с 1 , то, например, комментарии и все, что должно быть выделено курсивом, будет иметь светло-серый фон с темно-синим текстом. Я нахожу это очень отвлекающим, и отладку не очень легко, потому что все, что вы думаете, это «почему все наоборот»?"и вы не совсем уверены в источнике.
Наконец, я бы положил в ваш vimrc let g:solarized_bold=1 (или оставьте его по умолчанию, так как он включен по умолчанию). Жирный шрифт, вероятно, будет интерпретирован правильно, и я заметил, что если жирный шрифт не включен, то это вызывает проблемы во всплывающих меню (на самом деле, когда solarized_bold отключен с 0 , я в меню достаточно странно полужирный - что противоречит интуиции, но именно поэтому вы должны просто позволить ему выделяться жирным шрифтом ... это на самом деле значение по умолчанию, поэтому вы можете оставить его вне своего vimrc, если хотите).
Вот как это может выглядеть, если у вас 256 цветов ({0..15}) вашего терминала настроены "правильно":
