tmux / vim divide painéis

6

Estou pegando emprestada essa captura de tela de outra pergunta :

O fundo do terminal parece vazar para o vim à esquerda da borda divisória. Isso é mais perceptível perto de Top .

Alguém pode me dizer por que / o que é isso e se posso me livrar dele para que a divisão seja limpa?

    
por Community 12.10.2012 / 18:20

2 respostas

8

O caractere usado pelo tmux para desenhar a borda do painel é ou U+2502 . É uma linha de 1px ou 2px no meio da célula. O resto da célula está vazio e você está vendo a cor de fundo do seu terminal em cada lado da linha.

Eu vejo três maneiras de "consertar" isso.

  • Use a mesma cor de fundo no Vim e no seu emulador de terminal.

  • Peça ao tmux para desenhar bordas com a mesma cor para o segundo plano e o primeiro plano.

  • Diga ao tmux para usar outro caractere como █ para desenhar as bordas.

As duas últimas soluções farão suas bordas visivelmente mais grossas e a última pode apresentar problemas de exibição dependendo da fonte que você usa.

Eu pessoalmente tenho meu plano de fundo do Vim e meu plano de fundo do terminal configurado para a mesma cor.

(obrigado ZyX)

    
por 12.10.2012 / 20:26
3

Seguindo o terceiro conselho @romainl você pode usar U + 258C ou U + 2590 caracteres (ESQUERDA e DIREITA HALF BLOCK respectivamente) e dizer ao tmux para setar (no caso de LEFT e vim estarem à esquerda) cor de primeiro plano para vim fundo e cor de fundo para fundo de concha.

Esta opção deve ser definida a partir do vimrc quando a variável $TMUX existir e não estiver vazia (ela é configurada pelo tmux dentro de processos-filhos) e redefinida no evento VimLeave. Isso pressupõe que você sempre abra o vim somente no painel esquerdo. Com alguns ajustes você pode detectar em qual painel você está ( tmux list-panes , um com (active) no final) se existe vim na janela adjacente (marcando a tecla de borda) e ajustando as configurações do tmux de acordo.

    
por 12.10.2012 / 22:32