Navigation et édition dans vimdiff
Maintenant que vous avez vu comment vimdiff affiche les différences entre les fichiers, apprenons à naviguer entre les différences et à effectuer des modifications.
Ouvrez à nouveau les fichiers avec vimdiff :
vimdiff file1.txt file2.txt
Navigation entre les différences
Dans vimdiff, vous pouvez utiliser les commandes suivantes pour vous déplacer entre les différences :
]c - Sauter à la prochaine différence
[c - Sauter à la différence précédente
Essayez de naviguer jusqu'à la différence dans nos fichiers en tapant ]c en mode normal (appuyez d'abord sur Échap si vous n'êtes pas en mode normal).
Copie de texte entre les fichiers
L'une des fonctionnalités puissantes de vimdiff est la capacité de copier du texte d'un fichier à un autre. Vous pouvez le faire avec les commandes suivantes :
do (diff obtain) - Récupérer le changement de l'autre fichier dans le fichier actuel
dp (diff put) - Transférer le changement du fichier actuel vers l'autre fichier
Essayez de positionner votre curseur sur la différence dans le fichier de gauche et tapez do pour récupérer le texte du fichier de droite. Ensuite, essayez de positionner votre curseur sur le fichier de droite et tapez dp pour transférer le texte du fichier de droite vers le fichier de gauche.
Effectuer des modifications directes
Vous pouvez également éditer directement les fichiers dans vimdiff comme vous le feriez dans Vim classique :
- Appuyez sur
i pour entrer en mode insertion
- Effectuez vos modifications
- Appuyez sur Échap pour revenir en mode normal
- Tapez
:w pour enregistrer les modifications
Quitter vimdiff
Lorsque vous avez terminé d'explorer vimdiff, quittez sans enregistrer les modifications :
:qa!
Si vous souhaitez enregistrer les modifications avant de quitter, utilisez :
:wq
pour chaque fichier, ou utilisez :
:wqa
pour enregistrer et quitter tous les fichiers d'un coup.
vimdiff est un outil puissant qui combine les capacités de Vim avec des fonctionnalités de comparaison de fichiers, ce qui en fait un excellent outil pour les revues de code, la résolution de problèmes et la fusion de modifications.