Vi annuler le file mis à jour?

Je viens de supprimer un tas de text sur un file et l'ai enregistré.

Est-il possible de récupérer l'ancienne version du file?

Je sais que j'aurais dû faire une sauvegarde, juste essayer ma chance.

Si vous utilisez vim , vous pouvez récupérer tout ou partie de votre text supprimé car vim stocke les 9 suppressions les plus récentes dans les registres 1 à 9 qui sont enregistrées dans un file .viminfo dans votre directory personnel lorsque vous quittez vim .

Les registres sauvegardés dans ~/.viminfo sont globaux, pour tous les files qui ont été édités, pas un set par file édité. Donc, si vous avez édité un autre file et supprimé des lignes, tout ou partie de votre text supprimé disparaîtra.

Si vous n'avez pas encore édité et supprimé de nombreuses lignes d'autres files, il y a de fortes chances que certaines de vos lignes supprimées soient toujours là.

Vous pouvez vérifier si votre text figure toujours dans ces registres avec la command :registers in vim .

  1. lancez vim filename (où filename est le nom du file que vous avez accidentellement effacé)

  2. Tapez :registers (ou la forme abrégée, juste :reg ) et appuyez sur Entrée .

  3. Examinez la sortie pour voir si quelque chose qui ressemble à votre text est là.

par exemple sur mon système, je vois quelque chose comme ce qui suit dans vim :

 :reg --- Registers --- "" ^J "0 ^J "1 You can check to see if your text is still in those registers with the :registers command in vim.^J "2 If you haven't edited and deleted lines from other files yet, there's a good chance your deleted lines will still be there.^J^J "3 If you are using vim, you may be able to recover some or all of your deleted text because vim stores the most recent 9 deletion in registers 1 to 9, which are saved to a file called .viminf "4 ^J ... ... ... 

Note: "" est le registre "sans nom" et contient toujours la valeur du plus récent Yank ou delete, et "0 est le registre Yank actuel. post qui le décrit bien.

Il y a aussi l'aide embeddede avec :help registers et, bien sûr, http://www.vim.org/ , http://vim.wikia.com/wiki/Vim_Tips_Wiki et https://vi.stackexchange.com / pour plus d'informations générales sur vim .

  1. Si vous voyez du text supprimé dans un registre, tapez " , suivi du numéro du registre, puis p pour le coller dans le tampon actuel à l'location actuel.

    Par exemple, si je voulais restaurer les registres 1 et 2 ci-dessus, je tape:

    " 1 p " 2 p

    et ces registres seraient collés dans mon tampon d'édition en cours.

NOTE: dès que vous tapez quelque chose, comme " pour commencer à coller un registre, l'affichage des :registers disparaîtra, soit notez les registres que vous voulez restaurer, soit tapez :registers aussi souvent que nécessaire pour vous callbacker .