Comment puis-je enregistrer les modifications apportées à mon tampon vim sous forme de fichier correctif?
21
Existe-t-il un moyen d'enregistrer les modifications que j'ai apportées à mon tampon vim en tant que fichier de correctif pour le fichier d'origine, sans l'enregistrer en tant que fichier séparé et en utilisant diff?
Vous pouvez utiliser diff -u "%" -car diffcomprend un tiret comme signifiant lu à partir de stdin
roaima
1
Vous pouvez également filtrer le tampon via diff aide de la %!syntaxe:
:%! diff -au "%" -
Cela remplira le tampon avec le diff, plutôt que de l'écrire sur le disque; vous voudrez peut-être définir readonlypour ne pas encombrer l'original par accident (OTOH, cela ne devrait pas être un problème grave car vous avez le fichier sous contrôle de version, non? ). Bien sûr, cela aide d'avoir la commande inverse:
:%! patch -o - "%"
Cela transforme votre diff dans le fichier modifié.
Réponses:
Il est possible de le faire sans plugin en utilisant la
w
commande, donc le contenu du tampon peut être utilisé dans une commande shell:(
%
est remplacé par le chemin du fichier en cours d'édition,-
lit le tampon depuis stdin)la source
diff -u "%" -
cardiff
comprend un tiret comme signifiant lu à partir de stdinVous pouvez également filtrer le tampon via
diff
aide de la%!
syntaxe:Cela remplira le tampon avec le diff, plutôt que de l'écrire sur le disque; vous voudrez peut-être définir
readonly
pour ne pas encombrer l'original par accident (OTOH, cela ne devrait pas être un problème grave car vous avez le fichier sous contrôle de version, non? ). Bien sûr, cela aide d'avoir la commande inverse:Cela transforme votre diff dans le fichier modifié.
la source