Inicio > Procesamiento y búsqueda de texto > vimdiff

vimdiff: Comparar y fusionar diferencias de archivos

vimdiff es una herramienta basada en el potente editor de texto Vim que permite comparar y fusionar visualmente las diferencias entre dos o más archivos. Facilita la identificación de cambios entre archivos y la importación o exportación de cambios de un archivo a otro, lo que lo hace muy útil para la revisión de código, la resolución de conflictos de control de versiones, etc.

Descripción general

vimdiff utiliza el modo diff del editor Vim para mostrar varios archivos uno al lado del otro y resaltar automáticamente las partes modificadas. Los usuarios pueden explorar las diferencias utilizando todas las potentes funciones de edición de Vim y fusionar fácilmente los cambios si es necesario.

Características principales

  • Comparación de archivos lado a lado o de arriba abajo
  • Resaltado automático de diferencias y desplazamiento sincronizado
  • Funciones de exploración y fusión selectiva de cambios
  • Soporte para comparar hasta 8 archivos simultáneamente
  • Capacidad para utilizar todas las funciones de edición y navegación de Vim

Opciones principales

vimdiff llama internamente al comando 'vim -d', por lo que puede utilizar varias opciones de línea de comandos de Vim. A continuación se presentan las opciones principales útiles al usar vimdiff.

Especificación de archivos

Configuración de inicio

Comando generado:

Combina los comandos.

Descripción:

`vimdiff` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Explore varios escenarios para comparar y fusionar archivos usando vimdiff.

Comparar dos archivos

vimdiff file_original.txt file_modified.txt

El uso más básico para comparar visualmente las diferencias entre dos archivos.

Comparar tres archivos

vimdiff file_version1.txt file_version2.txt file_version3.txt

Compare tres archivos simultáneamente para identificar las diferencias entre cada archivo de un vistazo.

Aplicar una opción específica al inicio

vimdiff -c 'set diffopt=filler' fileA.txt fileB.txt

Inicia vimdiff con la configuración `diffopt` para comparar rellenando líneas vacías. Esto es útil cuando el número de líneas entre archivos difiere significativamente.

Comparar archivos en modo de solo lectura

vimdiff -R file_old.txt file_new.txt

Úselo cuando solo desee verificar las diferencias sin la intención de modificar el contenido del archivo.

Instalación

vimdiff se proporciona como parte del paquete del editor Vim. La mayoría de las distribuciones de Linux tienen Vim instalado por defecto o se puede instalar fácilmente a través de un administrador de paquetes.

Debian/Ubuntu

Instale Vim usando el administrador de paquetes apt.

  • Comando: sudo apt update && sudo apt install vim

CentOS/RHEL/Fedora

Instale Vim usando el administrador de paquetes yum o dnf.

  • Comando (CentOS/RHEL): sudo yum install vim
  • Comando (Fedora): sudo dnf install vim

macOS

Instale Vim usando Homebrew.

  • Comando: brew install vim

Consejos y precauciones

Consejos y precauciones para usar vimdiff de manera más eficiente.

Comandos internos principales de Vimdiff

Comandos útiles que se pueden usar dentro de una sesión de vimdiff.

  • `[c` o `:diffget` (ir a la diferencia anterior)
  • `]c` o `:diffput` (ir a la siguiente diferencia)
  • `dp` (diffput): aplicar los cambios del búfer actual a otro búfer
  • `do` (diffget): obtener los cambios de otro búfer en el búfer actual
  • `:diffupdate`: actualizar diferencias manualmente (útil después de editar archivos)
  • `:qa` o `:qall`: cerrar todas las ventanas de diff y salir

Sincronización de desplazamiento

Por defecto, todas las ventanas de diff están sincronizadas en cuanto a desplazamiento. Puede desactivar la sincronización de desplazamiento de una ventana específica con el comando `set noscrollbind`. Para volver a sincronizar, use `set scrollbind`.

Configuración de opciones de Diff (`diffopt`)

Puede controlar finamente el modo de visualización de diff usando el comando `set diffopt=`. Por ejemplo, `set diffopt=filler,context:3` rellena líneas vacías y muestra 3 líneas de contexto.


Comandos de la misma categoría