Eliminando o espaço à direita em linhas quebradas em um terminal

4

Em algumas sessões de terminal, um espaço é inserido onde as linhas longas são quebradas. Ao copiar várias linhas com um mouse, o espaço final inserido em cada linha é incluído. Quando colado, deve-se excluir manualmente esses espaços extras.

Existe alguma configuração de terminal que pode impedir a inserção desses espaços extras por longas linhas de texto?

Se for importante, estou usando o iTerm no Mac OS X, mas o problema acontece dependendo da máquina em que eu esteja.

    
por Paul J. Lucas 10.07.2015 / 21:28

1 resposta

0

Soa como um erro na solução do iTerm2 para a solução do vim para o envolvimento de linhas VT100.

Isso pode parecer rotatório, mas aqui está uma explicação:

    Os emuladores de terminal
  • armazenam o texto selecionado como linhas e, para fins práticos, não envolvem essas linhas.
  • A maioria dos emuladores de terminal faz provisão especial para permitir que você selecione o texto que envolve a margem direita, como se fosse uma longa cadeia. Eles fazem isso detectando uma sequência de caracteres de impressão escritos (e envolvidos) ao redor da margem.
  • A quebra de linha do VT100 apresenta um problema especial porque o terminal ignora (não imprimem) caracteres de controle (como retorno de carro) quando o cursor está ativado na margem direita. Pense nisso como uma maneira de suprimir uma linha em branco desnecessária.
  • programas que usam endereçamento de cursor (como editores de texto) não necessariamente escrevem texto que você como empacotado de maneira que o terminal o veja como encapsulado . Pode haver uma lacuna.
  • vim é uma exceção aqui, usando um caso especial para preencher essa lacuna escrevendo um caractere fictício que faz o encapsulamento acontecer, seguido pelo cursor endereçando para a próxima linha - e sobrescrevendo o caractere fictício.

O emulador de terminal tem que acompanhar esta dica e construir uma linha longa. Houve um relatório de bug do iTerm2 que pode estar relacionado (e foi fechado alguns meses antes desta questão):

por 21.10.2016 / 02:59

Tags