vim backgroundcolor in tmux - zsh가 tmux에서 xterm 대신 screen을 사용하도록 강제하는 방법

vim backgroundcolor in tmux - zsh가 tmux에서 xterm 대신 screen을 사용하도록 강제하는 방법

질문자님과 같은 문제를 겪고 있습니다tmux의 vim 배경에 256색 지원.

을 사용하는 일반 터미널에서는 zsh배경색 문제가 없지만 vim내부에서 실행하면 tmux배경색에 문제가 발생합니다.

screen분명히 다음 대신 사용하는 데 문제가 있습니다 xterm.

Tmux 외부: echo $TERM결과 screen
Tmux 내부: echo $TERM결과xterm

내 .zshrc 및 .tmux.conf에서 설정했습니다.

TERM=screen-256color

하지만 아무 영향도 주지 않습니다. (저도 시도했습니다 TERM=screen)

어떻게 강제 tmux로 사용할 수 있나요 screen?

편집: htor 덕분에 .tmux.conf 및 .zshrc 에 추가했습니다 set -g default-terminal "screen"(도 시도했습니다 ) .set -g default-terminal "screen-256color"export TERM=screen-256color

이제 나는 다음을 얻습니다:

Outside Tmux: echo $TERM결과 screen-256color
Inside Tmux: echo $TERM결과 echoscreen-256color(<- 조금 이상해 보이는데, 출력이 맞나요?)

tmux 내부 vim의 배경색 문제를 해결하려면 또 무엇을 할 수 있나요?

답변1

여기에 설명된 대로, 장애를 입히다배경색 지우기(BCE) Vim을 tmux 및 GNU 화면 내에서 사용할 때 색 구성표가 제대로 작동하도록 터미널 옵션을 삭제합니다 t_ut( :set t_ut=Vim에서 실행한 다음 Control+를 눌러 L터미널 디스플레이 새로 고침).

답변2

tmux변경을 위한 기본 터미널 변수를 설정하려면 다음 .tmux.conf을 수행하십시오.

set -g default-terminal "screen"

변수 설정을 위한 쉘 구문은 에서 작동하지 않습니다 .tmux.conf. 모든 쉘이 환경에서 이 값을 상속하는지 확인하려면 .zshrc값을 내보내야 합니다 .TERM

export TERM=screen-256color

관련 정보