tmux, Vim e Solarizado

19

Instalações

Procurando por tmux , Vim e Solarizado eu posso encontrar muitas reclamações sobre 256 cores e "experiência do usuário". Bem, estou tendo o "problema" oposto, ou seja, Vim funciona bem com um tema Solarizado completo somente no tmux .

Antecedentes

Eu tenho mudado e ajustado um pouco agora com o esquema de cores do meu Ubuntu e do Guake e quase cheguei à perfeição que é alcançada quando Estou usando tmux , o que significa sempre. Estou tentando agora entender por que isso está acontecendo.

Aqui abaixo há dois Terminais, o da esquerda está executando apenas Vim (mostrando o atual .vimrc ) enquanto o outro está rodando Vim dentro de um < em> tmux sessão. Como você pode ver claramente, somente na sessão tmux as fontes estão em negrito, o que eu acho que é correto (ou não?).

Pergunta

Por que tmux permite fonte em negrito, enquanto o terminal, onde tmux está em execução, não? É um bug ou um recurso?

    
por Atcold 09.03.2014 / 21:50

1 resposta

22

Resposta curta

É um bug.

Resposta completa

Parece que a visualização "correta" é a da esquerda, onde a negrito é não processada. Para o que eu pude entender ( aqui é a referência) o atributo negrito foi usado, originalmente, para definir o destaque versão das 8 cores base.

Historically, there has been a one-to-one correspondence between the bolded versions of the 8 default ANSI colors and the bright versions of the 8 default colors. Back in the day, when a color program demanded the display of bold text, it was probably just easier for terminal emulators to display a brighter version of whatever color the text was (and expect the user to interpret that as bold) than to display a typeface with a bold weight.

Basicamente, o que está acontecendo aqui é que, para usar a paleta completa Solarizada , com a laranja , roxa e todas as níveis de cinza , as cores são chamadas com o atributo negrito , que por sua vez se refere às alternativas 8 cores da paleta ANSI.

Terminal entende isso corretamente, e mostra o laranja e o comentário cinza em normal composição, enquanto < em> tmux adiciona uma fonte bold desnecessária a eles. Em conclusão, o lado esquerdo está correto, enquanto o correto não é.

Questão 2

Existe uma maneira de desativar a renderização em negrito de tmux ?
Eu ainda tenho que fazer alguma pesquisa sobre isso, e vou atualizar essa resposta assim que eu encontrar algo.

Resposta 2

E aqui temos a solução! :)

Para que o tmux se comporte corretamente, temos que chamá-lo de dizer que estamos em um ambiente habilitado para 256 cores.

TERM=xterm-256color /usr/bin/tmux

Por conveniência, podemos alias (ou seja, você adiciona alias tmux="<the line above>" ao seu ~/.bashrc ).

Otmuxinterpretacorretamenteascores"negrito-alternativas" sem negrito

A chamada de tmux as tmux -2 , para forçar o tmux a ser executado com suporte a 256 cores (em vez de redefinir a variável ambiental TERM ) não permitirá a interpretação correta do "bold- alternativa "8 cores (ou seja, a variante mais brilhante também resultará em uma composição em negrito). Portanto, eu recomendo usar a solução aqui acima por ter ambos correto 256 cores interpretação e não-negrito "negrito-alternativo" cores.

    
por 16.03.2014 / 21:04

Tags