Basta colocar isso no seu .vimrc:
set backspace=indent,eol,start
Eu abri o vim no meu iterm2. Em primeiro lugar, eu digitei algo no modo de inserção, como
Hello
Neste estágio, se eu não sair do modo de inserção, a tecla delete
funcionará e poderá excluir a palavra inteira, se desejar.
Se eu sair do modo de inserção e abrir o modo de inserção novamente, esse Hello
não poderá ser removido pela chave delete
. Mas o conteúdo recém-digitado pode ser removido.
Eu renomeiei meu .vimrc, o problema ainda existe.
Na linha de comando do shell, minha chave delete
funciona bem.
E fiz alguns testes no servidor remoto através de iterm
, não encontrei o mesmo problema.
Qual poderia ser a causa desse problema? Como consertar isso?
PS:
Como estou usando o macbook, a tecla delete
é correspondente para backspace
no PC.
Basta colocar isso no seu .vimrc:
set backspace=indent,eol,start
Isso não tem nada a ver com o shell ou com a versão de vim
. É uma coisa de configuração simples, já que a operação de backspace no modo de inserção é um comportamento configurável vim
comum. Especificamente, é a configuração vim
backspace
. Em uma máquina, você (muito provavelmente) tem esse conjunto na sequência vazia e, em outra, você o define para incluir o valor start
. E isso provavelmente está em um arquivo de configuração global.
Observe que o padrão, se você ativar vim
no modo vi
-compatible, é que a variável backspace
seja a string vazia. O comportamento que você está reclamando é, na verdade, o comportamento do original vi
. Os sistemas operacionais Linux tendem a preencher o arquivo de configuração global com todos os tipos de vim
opções que ativam comportamentos "mais amigáveis" que se desviam do original vi
. Os BSDs não costumam.
:help backspace
. documentação do vim. Acredito que isso possa ocorrer devido à versão do vim instalada no OSX por padrão. Você sempre pode instalar o vim via homebrew e ver se essa substituição ajuda. Eu encontrei esta página que ajuda a sobrecarregar a experiência do terminal OSX. link
Tome nota desta linha 'brew install vim - override-system-vi'
Tags vim