web-dev-qa-db-fra.com

Où VIM (gvim / macvim) conserve-t-il les fichiers d'échange des tampons non sauvegardés / non nommés?

Où VIM (gvim/macvim) conserve-t-il les fichiers d'échange des tampons non sauvegardés/non nommés? (Si c'est le cas du tout).

Contexte: Pendant tout un séminaire semi intense, je prenais des notes dans une mémoire tampon MacVim non nommée/non sauvegardée lorsque le MacBook était à court de ressources. et éteint de nulle part (il n'a pas dormi/hibernate comme il le ferait habituellement).

Question: Est-ce que quelqu'un pourrait savoir s'il existe un risque que le travail non enregistré ait été enregistré dans un fichier swap (.swp) fichier ou similaire, qui pourrait être récupéré?

Détails du système: Cela s'est notamment produit avec MacVim sous Mac OS X 10.5.8 (mais des astuces de récupération possibles pour d'autres versions sont d'intérêt aussi). Je n'ai pas encore redémarré MacVim au cas où cela déclencherait un processus de nettoyage.

51
davur

Lancez vim et essayez:

:recover <filename>

Si le fichier n'a jamais eu de nom, alors simplement:

:recover

C'est ton meilleur pari. Pour plus d'informations sur les fichiers d'échange et la récupération, voir:

:help usr_11

En ce qui concerne les fichiers d'échange, ils sont généralement enregistrés dans le même répertoire que le fichier en cours d'édition, mais avec. ajout du début pour le rendre caché et .swp à la fin, mais il est possible de les déplacer ailleurs avec quelque chose comme:

:set directory=~/vimswap

ou similaire.

Voir:

:help swap

Pour tous les détails.

Un fichier d'échange vim n'est pas identique au tampon modifié, cependant, assurez-vous de lire sur ce qui peut être fait pour la récupération.


EDIT: commentaires répondant à la question:

[…] Il semble que dans votre répertoire de travail actuel, ~/tmp,/var/tmp et/tmp, vous trouverez des fichiers d'échange. Dans mon cas, j'ai toujours un ensemble de répertoires de travail en cours et c'est là qu'il a été enregistré. - dsclementsen 5 octobre 10 à 1:42

veillez également à consulter l'argument de la ligne de commande vim -r. Cela imprimera tous les fichiers d'échange trouvés et leur emplacement. De plus, il contiendra de nombreuses informations supplémentaires telles que la date/le nom d'utilisateur/etc ... - Neg_EV 5 oct. 10 à 13:49

56
frabjous

Je travaille sur Windows 10 et :recover n'a pas trouvé de fichier d'échange. vim -r a répertorié le fichier d'échange de la dernière session de mise à jour (également jamais enregistrée) nommé _.swp. La récupération était possible avec :recover _.

2
rolacher

La réponse est: partout. L'astuce consiste à trouver le bon. Certains se trouvent dans votre répertoire/tmp, mais bon nombre d'entre eux se trouvent quelque part dans votre répertoire personnel.

Il existe peut-être des moyens plus efficaces de le faire, mais les éléments suivants ont fonctionné pour moi lorsque j'ai perdu un fichier non nommé (sur MacBook):

dans le répertoire personnel, recherchez des fichiers de sauvegarde (cela prend quelques secondes et peut probablement être rendu plus intelligent):

find ./ -name ".s*" > findVimBackups.txt

fichier ouvert:

vim findVimBackups.txt

supprimez les noms de fichiers qui ne sont pas destinés aux sauvegardes de fichiers non nommés:

:g!/\/\.s..$/d
:g/svn/d

Je vois maintenant une liste des emplacements des fichiers de sauvegarde non nommés. Dans chacun de ces répertoires, j'exécute ce qui suit jusqu'à ce que je trouve le (s) fichier (s) d'aujourd'hui:

ls -ltra <directory>

Je cd dans le bon répertoire et ouvre vim et tapez: récupérer et sélectionnez la sauvegarde correcte.

1
TimHelck

Il semble qu’ils se retrouveront dans votre répertoire de travail :pwd C’est là où vous avez ouvert vim ou vous pouvez également l’avoir défini avec :cd ou similaire.

les fichiers d'échange pour des tampons non nommés semblent juste être déversés là-bas sans nom de fichier, vous allez donc vous retrouver avec .swp .swn .swo etc. différents suffixes!

J'imaginais que de nombreux tampons non nommés avec des modifications pouvaient en être la cause et que la suppression de ces tampons faisait disparaître les fichiers mystères.

0
JonnyRaa