Instalações
Navegando pelo tmux , Vim e Solarized , posso encontrar muitas reclamações sobre 256 cores e "experiência do usuário". Bem, estou tendo o "problema" oposto, ou seja, o Vim funciona bem com um tema Solarized completo apenas no tmux .
fundo
Estou mexendo e ajustando um pouco agora com o esquema de cores do meu terminal Ubuntu e Guake e quase cheguei à perfeição alcançada quando estou usando o tmux , o que, por sua vez, significa sempre. Agora estou tentando entender por que isso está acontecendo.
Aqui abaixo, existem dois terminais, o da esquerda está executando apenas o Vim (mostrando a corrente .vimrc
), enquanto o outro está executando o Vim dentro de uma sessão do tmux . Como você pode ver claramente, somente na sessão do tmux as fontes estão em negrito, o que eu acho que está correto (ou não?).
Questão
Por que o tmux permite fontes em negrito, enquanto o terminal, onde o tmux está sendo executado, não? É um bug ou um recurso?
echo $TERM
e saída detmux
?screen
enquanto que o terminal dizxterm
:)$TERM
isso não é relevante.xterm*termName: xterm-256color
na sua~/.Xresources
e ver se isso faz a diferença ...Respostas:
Resposta curta
É um bug.
Resposta completa
Parece que a visualização "correta" é a da esquerda, onde a fonte em negrito não é renderizada. Pelo que pude entender ( aqui está a referência), o atributo bold foi usado, originalmente, para definir a versão destacada das 8 cores base.
Basicamente, o que está acontecendo aqui é que, para usar a paleta Solarized completa , com laranja , roxo e todos os níveis de cinza , as cores são chamadas com o atributo bold (realce) , que por sua vez se refere às 8 cores alternativas do Paleta ANSI.
O Terminal entende isso corretamente e mostra o laranja e o comentário em cinza na tipografia normal , enquanto o tmux adiciona uma fonte em negrito desnecessária a eles. Em conclusão, o lado esquerdo está correto, enquanto o lado direito não.
Questão 2
Existe uma maneira de desativar a renderização em negrito do tmux ?
Eu ainda tenho que fazer alguma pesquisa sobre isso e atualizarei esta resposta assim que encontrar alguma coisa.
Resposta 2
E aqui temos a solução! :)
Para que o tmux se comporte corretamente, precisamos chamá-lo dizendo a ele que estamos em um ambiente habilitado para 256 cores.
Por conveniência, poderíamos fazer
alias
isso (ou seja, você adicionaalias tmux="<the line above>"
ao seu~/.bashrc
).Chamar
tmux
comotmux -2
, para forçar o tmux a ser executado com suporte a 256 cores (em vez de redefinir aTERM
variável ambiental) não permitirá a interpretação correta das 8 cores "alternativas em negrito" (ou seja, a variante mais brilhante também resultará em uma composição de texto em negrito). Portanto, eu recomendo usar a solução aqui acima por ter a interpretação correta de 256 cores e cores "negrito-alternativas" não-negritas.fonte