two tool files vim vimdiff

vim - tool - vi diff 2 files



use vimdiff con un archivo diff (4)

¿Cómo puedo usar vimdiff para ver las diferencias descritas en un archivo diff?


¿Diría más acerca de por qué quiere usar vimdiff para esto?

Por ejemplo, ¿desea visualizar diferencias por carácter en un archivo diff (unificado)? . Si es así, alguien respondió mi pregunta al respecto con una sugerencia para básicamente disparar emacs en el diff y presionar ALT-n para desplazarse a través de los bloqueos, resaltando muy bien los cambios por palabra o por caracteres en el camino (similar a vimdiff). Funciona bien, pero es un fastidio encender emacs solo para hacer esto. Solo conozco suficientes emacs para hacer eso y luego salgo sin reprimir el parche. :)

De todos modos, la respuesta de emacs me dio algunas ideas. Estoy seguro de que se puede engatusar a Vim para que destaque mejor los archivos diff, tal vez algo más como ediff. Investigué esto hace un tiempo, y alguien en la lista de usuarios de vim tuvo la excelente sugerencia de incorporar google-diff-match-patch . La interfaz de Python podría usarse desde un ftplugin de Python Vim, por ejemplo.

Perdón por usar una "respuesta" para responder cuando esta puede no ser una buena respuesta, el formato para "agregar comentario" era demasiado limitado para lo que quería decir.

Para la posteridad, aquí hay una referencia a otra pregunta similar (que también se vincula aquí).



Viniendo de la otra dirección. Escribí un plugin de Vim que muestra los cambios que se han realizado en un archivo desde la última vez que guardé en vimdiff o en formato unificado de diferencias.

Consíguelo aquí: diffchanges.vim


En lugar de usar el comando /usr/bin/vimdiff , intente esto:

$ vim file :vertical diffpatch path/to/diff

( :vert diffpa para abreviar)
Esto es equivalente a llamar a vimdiff en el archivo original y el archivo subsiguientemente parcheado, pero vim llama patch a un archivo temporal por usted.

Editar

Si desea que el modo diff de vim se ingrese automáticamente, use esto:

$ vim file +''vert diffpa path/to/diff''

donde +command le pide a vim que ejecute "comando". ( +123 salta a la línea 123, +/abc salta a la primera coincidencia para "abc", está todo documentado).

En cuanto a la consulta de Ken: si el archivo diff incluye trozos que se aplican a archivos que no sean el que está editando actualmente, no se preocupe; vim llama al patch ejecutable que se encuentra debajo, que le pedirá la ubicación de estos archivos misteriosamente perdidos, y puede decirle al patch que saltee esos trozos.