O backspace e as teclas de seta do Cygwin Terminal não funcionam

10

As teclas de seta retornam A, B, C, D e minha tecla backspace não está funcionando corretamente. Esse problema ocorre apenas com o editor vi. Existe alguma maneira de resolver esse problema no Cygwin ?

Encontrei possíveis duplicatas para esta pergunta, mas não consegui entender. Alguém por favor me forneça instruções passo a passo para um iniciante como eu.

CodeIt
fonte

Respostas:

11

A melhor resposta que encontrei até agora é copiar o arquivo vimrc de amostra do Cygwin VIM:

cp /usr/share/vim/vim*/vimrc_example.vim ~/.vimrc

Resolve todos os problemas estranhos do mapa de teclas que eu estava vendo, além de adicionar alguns extras, como destaque de sintaxe.

Fonte

crobicha
fonte
1
Gostaria de saber se alguém usa os padrões!
dashesy
Esta é de longe a melhor resposta!
hopeseekr
7

Aqui está uma solução simples para isso.

É sobre o vim e o shell remoto, mas deve funcionar.

Corrija as teclas de seta que exibem ABCD no shell remoto

Diz:

1) Open Vim editor,
2) Get the path of your home directory by typing :echo $HOME
3) Check if you have .vimrc file in $HOME location,(if you don't have create it)
4) Add the following line line to .vimrc file
   set nocompatible
        or
   set nocp

Se você possui o vi (não o vim) - o arquivo de configuração .vircnão é .vimrc.

Kamil
fonte
Obrigado estava escorregando no m de .vircvs.vimrc
Ujjwal Singh 8/16
4

Eu fiz isso e ele resolveu o problema. Abra o editor vi em $ home usando:

vi -N .bashrc

depois role para baixo até o final ou inicie uma nova linha. Agora, no modo Inserir, digite

alias vim='vi -N'

Agora, como de costume, salve o arquivo. Tipo

:wq 

Isso resolverá o problema.

CodeIt
fonte
3
Observe que "vi -N" é o mesmo que definir "set nocp" ou "set nocompatible" no seu arquivo ~ / .vimrc.
Tgharold
1
@ Tgharold Eu tentei com o conjunto nocp, mas não resolveu o problema, então eu tentei um método alternativo.
CodeIt
2

Gostaria de acrescentar que a solução oferecida pela Kamil corrige o problema das teclas de seta.

No entanto, o problema do backspace permaneceu. A solução encontrada aqui é adicionar a linha

set backspace=2

para ~/.vimrc

timiscoding
fonte
0

Caso você o copie .vimrcde uma versão personalizada em um computador Linux, você pode ter encontrado o mesmo problema de configuração de termo que eu fiz.

Se você tem isso no seu .vimrc:

set term=xterm

Altere para automático:

set term=$TERM

E então aproveite suas teclas de seta!

eresonância
fonte
0

Depois de tentar algumas das outras soluções sem sucesso, fechei meu terminal Cygwin e reabri um novo e pronto, funcionou.

Samuel
fonte