O comando envolve a mesma linha após 80 caracteres

6

Eu tenho um problema chato com o minicom conectado a um console serial em uma máquina Yocto Linux.

O comando que eu entro envolve na mesma linha após o 80º caractere. Isso se torna muito inconveniente para se trabalhar. Tudo o que eu digitei no começo da linha foi sobrescrito pelos últimos caracteres dessa linha.

Uma conexão SSH com a mesma máquina funciona bem. Depois dos 80 caracteres, ssh vai para a próxima linha.

Esta é a configuração stty:

stty -a
speed 115200 baud; rows 24; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon ixoff
-iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon -iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke

A opção -w do minicom não tem efeito. Ainda o mesmo comportamento

minicom -w

O comando resize não está disponível nessa máquina. A que pacote pertence? Talvez eu possa instalá-lo.

Como posso corrigir esse comportamento?

    
por Oliver G. 19.10.2016 / 18:18

1 resposta

3

Quando você está conectado através de uma linha serial, não há como o sistema negociar o tamanho da janela com o terminal (NAWS - Negociar sobre o tamanho da janela é RFC 1073 ). Nesse caso, você pode obter um padrão do sistema para o tamanho ou mesmo apenas zeros. Ou confundiria o editor de linhas do shell, que precisa saber a largura real do terminal para trabalhar com o recurso de encadernação.

O

bash se confunde, achando que ele está encerrado devido ao recurso autowrap do terminal e se move para o início da linha atual (errada) como parte da edição / exibição de linha.

Como solução alternativa, a maioria dos terminais (incluindo o minicom - veja a origem ) que você usaria com uma interface serial pode responder à seqüência de escape do relatório de posição do cursor usada por resize para encontrar o tamanho da janela - e como um efeito colateral, defina a ideia do sistema de quão grande é a janela do seu terminal.

    
por 19.10.2016 / 21:59