Soy nuevo en vi , de hecho, he comenzado a aprender vi desde hoy y me he quedado atascado en el comportamiento de la tecla de retroceso . En realidad, cuando encendí vi en mi Ubuntu 12.04 por primera vez, mi tecla de retroceso funcionaba normalmente, pero después de eso comenzó a comportarse de manera extraña. Cada vez que presiono la tecla de retroceso en el modo de inserción, solo se mueve un lugar hacia la izquierda en lugar de borrar el carácter. ¿Cómo puedo recuperar la funcionalidad de retroceso predeterminada? Tenga en cuenta que no quiero instalar vim o establecer nocompatibilty.
10
vim
.Respuestas:
A veces, el
vi
comando es un alias paravim
y cuando se llama comovi
habilita su modo vi.Incluso en el modo tradicional, la retroceso elimina el carácter, pero no lo muestra como eliminado inmediatamente. (Después de presionar ESC, los caracteres desaparecen).
Supongo que tiene que elegir entre usar el
vi
que viene con el comportamiento descrito o usar elvim
que puede hacerlo de la manera esperada.fuente
Verifique si realmente está usando simple
vi
vía$ vi --version | head -n 1
Esto da en mi máquina (Debian 7)
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Feb 10 2013 02:27:59)
Se puede hacer que vim se comporte más como vi. Esto se puede hacer dando el comando en
vi
lugar devim
desde la línea de comandos, dondevi
solo hay un enlace simbólicovim
, en cuyo caso vim se abre en modo vi. Puedes verificar esto con:set compatible?
.Como se ha mencionado por la respuesta anterior, el efecto del retroceso se convierte en accesibles solamente después de dejar en
insert mode
cuandoset compatible
está habilitado.Nota: En el modo compatible con vi, no puede retroceder sobre el texto que se ingresó previamente (antes de ingresar
insert mode
) o las eol o sangría eninsert mode
. ver:help 'bs'
Pruebe las diferentes configuraciones para comprender su significado: ingrese caracteres / saltos de línea y sangría en el modo de inserción, salga y vuelva a ingresar al modo de inserción y luego intente retroceder.
Los usuarios que no están familiarizados con el comportamiento vi y no insisten en usar vi simple (no recomendado de todos modos) deberían hacerlo
:set backspace=indent,eol,start
. Afaik en Debian generalmente hay un archivo de configuración de todo el sistema instalado con esta configuración.Puede obtener la configuración actual a través de
:set bs?
.fuente
Cree un nuevo archivo en el directorio de inicio del usuario llamado .vimrc si aún no está allí. Aquí crearemos y editaremos al mismo tiempo con vi
Agregue los siguientes comandos, que incluyen desactivar el modo de compatibilidad y la funcionalidad de borrado de la tecla de retroceso:
Guardar y salir del archivo usando
Desactivar el modo de compatibilidad permite el uso de teclas de flecha a las que estamos acostumbrados los viejos vi.
Como sudo'd al crear el archivo, la propiedad del archivo probablemente será root. Puede transmitir el archivo al usuario.
En mi caso, esto fue para una frambuesa pi, por lo que el usuario y el grupo es pi:
¡Ahora enciende vi otra vez y disfruta!
fuente
set nocp
hizo el truco para míCreo que la mejor manera sería mirar la hoja de referencia VI / VIM: http://www.viemu.com/vi-vim-cheat-sheet.gif
Ingrese al modo normal (ESC) y luego MAYÚS + X.
fuente
simplemente coloque en su
~/.zshrc
fuente