Por que Putty inseriu ~ no meu shell bash do Fedora

1

Recentemente, enquanto trabalhava no Putty logado no meu sistema Fedora, comecei a ter caracteres aleatórios ~ no meu shell. Além disso, enquanto eu estou editando no VIM, os caracteres mudam aleatoriamente para maiúsculas. Isso só acontece enquanto estou logado int usando Putty. Eu nunca tive isso antes, então eu estou querendo saber se uma atualização para o Fedora ativou algum tipo de recurso keep alive no SSH que está causando isso. Eu re-instalei putty e destruí minhas preferências apenas para ter certeza. Eu não tenho certeza onde começar a cavar para encontrar o culpado. Quaisquer ponteiros?

    
por Nate 07.03.2014 / 19:45

2 respostas

2

Parece que você está digitando uma tecla de função que envia uma seqüência de escape que não é reconhecida no lado remoto. Muitas teclas de função geram sequências de escape que terminam com o caractere ~ , e. \e[3~ para a chave Del (em que \e é o caractere de escape). Consulte Como a entrada de teclado e a saída de texto funcionam? (a parte sobre entrada na seção sobre aplicativos em modo texto em execução em um terminal) para obter mais informações sobre teclas de função em terminais.

Se o seu shell e vim no lado remoto não reconhecerem essa seqüência de escape, eles consumirão \e[ (prefixo de uma sequência reconhecida), apitarão em 3 e tratarão ~ como uma ação comum. personagem.

No prompt do shell ou no modo de inserção do Vim, pressione Ctrl + V e a tecla de função em questão para ver o que ela insere. Você pode então criar uma ligação para ele: para bash, com o bind integrado em ~/.bashrc ( exemplo ) ou em ~/.inputrc ( exemplo ); no vim, com map! , por exemplo

map! <ESC>[3~ <Delete>

(Observe que este exemplo é pré-configurado, você precisa descobrir qual chave não é reconhecida em seu sistema e ajustar a sequência de escape e o nome da chave de acordo.)

    
por 08.03.2014 / 01:32
1

Esta não é uma resposta definitiva, apenas uma sugestão.

Eu tive o mesmo problema (não Putty mas ssh do linux) e descobri que ssh_config tem uma opção

EscapeChar ~

que eu mudei para

EscapeChar none

Se o Putty tiver alguma opção de configuração semelhante, tente ajustá-lo.

    
por 07.03.2014 / 19:53