Solarized를 설치한 후 배경색이 예상대로 나오지 않았습니다. vim은 Solarized의 파란색 배경을 사용하는 대신 터미널 검정색 배경을 사용합니다. 내 터미널도 Xterm-256color로 설정되어 있습니다. 이 줄을 포함하여 여러 옵션을 시도했지만 let g:solarized_termtrans = 1
여전히 아무런 차이가 없습니다. 내가 여기서 뭘 잘못했나요?
답변1
아 예. 나도 같은 문제가있었습니다.
당신은 추가해야
"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의 관련 섹션입니다.
"*배경" 줄을 제거했다는 점에 유의하세요. 아마도 정확히 필요한 것일 수도 있지만 어쨌든 이것은 저에게 효과적입니다. 그러나 터미널의 색상은 변경됩니다.
!! ================= 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
답변2
256색
솔라라이즈 팔레트는~ 아니다가상 터미널에서 제공하는 색상 속성 목록에 기본적으로 포함되는 가장 최신 터미널에 적합한 색상을 모두 포함합니다. 내가 아는 한, 귀하의 가상 터미널은 일반적으로 16진수 값으로 표시되는 색상 목록(color0에서 color255, 즉 256색)을 제공합니다. 이를 통해 그래픽 환경(tty 아님) 내부의 터미널이 각 색상을 {0..255}
특정 색상으로 표시할 수 있습니다.
이것을 실행하면 가상 터미널에서 256가지 색상을 모두 볼 수 있습니다.짧은 bash 스크립트내가 만든. 다음과 같은 내용이 표시됩니다.
예를 들어, 나는성Linux의 가상 터미널을 사용하고 vim 내에서 태양열화된 색상 구성표를 얻으려면 다음과 같이 st의 구성 파일 내에서 터미널 색상을 0-15로 설정해야 합니다.
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도 16진수 값을 사용하여 각 256색을 표시한다는 것을 알 수 있습니다.
vim의 태양광 색상 구성표의 경우 이 두 가지 색상이 다음과 같기 때문에 최소한 color0
및 설정을 올바르게 설정 해야 합니다.color8
~ 아니다기본적으로 색상 목록에 있습니다 {0..255}
. 거기서부터 Solarized 구성표에 따라 범위에 사용되는 색상과 유사한 색상을 사용할 수 있지만 {0..15}
, 저는 단순히 전체 콘솔을 Solarized로 만들고 Solarized되도록 하여 정상적으로 작동하도록 합니다.
정력
vimrc 내부 구성에 관해서는 Solarized 색상 구성표와 관련하여 언급할 가치가 있는 몇 가지 사항을 발견했습니다.
let g:solarzied_termcolors=256
256색을 지원하더라도 터미널의 색상이 엉망이 됩니다. 아마도 그 이유는 다음과 같습니다.solarized_termcolors
~이다 256
, 아마도 gvim과 같은 GUI를 기대하고 있을 것입니다. 따라서 해당 설정을 기본값으로 두는 것이 가장 좋습니다.
나는 set t_Co=16
과 사이에 차이가 없다는 것을 알아차렸지만 set t_Co=256
, 당신은아마set t_Co=16
가상 터미널 내부를 원하면아마set t_Co=8
tty 터미널 내부를 원합니다 .
let g:solarized_italic=0
또한 다음과 같은 이유로 vimrc 내부에서 작업을 수행할 것입니다 . 많은 터미널에서 vim이 기울임꼴을 제대로 표시할 수 없는 경우(지원되는 경우에도), 종종 이전 상태로 되돌아갑니다.뒤집다반대 속성. 즉, 어두운 태양광 처리된 배경이 있고 로 기울임꼴을 활성화한 경우 1
예를 들어 이탤릭체로 표시해야 하는 주석 및 기타 항목은 진한 파란색 텍스트와 함께 연한 회색 배경을 갖게 됩니다. 나는 이것이 매우 주의를 산만하게 하고 디버그하기가 그리 쉽지 않다고 생각합니다. 왜냐하면 여러분이 생각하는 것은 "왜 이 내용이 거꾸로 되어 있지?"이기 때문입니다. 그리고 당신은 그 출처를 확신하지 못합니다.
마지막으로 vimrc를 추가하겠습니다 let g:solarized_bold=1
(또는 기본적으로 활성화되어 있으므로 기본값으로 두겠습니다). 굵은 글씨는 아마도 올바르게 해석될 것이며, 굵은 글씨가~ 아니다활성화하면 팝업 메뉴에 문제가 발생합니다(실제로 가 solarized_bold
비활성화되면 0
메뉴의 항목은이상하게도충분한용감한- 이는 반직관적이지만, 그렇기 때문에 그냥 굵게 표시해야 합니다. 이는 실제로 기본값이므로 원하는 경우 vimrc에서 제외할 수 있습니다.
{0..15}
터미널의 256색( )을 "올바르게" 설정 했을 때의 모습은 다음과 같습니다 .