O que você está perguntando é um terminal de largura infinita, cuja parte está sendo exibida. Não é como os terminais tradicionalmente funcionam nem como os aplicativos esperam que eles funcionem.
Por exemplo, se o terminal possui uma largura infinita, como os aplicativos visuais devem funcionar quando desejam exibir algo no meio da tela?
No entanto, algo que você pode fazer é usar o GNU screen(você deve anexar uma sessão de tela de vários terminais de tamanhos diferentes para que a tela saiba como exibir uma pequena janela de um terminal maior) e defina a screenlargura da janela para algo muito grande e, em seguida, induz as aplicações visuais a pensar que a largura da tela é a original.
Curtir (dentro screen)
c=$COLUMNS # assuming your shell has that variable
screen -X width -w 1000
stty cols "$c"
Alguns aplicativos visuais funcionarão bem, outros não tão bem (para instalação quando fazem posicionamento relativo ou quando dependem do invólucro do terminal). vimparece funcionar bem.
Em seguida, para rolar e copiar dados da pasta, a única opção é usar screeno modo de cópia . ( <prefix>]) e mova-se pelo cursor (consulte info -f screen -n Movementpara mover-se no modo de cópia ).
tmux pode ter recursos semelhantes.
Este terminatoremulador de terminal (baseado em java), que não é o terminatorque acompanha o ubuntu, também faz exatamente isso com uma largura infinita de terminal:
- linhas nunca são quebradas
- às aplicações visuais é dito que a largura da tela é o que cabe na janela, não o infinito.
- também funcionaria melhor do que a
screensolução baseada acima, pois sua entrada terminfo afirma que não faz quebra de linha, portanto os aplicativos estão cientes disso e o BS no início da linha não se move para o final da linha anterior.
lsemceditfuncionam bem nele, porque a largura da tela e a largura do buffer são tratadas separadamente.