Vim - Diff
Similar al comando diff de UNIX, podemos usar Vim para mostrar diff de una manera mucho mejor. Mostrará la diferencia de manera colorida. En este capítulo, discutiremos los siguientes elementos:
- Mostrar diferencias entre archivos
- Activar y desactivar el modo diferencial
- Navegación en modo diferencial
- Aplicar cambios desde la ventana de diferencias
Mostrar diferencia
Para mostrar las diferencias entre los archivos, ejecute el siguiente comando:
$ vimdiff <file> <file>
OR
$ vim –d <file> <file>
Por ejemplo, el siguiente comando muestra diferencias:
En la imagen de arriba, el texto resaltado en color magenta es común. El texto restante se resalta en color rojo, lo que indica que existen algunas diferencias después del texto común.
Activar y desactivar el modo diferencial
Si ya está en vim y desea realizar la acción diff, use uno de los siguientes comandos:
diffsplit
Utilice el siguiente comando para realizar la división horizontal:
:diffsplit filename
Las imágenes de arriba muestran que estamos comparando dos archivos, a saber, message-1.txt y message-2.txt.
Diferencial vertical
Para realizar la división vertical, use el siguiente comando:
:vert diffsplit <filename>
Se abre la siguiente ventana:
Las imágenes de arriba muestran que estamos comparando dos archivos, a saber, message-1.txt y message-2.txt.
Navegación en modo diferencial
La navegación en modo diferencial es un poco diferente. Por ejemplo, cuando desplaza el texto de una ventana, el texto de la ventana adyacente también se desplaza. Esto se llama scrollbind. Para habilitar este uso:
:set scrollbind
Para deshabilitar este uso:
:set noscrollbind
Si edita el archivo en este modo, use el siguiente comando para actualizar diff -
:diffupdate
Cambiar entre ventana diferencial
Para cambiar entre las ventanas de diferencias, ejecute el siguiente comando:
Ctrl + w Ctrl + w
Tenga en cuenta que tenemos que presionar Ctrl + w 2 veces.
Ir al cambio anterior
En la ventana de diferencias, ejecute el siguiente comando para saltar al cambio anterior:
[c
Ir al siguiente cambio
En la ventana de diferencias, ejecute el siguiente comando para saltar al siguiente cambio:
]c
Aplicar cambios desde la ventana de diferencias
Aplicar cambios en las ventanas de diferencias actuales
Para aplicar el cambio de la ventana de diferencias adyacente a las ventanas de diferencias actuales, ejecute:
:diffget
Por ejemplo, si está en la ventana izquierda y desea cambiar de la ventana derecha a la ventana actual, ejecutará el comando anterior.
Aplicar el cambio del panel actual a otro
Para aplicar el cambio de la ventana de diferencias actual a la ventana de diferencias adyacente, ejecute:
:diffput
Por ejemplo, si está en la ventana izquierda y desea aplicar el cambio de la ventana actual a la ventana derecha, ejecutará el comando anterior.