Acabei de fazer algumas alterações no .vimrc
arquivo e no .bash_aliases
arquivo e, a partir desse momento, não consigo deletar palavras com a tecla backspace.
Meu .vimrc
arquivo tem:
set nocompatible
set number
set incsearch
set autoindent
set ruler
set autowrite
set smarttab
set linebreak
set spell
set et
set title
set mouse=v
set history=50
set tabstop=4
set matchtime=2
set matchpairs+=<:>
syntax enable
filetype plugin indent on
filetype indent on
set sw=4
map <f2> :w\|!python %
hi SpellBad ctermfg=000 guifg=#000
E meu .bash_aliases
arquivo tem duas linhas para o Vim:
alias vim="vim -c 'startinsert' -u ~/.vim/.vimrc"
alias vi="vi -c 'startinsert' -u ~/.vim/.vimrc"
Meu ~/.vim
diretório não tem um único plugin ou script, então não há nenhuma chance de que o plugin cause isso.
~/.vim/.vimrc
é um link simbólico. O .vimrc
arquivo real está em um ~/vimrc/
diretório que é um repositório git.
Respostas:
Para permitir o retrocesso sobre tudo no modo de inserção (incluindo recuo inserido automaticamente, quebras de linha e início da inserção), você pode definir a
backspace
opção:ou
Por padrão, essa opção está vazia, não permitindo que você retroceda nas coisas mencionadas acima. Este é o comportamento padrão do Vi.
Você pode colocar esta linha em seu
vimrc
arquivo para que ele seja configurado automaticamente quando o Vim iniciar:Além disso, a partir do Vim 8.0, se nenhum arquivo vimrc do usuário for encontrado, o Vim definirá
backspace
esse valor carregando odefaults.vim
script.fonte
set backspace=2
set backspace=indent,eol,start
fixdel
set backspace=2
aloneComo um linux-newb, eu estava em uma nova instalação do Ubuntu 18.04 e meu editor vim se comportou de forma diferente do que eu estava acostumado nas outras máquinas que uso (para incluir o comportamento de retrocesso que você está descrevendo). Não percebi que estava realmente usando o vi e não o vim (ambos executados com
vi
).Instalar o vim e depois editar um arquivo trouxe de volta o comportamento que eu estava acostumado, incluindo o backspacing funcionando como eu esperava.
fonte
Meu
~/.vimrc
arquivo tinha conteúdoset nocompatible
. Adicionada outra linha ao mesmo arquivo para fazer o backspace funcionar -E apenas correr
no mesmo terminal para que a mudança tenha efeito imediato no mesmo shell. Não há necessidade de abrir o vi e executar
fonte
Eu tive o mesmo problema em um Debian 7.8 sobre SSH em urxvt + tmux. Eu tinha o vim e o vim-tiny instalados.
Remover o vim-tiny resolveu o problema.
fonte
Para mim, eu tinha a configuração abaixo, porém o backspace ainda não funciona.
Finalmente, descobri que a linha seguinte levou a esse problema.
Quando esta configuração é excluída, a tecla backspace funciona bem no modo de inserção.
Reason
: Isso porque o Vim vê CTRL-H como um backspace, e esta linha é remapeada para neocompletar # smart_close_popup () no modo de inserção.fonte
Para mim (servidor Debian, conectado com "Konsole" de outro linux), problemas com a tecla backspace e as teclas de seta foram resolvidos após desinstalar o pacote vim-tiny e instalar o pacote vim.
fonte
Muitas vezes, também é uma função do tipo getty selecionado se alguém estiver usando um cliente SSH como o Putty ou algo parecido. O mais preferível seria usar o vt100 +, pois é a emulação mais padrão.
Eu já tinha o
:fixdel
que não estava funcionando. Tive que removê-lo e substituí-lo pela primeira sugestão para fazê-lo funcionarfonte