Eu uso um gerenciador de janelas lado a lado (impressionante) + um multiplexador de terminal (tmux) + divisões dentro do vim. Eu não tenho nenhuma decoração de janela, então você não tem uma divisão visual entre elas se o conteúdo do programa não a revelar. Estou bastante confortável com esse paradigma, pois, de qualquer maneira, uso vários monitores e agrupo tarefas por tela. Se duas janelas não tivessem um motivo para estar lado a lado, elas não estariam lá em primeiro lugar.
No entanto, isso cria um pouco de dissonância visual, onde a divisão visual mais óbvia é a menos significativa semanticamente.
- Janela do Xorg ‹|› window = nada
- Painel Tmux ‹|› painel = linha divisória de 1px
- Divisão Vim ‹|› divisão = coluna colorida de 1 caractere
Aqui está uma amostra mostrando uma de cada lado das janelas, painéis e divisões do vim:
Mesmo sem clicar na versão em resolução máxima, a linha divisória branca que você vê é a divisão menos significativa na tela, os painéis do vim. (Observe que a coluna cinza à direita da sessão do vim é na verdade um destaque da oitava coluna, não um divisor de qualquer tipo, embora eu trabalhe com esse tamanho com frequência).
Estou ciente de como alterar o caractere desenhado na divisão ou reduzir o contraste do esquema de cores. O que eu gostaria de fazer é usar a mesma barra de divisão que o tmux que não ocupa nenhuma largura porque é desenhada entre colunas e não em uma. Isso é possível com o vim baseado em terminal? Gvim? Neovim? Exceto na criação de um separador visualmente discreto, a coluna divisória pode ser totalmente desativada?
PS: O motivo pelo qual um separador visualmente semelhante faz sentido é porque eu uso as mesmas combinações de teclas para navegar entre os painéis tmux e divisões do vim. As mesmas teclas navegam perfeitamente entre elas, só faria sentido se os limites visuais fossem os mesmos também.
hi VertSplit cterm=NONE
porque é oreverse
padrão.Mesmo na minha própria captura de tela, o tmux não está usando nenhuma mágica, a divisão ainda é uma coluna de um único caractere. O efeito visual menos invasivo é o uso de um caractere de desenho de caixa Unicode que é menos desajeitado que o padrão ASCII do vim e a falta de uma cor de fundo destacada.
Quase o mesmo efeito é possível no vim adicionando algo como as seguintes linhas ao arquivo rc:
O uso de
autocmd
garantias de que a substituição do destaque permanece em vigor se você alternar os esquemas de cores. Você pode ou não querer esse comportamento, pois algum esquema de cores tem valores sensíveis para esse grupo de cores.Observe também que
cterm=NONE
é necessário substituir alguns esquemas de cores que definem esse valor ereverse
, portanto, mexer com os valores de fg / bg que você tentar usar.fonte
Não, isso não pode ser feito no Vim e provavelmente seria muito difícil de implementar no GVIM.
O Vim adere ao endereçamento baseado em célula usado no terminal; dentro de um buffer, isso é crucial para uma navegação vertical consistente com
j
/k
. Esse endereçamento por coordenadas x e y baseadas em células está tão arraigado na implementação do Vim, que acho muito difícil de superar.Observe também
:help design-not
:fonte