이것에 대해 많은 질문이 있지만 변수가 너무 많기 때문입니다. 이 작업을 수행하기 전에 여러 사이트에서 지침을 작성해야했습니다.
먼저, gnome-terminal에서 16 개의 태양열 색상 정의를 쉽게 설정할 수 없었습니다. 내가 움직 인 것을 고치면 …
그런 다음 vim에서 작동하는 색상을 태양 광으로 확인했지만 특정 강조 표시에 이상한 검은 배경이 나타납니다. 내가 고치면, 나는 움직였다 …
그런 다음 vim이 tmux 내에서 실행되면 vm wonky가 갔다는 것을 깨달았습니다. 이것은 매우 논쟁의 여지가 있지만 (대부분 설정 TERM
하는 것에 대해 말하는) 답변은 거의 없습니다 xterm-256colors
. 나는 결국 그것도 고쳤다.
Solarized 는 매우 멋진 팔레트입니다. (높은 대비를 선호하고 보정 된 화면에서 tmux의 ‘흰색’이 너무 노랗게 나타 났으므로 가장 어두운 기본 색상을 어둡게하고 가장 밝게 밝게했지만) 나는 보통 너무 파란색!), 그래서 나는 내 학습 결과를 공유하기 위해이 질문에 답을 게시하고 있습니다.
답변
Solarized는 매우 특정한 색상을 제공합니다. 당신은 정말 표준 256 색상 팔레트에서 이러한 색상을 만들어 낼 수 없습니다 . 이것을 달성 할 수있는 유일한 방법은 터미널 에뮬레이터에서 정확한 색상을 설정하는 것입니다. 그런 다음 앱은 표준 16 색상 (8 + 8 밝기)을 사용한다고 생각하지만 솔라 라이즈 팔레트에 정확하게 매핑되었습니다.
그놈 터미널은 팔레트 나 프로파일을 내보내거나 가져올 수있는 쉬운 방법을 제공하지는 않지만이 bash 스크립트를 사용하면됩니다.
#!/bin/sh
DARK_BG='#000014141A1A'
# original: DARK_BG='#00002B2B3636'
LIGHTEST='#FFFFFBFBF0F0'
# original: LIGHTEST='#FDFDF6F6E3E3'
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:$DARK_BG:#CBCB4B4B1616:#58586E6E7575:#65657B7B8383:#838394949696:#6C6C7171C4C4:#9393A1A1A1A1:$LIGHTEST"
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/background_color" --type string "$DARK_BG"
gconftool-2 --set "/apps/gnome-terminal/profiles/Default/foreground_color" --type string "#65657B7B8383"
Nb. 여기에서는 Solarized의 가장 어둡고 밝은 색상을 재정의했습니다. 의견대로 원한다면 원고를 사용할 수 있습니다.
충분하다. 이제 파일을 에 배치 하여 Solarized vim colors 파일 을 설치하십시오 ~.vim/colors/solarized.vim
.
이제 Vim에게와 함께 해당 색 구성표를 사용하도록 지시 할 수 있습니다 colo solarized
. 그러나 이것은 효과가 없었으며 Vim에 16 색 팔레트를 사용하도록 지시해야했습니다 set t_Co=16
. 내 ~/.vimrc
파일 에 둘 다 붙어 있습니다.
이제 vim 색상이 작동했지만 tmux 내부에서 실행되면 작동하지 않습니다.
이 다음 비트는 매우 혼란 스럽습니다. 대부분의 조언은 TERM
tmux 외부 를로 설정하는 것에 대해 말하지만 xterm-256colors
, 내가 그렇게했을 때 tmux는 시작조차하지 않습니다. 그것은 나를 혼란스럽게했다. 태양 화되지 않은 것은 256 색 팔레트가 열악한 근사치라고 말하지 않습니까? 글쎄, 혼란스럽고 어쨌든 작동하지 않았으므로 다른 방법이 필요했습니다.
다음을 포함하는 파일 /tmp/foo
을 작성하십시오 .
xterm-16color|xterm with 16 colors,
colors#16, use=xterm,
그런 다음 이것을 설치하십시오 sudo tic /tmp/foo
마지막 tmux
으로 다음과 같이 별칭 을 지정하십시오.
alias tmux='TERMINFO=/usr/share/terminfo/x/xterm-16color TERM=xterm-16color tmux -2'
이제 터미널, vim 및 vim-inside-tmux에서 정확한 색상을 얻습니다. Nb. 이 -2
옵션은 tmux
256 색상 팔레트를 사용하도록 지시 합니다. 이는 env 변수가 다르게 말하는 것처럼 보이기 때문에 실제로 혼란 스럽습니다 … 정말 모르겠습니다. 정말로 배우지 않고 걱정하지 않습니다. Just Just Works라는 아름다운 색상의 터미널이 생겼기 때문입니다.