Comment utiliser vimdiff pour afficher les différences décrites dans un fichier diff?
Réponses
Trop de publicités?Au lieu d'utiliser /usr/bin/vimdiff
de commande, essayez ceci:
$ vim fichier :vertical diffpatch chemin/vers/diff
(:vert diffpa
pour faire court.)
Ceci est équivalent à l'appel de vimdiff
sur le fichier d'origine et par la suite le fichier patché, mais vim
des appels patch
sur un fichier temporaire pour vous.
Modifier
Si vous souhaitez vim
s'diff-mode pour être automatiquement inscrit, utilisez ceci:
$ vim fichier +'vert diffpa chemin/vers/diff'
où +command
demande vim
d'exécuter la commande"". (+123
sauts à la ligne 123, +/abc
sauts pour le premier match du "abc", tout est documenté.)
Quant à Ken requête: si le fichier diff comprend un beau appliquer à d'autres fichiers que le fichier que vous êtes en train d'éditer, pas de soucis; vim
des appels à l' patch
exécutable-dessous, qui vous demandera l'emplacement de ces mystérieusement disparu des fichiers, et vous pouvez dire patch
de sauter un de ces mecs.
Venant de l'autre sens. J'ai écrit un plugin Vim qui montre les modifications apportées à un fichier depuis le dernier enregistrement, au format vimdiff ou au format diff unifié.
Obtenez-le ici: diffchanges.vim
Faites une copie du fichier original, appliquez le diff puis
vimdiff original_file patched_file
Vous pouvez également consulter les scripts de vim.org qui ont été écrits pour traiter la sortie svn diff. Si vous générez votre diff à partir d'un système de contrôle de version, consultez le plug-in d'intégration vcscommand.vim: CVS / SVN / SVK / git .
Souhaitez-vous en dire plus au sujet de pourquoi vous voulez utiliser vimdiff pour cela?
Par exemple, voulez-vous de les visualiser par différences de caractère dans un (unifiée) fichier diff?. Si oui, quelqu'un a répondu à ma question sur même avec une suggestion tout simplement de l'incendie jusqu'emacs sur le diff et frapper ALT-n
pour faire défiler les beaux mecs, bien soulignant par mot ou par des caractères de changements en cours de route (similaire à vimdiff). Il fonctionne bien, mais c'est une déception pour le feu jusqu'à emacs juste pour ce faire. Je sais seulement assez d'emacs pour faire cela, alors la sortie sans curage le patch. :)
De toute façon, emacs réponse m'a donné quelques idées. Je suis sûr que Vim peut être cajolé en offrant une meilleure mise en évidence pour diff fichiers, peut-être quelque chose de plus comme ediff. J'ai regardé dans cette pendant un certain temps, et quelqu'un sur le vim de la liste des utilisateurs ont eu l'excellente suggestion pour intégrer google-diff-match-patch. Le Python interface pourrait être utilisé à partir d'un Python Vim ftplugin, par exemple.
Désolé à ce sujet à l'aide d'une "réponse" pour répondre quand cela peut ne pas être une grande réponse, le formatage "ajouter un commentaire" était trop limité pour ce que je voulais dire.
Pour la postérité, voici une référence à une autre question (qui a déjà des liens ici).