Acabo de hacer algunos cambios en el .vimrc
archivo y el .bash_aliases
archivo y desde ese momento no puedo eliminar palabras con la tecla de retroceso.
Mi .vimrc
archivo tiene:
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
Y mi .bash_aliases
archivo tiene dos líneas para Vim:
alias vim="vim -c 'startinsert' -u ~/.vim/.vimrc"
alias vi="vi -c 'startinsert' -u ~/.vim/.vimrc"
Mi ~/.vim
directorio no tiene un solo complemento o script, por lo que no hay ninguna posibilidad de que el complemento cause esto.
~/.vim/.vimrc
es un enlace simbólico. El .vimrc
archivo real está en un ~/vimrc/
directorio que es un repositorio de git.
Respuestas:
Para permitir el retroceso sobre todo en el modo de inserción (incluida la sangría insertada automáticamente, los saltos de línea y el inicio de la inserción), puede configurar la
backspace
opción:o
De forma predeterminada, esta opción está vacía, lo que no le permite retroceder sobre las cosas mencionadas anteriormente. Este es el comportamiento estándar de Vi.
Puede poner esta línea en su
vimrc
archivo para que se configure automáticamente cuando se inicie Vim:Además, a partir de Vim 8.0 si no se encuentra ningún archivo vimrc de usuario, Vim establecerá
backspace
este valor cargando eldefaults.vim
script.fuente
set backspace=2
set backspace=indent,eol,start
fixdel
set backspace=2
aloneComo un linux-newb, estaba en una instalación nueva de Ubuntu 18.04 y mi editor vim se comportó de manera diferente a como estaba acostumbrado en las otras máquinas que uso (para incluir el comportamiento de retroceso que está describiendo). No me di cuenta de que en realidad estaba usando vi y no vim (ambos se ejecutan con
vi
).La instalación de vim y luego la edición de un archivo me devolvió el comportamiento al que estaba acostumbrado, incluido el retroceso funcionando como esperaba.
fuente
Mi
~/.vimrc
archivo tenía contenidoset nocompatible
. Se agregó otra línea al mismo archivo para que el retroceso funcione.Y solo corre
en el mismo terminal para que el cambio tenga efecto inmediato en el mismo shell. No es necesario abrir vi y ejecutar
fuente
Para mí, tenía la configuración a continuación, sin embargo, el retroceso todavía no funciona.
Finalmente, encontré que la siguiente línea conducía a este problema.
Cuando se elimina esta configuración, la tecla de retroceso funciona bien en el modo de inserción.
Reason
: Eso es porque Vim ve CTRL-H como un retroceso, y esta línea se reasigna a neocomplete # smart_close_popup () en el modo de inserción.fuente
Para mí (servidor Debian, conectado con "Konsole" de otro linux), los problemas con la tecla de retroceso y las teclas de flecha se resolvieron después de desinstalar el paquete vim-tiny e instalar el paquete vim.
fuente
Tuve el mismo problema en Debian 7.8 sobre SSH en urxvt + tmux. Tenía vim y vim-tiny instalados.
La eliminación de vim-tiny solucionó el problema.
fuente
Muchas veces también es una función del tipo getty seleccionado si uno está usando un cliente SSH como Putty o algo así. Lo más preferible sería utilizar vt100 + ya que es la emulación más estándar.
Ya tenía
:fixdel
cuál no estaba funcionando. Tuve que quitarlo y reemplazarlo con la primera sugerencia para que funcionara.fuente