Comment enregistrez-vous le fichier sur lequel vous travaillez en tant que nouveau fichier?


10

Il y a des moments où je veux tester les modifications d'un fichier avant d'écraser l'original. Existe-t-il un moyen de sauvegarder un fichier en cours de modification dans un nouveau fichier?


La réponse hors sujet serait de suggérer un VCS. Par exemple, l'index de git pourrait être utile
— johannes

Réponses:


17

Vous pouvez donner un paramètre à la commande :wou :writepour enregistrer dans un autre fichier. Par exemple, pour enregistrer le tampon actuel dans /tmp/data.txt:

:w /tmp/data.txt

Cependant, gardez à l'esprit que cela ne fait pas basculer votre tampon vers cet autre fichier. Donc, si vous continuez à éditer et faites juste :w, cela enregistrera dans le fichier actuel, pas dans l'autre. Pour passer à l'autre fichier, utilisez la :editcommande:

:e /tmp/data.txt

Pour ce faire, enregistrez dans un autre fichier et basculez vers celui-ci, utilisez la :saveascommande:

:sav /tmp/data.txt

5

Vim a un "mode de sauvegarde" qui peut être activé par :set backupou :set patchmode. Dans ce mode, Vim conserve automatiquement une copie de sauvegarde des fichiers que vous écrivez.

Par exemple, si vous émettez :set patchmode=.origet que vous modifiez un fichier existant somefile.txt, alors lorsque vous émettez :wnormalement, Vim conservera une copie de l'ancien fichier sous somefile.txt.origet enregistrera le nouveau contenu sous somefile.txt.



0

Spécifiez simplement un nouveau chemin de fichier à la :wcommande -:w newfile.foo

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.