A tecla `Delete` não funciona no modo de inserção do vim para excluir conteúdo digitado anteriormente

12

Abri o vim no meu iterm2. Primeiro, digitei algo no modo de inserção, como

Hello

Nesse estágio, se eu não sair do modo de inserção, a deletetecla funcionará e poderá excluir a palavra inteira, se eu quiser.

Se eu sair do modo de inserção e abrir novamente o modo de inserção, isso Hellonão poderá ser removido pela deletechave. Mas o conteúdo recém-digitado pode ser removido.

Renomeei meu arquivo .vimrc, o problema ainda existe.

Na linha de comando do shell, minha deletechave funciona bem.

E eu fiz alguns testes no servidor remoto iterm, não encontrei o mesmo problema.

Qual poderia ser a causa deste problema? Como corrigi-lo?


PS: Como eu estou usando o macbook, a deletechave é correspondente backspaceno PC.

zen
fonte

Respostas:

17

Basta colocar isso no seu .vimrc:

set backspace=indent,eol,start
Gawain Lau
fonte
Muito obrigado, poupando meu tempo :)
Sreedhar GS
3

Isso não tem nada a ver com o shell ou com a versão do vim. É uma coisa simples de configuração, pois a operação do backspace no modo de inserção é um vimcomportamento configurável comum . Especificamente, é vima backspaceconfiguração. Em uma máquina, você (provavelmente) configurou a string vazia e, em outra, configurou-a para incluir o valor start. E isso provavelmente está em um arquivo de configuração global.

Note-se que o padrão se você abrir vimno vimodo de -Compatível é para a backspacevariável a ser a string vazia. O comportamento do qual você está reclamando é de fato o comportamento do original vi. Os sistemas operacionais Linux tendem a preencher o arquivo de configuração global com todos os tipos de vimopções que ativam comportamentos "mais amigáveis" que se desviam dos do original vi. Os BSDs tendem a não.

Leitura adicional

  • Arnold Robbins, Elbert Hannah e Linda Lamb (2008). "Edição Simples". Aprendendo os editores vi e Vim . O'Reilly Media, Inc .. ISBN 9781449313258. p. 14)
  • :help backspace. documentação do vim.
  • Bug # 19903 . 1998. Debian BTS.
JdeBP
fonte
0

Verifique os iTermmapeamentos de teclas ( Preferences -> Profiles -> Keys). Eu estava usando a predefinição de edição de texto natural padrão e, com esta resposta , excluir os mapeamentos de teclas relacionados à exclusão resolve o problema para mim.

Rodrirokr
fonte