J'ai accidentellement fermé une fenêtre de terminal dans laquelle des onglets de vim étaient ouverts.
Maintenant, comment puis-je trouver ces fichiers d'échange en utilisant vimgrep
ou terminal grep
?
Vim enregistre les fichiers d'échange dans le même répertoire que le fichier que vous éditez par défaut. Vous devriez regarder là-bas.
Si vous l'avez changé dans votre .vimrc
(ou vous avez téléchargé quelqu'un d'autre), vous devriez vérifier à nouveau si elles sont enregistrées ailleurs. L'option irait quelque chose comme set dir=~/.vim/swap
.
Une fois que vous avez déterminé où les fichiers d'échange sont susceptibles d'être trouvés, nous devrions nous occuper de les récupérer. Sur un système * nix, ce sont des fichiers cachés (préfixés avec un .
), et sur les systèmes DOS (Windows), il peut être précédé du signe = (mais probablement pas caché).
Ainsi, sur un système * unix, le fichier que vous recherchez ressemblera à quelque chose comme: myfile.swX
, où myfile
est le nom du fichier que vous avez perdu, et X
peut être n'importe quelle lettre après p
(Vim renomme les fichiers d'échange au lieu de les supprimer).
Pour récupérer votre fichier une fois que vous l'avez trouvé, ouvrez Vim et exécutez :recover myfile.swp
.
Bonne chance et j'espère que vous trouverez vos fichiers!
Vous n'avez pas besoin
grep
pour cela, car les fichiers d'échange Vim peuvent déjà être identifiés par son extension de fichier . Lancer une recherche avecfind
depuis le répertoire de base contenant tous vos fichiers Vim ouverts ou le répertoire que vous avez configuré en tant que:set directory=...
:PS: comme
:vimgrep
ouvre les fichiers dans Vim lui-même, il ne pourra probablement pas gérer ses propres fichiers d'échange.la source