Não defina TERM
em seus arquivos de inicialização do shell. TERM
é determinado pelo terminal que você está executando, não pelo seu shell.
Seu arquivo de inicialização do shell está substituindo o TERM
definido por tmux
.
Eu experimentei o zsh-syntax-highlighting
(veja aqui ) ao abrir uma sessão de shell pela primeira vez, mas Assim que eu inserir tmux
, o destaque da sintaxe não aparecerá mais.
Eu encontrei esta questão do Github descrevendo um problema semelhante, mas aparentemente diferente, como o o usuário pode ver o realce de sintaxe no primeiro painel.
Instalei pela primeira vez zsh
, depois oh-my-zsh
e, finalmente, zsh-syntax-highlighting
via pacman
no Arch e obtive-o na parte inferior do meu .zshrc
(sem nenhum condicional) da seguinte forma:
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
Eu não entendo porque especificamente esse recurso não parece funcionar no tmux. Todas as outras configurações / temas / plugins / arquivos originados parecem funcionar bem, exceto por este. O que estou perdendo?
EDITAR:
TERM
em .zshrc
é export TERM="xterm-256color"
Ecoando $TERM
fora do tmux dá xterm-256color
.
A variável TERM
em .tmux.conf
é set -g default-terminal "screen-256color"
.
$TERM
dentro do tmux também fornece xterm-256color
. Não defina TERM
em seus arquivos de inicialização do shell. TERM
é determinado pelo terminal que você está executando, não pelo seu shell.
Seu arquivo de inicialização do shell está substituindo o TERM
definido por tmux
.
Acho que foi depois de atualizar para o OS El Capitan quando isso parou para mim. Eu tinha isso no meu ~ / .zshrc: alias tmux="TERM=screen-256color-bce tmux"
(retirado de outra resposta stackexchange).
Eu mudei para alias tmux="TERM=screen-256color tmux"
e tudo funciona novamente agora.
Eu percebo que essa resposta não ajuda você diretamente, mas pode ajudar outras pessoas.