it-swarm.dev

Vim para reemplazar a Vi

Chicos, ¿alguien sabe cómo cambiar el editor de consola de Linux de vi a vim cada vez que ejecutamos vi? Estoy usando Ubuntu y Fedora Core

29
Funky81

Primero, asegúrese de tener instalados los paquetes Vim adecuados. El valor predeterminado en muchos sistemas es instalar un paquete mínimo de Vim que esté más cerca de la funcionalidad de Vi.

En los sistemas basados ​​en Red Hat (RHEL, CentOS, Fedora), necesita el paquete mejorado vim, por ejemplo, de un sistema CentOS que he instalado:

vim-common-7.0.109-4.el5_2.4z
vim-enhanced-7.0.109-4.el5_2.4z
vim-minimal-7.0.109-4.el5_2.4z

'común' contiene bibliotecas comunes utilizadas por todos los paquetes de Vim. 'minimal' es el ejecutable del editor vi simple como está instalado por defecto.

En sistemas basados ​​en Debian (como Ubuntu), necesita 'vim'. Por ejemplo:

ii  vim                  2:7.2.079-1ubuntu5  Vi IMproved - enhanced vi editor
ii  vim-common           2:7.2.079-1ubuntu5  Vi IMproved - Common files
ii  vim-runtime          2:7.2.079-1ubuntu5  Vi IMproved - Runtime files
ii  vim-tiny             2:7.2.079-1ubuntu5  Vi IMproved - enhanced vi editor - compact version

Estos deben instalarse por defecto. En Debian/Ubuntu, puede actualizar el editor de sistema predeterminado para todos los usuarios:

Sudo update-alternatives --config vi

Seleccione la versión que desee del menú de selección. Sin embargo, las secuencias de comandos posteriores a la instalación del paquete vim ya deberían haber actualizado esto. Use --config editor para cambiar el editor predeterminado para todos los usuarios del sistema (el valor predeterminado original de Ubuntu 9.04 es nano, por ejemplo).

Finalmente, para cada distribución por usuario, configure un alias en el perfil de usuario. Por ejemplo, si el Shell es bash, edite ~ username/.bashrc:

alias vi="vim"

Además, puede verificar el sistema vimrc (/ etc/vimrc, generalmente) para ver si el modo de compatibilidad está activado.

set cp
set compatibility

Le dirá a Vim que se comporte más como el Vi de la vieja escuela, sin importar cómo haya manejado el uso de Vim según lo anterior. Cambie a 'nocp' o 'nocompatibility' para que Vim sea más útil.

34
jtimberman

En tu .bashrc:

alias vi=vim
28
Al.

Si es un sistema Debian o Ubuntu, y desea hacer que este cambio sea amplio en el sistema, debe usar update-alternatives (especifique con las opciones --config editor, y debería ser dorado)

10
mwalling

Si necesita los cambios solo para su identificación, y dentro de una sesión de terminal: alias vi a vim como lo sugiere AI.

Si desea un cambio en todo el sistema en su máquina, enlace suave a vim en / usr/local/bin:

Sudo ln -s `which vim` /usr/local/bin/vi

Nota: Los programas pueden ignorar cualquier alias en vi ejecutando command vi o \vi en lugar de solo vi.

9
nagul

Algunos discos usan el modo vim: s old school donde se comporta como vi.

compruebe si su .vimrc contiene

set nocompatible

He sido engañado por esto un par de veces ...

3
Johan

En los sistemas Debian, cuando ejecuta el vim-tiny predeterminado como 'vi', se utiliza un archivo RC diferente: /etc/vim/vimrc.tiny.

Para hacer que 'vi' actúe más como 'vim', edite /etc/vim/vimrc.tiny y cambie la línea:

set compatible

leer:

set nocompatible
1
user22083

Lo hice así en .profile on archlinux usando bash :

if [ -f "/usr/bin/vim" ];
 alias vi="vim"
else
 alias vim="vi"
fi

export EDITOR=vim

Entonces, vim siempre está ahí correctamente o como vi .

0
user373230

Si usa pescado , ponga la línea de abajo en ~/.config/fish/config.fish:

alias vi="vim"
0
Zhang Buzz