Where does VIM (gvim/macvim) keep swap files for unsaved/unnamed buffers? (If it does so at all).
Background:
Throughout a semi intense seminar I was taking notes in an unnamed/unsaved MacVim buffer when the MacBook ran out of juice and powered down out of nowhere (It did not sleep/hibernate as it usually would).
Question:
Would anyone know if there is any chance that the unsaved work may have been saved to a swap (.swp) file or the like, that could be recovered?
System details:
In particular this happened using MacVim on a Mac OS X 10.5.8 (But possible recovery hints for other versions are of interest too). I have not restarted MacVim yet in case doing so will initiate a cleanup process.
Best Answer
Start up vim and try:
:recover <filename>
If the file never had a name, then simply:
:recover
That's your best bet. For more about swap files and recovery, see:
:help usr_11
About the swap files, typically they're saved in the same directory as the file being edited, but with a . added the beginning to make it hidden and .swp at the end, but it's possible to move them elsewhere by something like:
:set directory=~/vimswap
or similar.
See:
:help swap
For all the details.
A vim swap file is not the same as the edited buffer, however, so be sure to read up there on what can be done for recovery.
EDIT: comments answering the question:
[…] It seems to look in your current working directory, ~/tmp, /var/tmp and /tmp for swap files and in my case I always have a current working directory set and that's where it got saved. – dsclementsen Oct 5 '10 at 1:42
also, be sure to check out the vim -r command line arg. This will print out all the swap files found and where they are. In addtion it will have a lot of extra information such as date/modified/username/etc... – Neg_EV Oct 5 '10 at 13:49