Por que as setas para cima / para baixo não funcionam durante a execução de um comando: shell dentro do Gvim?

1

Esse problema só acontece no Gvim. Isso não acontece na versão do console do vim. Estou executando o Gvim 7.2.245 em uma máquina Ubuntu 9.10.

Após abrir o Gvim, eu posso digitar: sh e chegar ao prompt do shell. Eu posso então executar um comando (por exemplo, ls). No entanto, se eu quiser executar esse comando novamente pressionando a tecla de seta "para cima", posso uma confusão ilegível do que parece ser um binário e depois as letras "ku". Similarmente, pressionar a seta "para baixo" dá o mesmo resultado seguido pelas letras "kd".

Se eu pressionar ESC e uma das teclas de seta, SOMENTE recebo as letras (por exemplo, "ku") sem o binário ilegível.

Talvez esse problema tenha algo a ver com terminais de texto e teclas de cursor do vim ou algo assim. Alguém tem a resposta para isso?

    
por Chad Braun-Duin 09.12.2009 / 04:48

1 resposta

2

Isso provavelmente tem a ver com o fato de que a emulação de terminal do vim não tem suporte readline. O que é readline, você pergunta?

Bem, aqui está uma pequena introdução do site principal :

The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands.

Readline é o que permite que você use as teclas de setas para alterar o texto antes de executá-lo no terminal, por exemplo. Então o comportamento que você está descrevendo é perfeitamente normal.

    
por 09.12.2009 / 05:16

Tags