tmux vim colorscheme 배경이 보이지 않습니다


12

tmux를 설치했지만 이제 텍스트 모드 vim colorschemes가 배경색을 제대로 채우지 않습니다. 다음은 일반적인 우분투 14.10 터미널에서 colorscheme xoria256으로 보이는 모습입니다.

여기에 이미지 설명을 입력하십시오

그리고 여기 tmux 이후에 정확히 동일한 터미널에서 실행할 때 :

여기에 이미지 설명을 입력하십시오

보시다시피 vim에 텍스트가없는 곳 어디에서나 데스크탑이 표시됩니다. 256 색 터미널이 있습니다.

내 .tmux.conf :

~ cat .tmux.conf
set -g mode-mouse on
set -g default-terminal "screen-256color"

256 컬러 터미널이 있습니다.

~ tput colors
256

tmux가 일반 터미널에서 잘 작동하는 vim 256 색상의 색상으로 올바르게 작동하도록하려면 어떻게해야합니까?


내 경험상 tmux는 내부에서 시작할 때 이상하게 동작 gnome-terminal합니다. tmux를 시작하여 TERM=xterm tmux다르게 작동하는지 확인하십시오. 경우 xterm작동하지 않습니다 시도 xterm-256colorxterm-color.
jw013

@ jw03 슬프게도 이러한 옵션 중 어느 것도 문제를 해결하지 못했습니다. 동일한 행동. 같은 동작을 나는 TMUX 내부 종결을 실행하면
토마스 브라운

1
tmux 내부의 쉘에서 값은 $TERM무엇입니까? 이 아닌 경우로 screen-256color시작 vim하여 TERM=screen-256color vim시작 스크립트 세트가 없는지 확인하십시오 TERM(또는 버그가있는 소프트웨어를 해결하기 위해이를 수행해야하는 경우 원래 값을 먼저 확인하십시오).
Ry- November

@ 미니 테크 : 빙고. xterm-256color가있는 반면 screen-256color는 문제를 해결합니다. 당신이 대답을한다면 나는 그것을 받아 들일 것입니다.
Thomas Browne

이것은 나를 위해 일한 : stackoverflow.com/a/15095377/96855
올리비에 Lalonde

답변:


5

이것은 Vim 환경에서 일반적으로 일부 쉘 시작 스크립트에 의해 TERM올바르게 설정되지 않은 경우 발생합니다 screen[-256color]. 그러한 경우 – 예를 들어

TERM=xterm-256color

TERM변경하기 전에 제거하거나 원래 값을 확인하십시오 . 예 :

if [[ $TERM == xterm ]]; then
    TERM=xterm-256color
fi


2

늦은 의견이지만 모든 스레드를 살펴보고 다음을 수행 할 때까지 해결할 수 없었습니다. 내가해야 할 일은 두 번째 검사를 추가하는 것입니다.

if [[ $TERM == screen]]; then
    TERM=screen-256color
fi

.bashrc파일 의 첫 번째 조건문 외에도

if [[ $TERM == xterm ]]; then
    TERM=xterm-256color
fi

나는 또한 이것을 가지고 있었다 .tmux.conf:

set -g default-terminal "screen-256color"

.vimrc파일에서 :

set term=screen-256color
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.