PuTTY não enviando Esc

4

Eu SSH com PuTTY do meu laptop Win7 x64 para um ambiente Unix para o meu escritório. O problema que estou enfrentando é muito parecido com este post onde eu não pode enviar um caractere Esc para o terminal. Eu notei isso pela primeira vez ao tentar sair do modo de inserção em vi , mas com base na solução de problemas desse post que eu fiz parece que apertar a tecla Esc simplesmente não está fazendo nada.

Então, primeiro, deixe-me reafirmar o problema. Registrado no PuTTY, vi um arquivo, entrar no modo de inserção, não pode sair sem apertar F1 e depois :q (para sair da ajuda), então eu posso salvar e sair do documento.

A primeira etapa de solução de problemas na outra pergunta indica isso:

 python -c "print ord(raw_input('char '))"

Em seguida, o resultado deve ser 27. Executando isso, me disseram que tenho uma string vazia (semelhante a um dos comentários, mas esse usuário nunca volta).

Então eu tentei a próxima coisa no comentário ... mas para ser honesto eu não tinha ideia do que estava procurando. Comando e meus resultados são dados:

# bind -p | grep -i '\e' | less

"\e\C-g": abort
"\eOD": backward-char
"\e[D": backward-char
"\e\C-h": backward-kill-word
"\e\C-?": backward-kill-word
"\e[1;5D": backward-word
"\e[5D": backward-word
"\eb": backward-word
"\e": end-of-history
"\e[6~": end-of-history
"\eOF": end-of-line
"\e[4~": end-of-line
"\e[8~": end-of-line
"\e[F": end-of-line
"\eOC": forward-char
"\e[C": forward-char
"\e[1;5C": forward-word
"\e[5C": forward-word
"\ef": forward-word
"\eg": glob-complete-word
"\e^": history-expand-line
"\e#": insert-comment
"\e*": insert-completions
"\e.": insert-last-argument
"\e_": insert-last-argument
"\ed": kill-word
"\eOB": next-history
"\e[B": next-history
"\en": non-incremental-forward-search-history
"\ep": non-incremental-reverse-search-history
"\e=": possible-completions
"\e?": possible-completions
"\eOA": previous-history
"\e[A": previous-history
"\e[2~": quoted-insert
"\e\C-r": revert-line
"\er": revert-line
"\e ": set-mark
"\e\C-e": shell-expand-line
"\e&": tilde-expand
"\et": transpose-words
"\eu": upcase-word
"\e.": yank-last-arg
"\e_": yank-last-arg
"\e\C-y": yank-nth-arg
"\ey": yank-pop

Usando a tecla Ctrl + V então pressionar Esc não faz nada até que eu pressione Enter , que exibe ^M (Eu acredito que este é o caractere de retorno de carro (CR) que recebo citando a tecla Enter ). Digitar Ctrl + [ me deixará sair do vi , então estou assumindo que é o caractere correto que estou procurando, só não sei por que meu terminal parece pensar que o Esc não está vinculado ou está vinculado a algum caractere aleatório.

Minhas configurações atuais para as teclas de função do teclado / terminal e o teclado estão definidas para " Esc[n~ ". Eu tentei alterá-los para "Linux" e "Xterm R6", mas isso não parece mudar nada.

Recentemente, adicionei um túnel para outro aplicativo funcionar e alterei a configuração em Terminal > Features > Disable application keypad mode set para true. Desde então, voltei a ser falso, mas isso parece resolver meu problema também.

Minha suposição é salvar meu perfil depois dessas alterações que eu acidentalmente alterei outra coisa que agora está salva, mas reverter para as configurações padrão e fazer login no meu servidor também não resolve o problema.

Eu não tenho ~/.vimrc e nenhuma alteração foi feita no servidor de acordo com o gerenciamento, então acho que fiz alguma coisa.

Minha pergunta neste momento é: O que mais eu posso verificar no PuTTY ou tentar alterar isso irá alterar o comportamento de como uma chave está sendo passada para o prompt? É possível apenas criar um .vimrc para forçar isso a funcionar? O que mais posso fazer para que isso funcione?

Sou um novo usuário desses fóruns, portanto, se eu cometer um erro ao explicá-lo, avise-me, mas qualquer ajuda na resolução do meu problema ou na ajuda na direção correta seria interessante.

    
por John Lillard 26.06.2013 / 22:54

4 respostas

0

... então, novamente ficando frustrado com o vi numpad não funcionando, eu mudei o "Desabilitar o modo de teclado do aplicativo" como mencionado na minha pergunta original de volta para "True / checked". Isso não só me permitiu usar meu numpad no vi novamente, mas parece ter reparado meu problema Esc também.

A única coisa que posso acrescentar é que parece que minha máquina também teve um erro de java de algum tipo que pareceu atrapalhar as atualizações do Windows que foram corrigidas por uma de nossas IT Techs. Talvez os dois inconscientemente correlacionados ?? De qualquer forma, estou fechando a questão.

Talvez eu não tenha salvado meu perfil corretamente? Tenho certeza que verifiquei isso, mas também estou lutando com a ideia de que isso "se consertou magicamente".

    
por 16.07.2013 / 22:55
2

Acabei de começar a ter o mesmo problema, pressionando Ctrl + [ também sai do modo de inserção em Vi (é uma tecla alternativa para Esc ) .

Para corrigir isso, fui para Terminal > Keyboard e alterei o Function Keys and Keypad para VT100+ emulation .

    
por 05.01.2015 / 23:02
0

Fico feliz que você encontrou uma resposta, que estava sufocando com as configurações do PuTTY. Como alternativa, se a tecla Esc não funcionar como esperado, você pode tentar Ctrl- [. ] [CyberPillar] [: sequências de teclado da tecla ctrl mencionam isso, assim como < a href="http://cyberipllar.com/dirsver/1/mainsite/techns/basics/usrifbas/usrifbas.htm#metakey">] [CyberPIllar] [: chave Meta . Tenha isso em mente, pois a dica pode ocasionalmente ser bastante útil, talvez especialmente se você usar regularmente a tecla Esc com programas Unix remotos (como o vi, como você mencionou).

    
por 06.01.2015 / 03:12
0

talvez eu tenha um shell diferente ou algo assim, mas ctrl + alt + [faz isso por mim

    
por 18.11.2015 / 15:01

Tags