Соляризованная цветовая гамма не вышла как положено после установки

1113
khoa_vo123

1

После того, как я установил солярий, цвет фона не получился, как ожидалось. vim использует терминальный черный фон вместо использования соляризованного синего фона. Мой терминал также установлен на Xterm-256color. Я пробовал несколько вариантов включить эту строку let g:solarized_termtrans = 1, но это все равно не имеет никакого значения. Что я тут не так сделал?

0

2 ответа на вопрос

2
boobie_goodness

О да. У меня была та же проблема.

ты должен добавить

"set t_Co=256 " No  set t_Co=16 

также соляризованные варианты

"g:solarized_termcolors= 16 | 256 "g:solarized_termtrans = 0 | 1 "g:solarized_degrade = 0 | 1 "g:solarized_bold = 1 | 0 "g:solarized_underline = 1 | 0 "g:solarized_italic = 1 | 0 "g:solarized_contrast = "normal"| "high" or "low" "g:solarized_visibility= "normal"| "high" or "low" "g:solarized_hitrail = 0 | 1 "g:solarized_menu = 1 | 0 

для чего я лично использовал

let g:solarized_termcolors= 16 let g:solarized_termtrans = 0  let g:solarized_degrade = 0  let g:solarized_bold = 1  let g:solarized_underline = 1  let g:solarized_italic = 1  let g:solarized_contrast = "normal" let g:solarized_visibility= "normal" let g:solarized_hitrail = 0  let g:solarized_menu = 1  

Я также сам установил свой терминал для соляризации. Это соответствующий раздел из моих ~ / .Xresources, которые я где-то скопировал из интернета.

Обратите внимание, что я удалил строку "* background", которая может быть именно то, что вам нужно, но в любом случае, это работает для меня. Тем не менее, это меняет цвета вашего teminal.

!! ================= SOLARIZED =============================================================  !! drop in Solarized colorscheme for Xresources/Xdefaults  !!SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B RGB HSB !!--------- ------- ---- ------- ----------- ---------- ----------- ----------- !!base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21 !!base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26 !!base01 #586e75 10/7 brgreen 240 #585858 45 -07 -07 88 110 117 194 25 46 !!base00 #657b83 11/7 bryellow 241 #626262 50 -07 -07 101 123 131 195 23 51 !!base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59 !!base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63 !!base2 #eee8d5 7/7 white 254 #e4e4e4 92 -00 10 238 232 213 44 11 93 !!base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99 !!yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71 !!orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80 !!red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86 !!magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83 !!violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77 !!blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82 !!cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63 !!green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60  #define S_base03 #002b36 #define S_base02 #073642 #define S_base01 #586e75 #define S_base00 #657b83 #define S_base0 #839496 #define S_base1 #93a1a1 #define S_base2 #eee8d5 #define S_base3 #fdf6e3 #define S_yellow #b58900 #define S_orange #cb4b16 #define S_red #dc322f #define S_magenta #d33682 #define S_violet #6c71c4 #define S_blue #268bd2 #define S_cyan #2aa198 #define S_green #859900  !# I removed this, causing some GUI problems, I think !#*background: S_base03 *foreground: S_base00 *fading: 40 *fadeColor: S_base03 *cursorColor: S_base1 *pointerColorBackground:S_base01 *pointerColorForeground:S_base1  !! black dark/light *color0: S_base02 *color8: S_base03  !! red dark/light *color1: S_red *color9: S_orange  !! green dark/light *color2: S_green *color10: S_base01  !! yellow dark/light *color3: S_yellow *color11: S_base00  !! blue dark/light *color4: S_blue *color12: S_base0  !! magenta dark/light *color5: S_magenta *color13: S_violet  !! cyan dark/light *color6: S_cyan *color14: S_base1  !! white dark/light *color7: S_base2 *color15: S_base3 
0
dylnmc

256 цветов

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


Вы можете просмотреть все 256 цветов в своем виртуальном терминале, запустив этот короткий скрипт bash, который я сделал. Вы должны увидеть что-то вроде этого:

256 color picker screenshot


Например, я использую виртуальный терминал 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правильно установить ее, потому что эти два цвета по умолчанию не найдены в списке цветов. Оттуда вы можете использовать цвета, похожие на цвета, используемые в диапазоне по соляризованной схеме, но я просто заставляю всю консоль соляризовать и позволить соляризации, чтобы она работала нормально.

напор

Что касается конфигурации внутри вашего 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, то, например, комментарии и все, что следует выделить курсивом, будет иметь светло-серый фон с темно-синим текстом. Я нахожу это очень отвлекающим, и отладку не очень легко, потому что все, что вы думаете, это «почему все наоборот»? и вы не совсем уверены в источнике.

Наконец, я бы добавил let g:solarized_bold=1ваш vimrc (или оставил бы его по умолчанию, так как он включен по умолчанию). Жирный шрифт, вероятно, будет интерпретирован правильно, и я заметил, что если жирный шрифт не включен, то это вызывает проблемы во всплывающих меню (на самом деле, когда solarized_boldотключено с помощью 0, я в меню достаточно странно жирным шрифтом - что противоречит интуитивно, но что вот почему вы должны просто позволить этому быть жирным шрифтом ... это на самом деле значение по умолчанию, так что вы можете оставить его вне вашего vimrc, если хотите).

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

enter image description here

Похожие вопросы