Hi all,
I recently did "something" in an emacs
buffer and lost a bunch of text in different places, and I was unable to undo
the deletions. I tried to use ediff
(I guess I should have used ediff-backup
?) to recover the lost text but not being competent I mixed up buffers "A" and "B" and ended up copying the deletions to the backup file and couldn't recover from there … :-).
Now I am curious if there are recent 'best practices' to
- Avoid doing 'something' that causes text to disappear
- Have a more robust, for a beginner like me, set of autosave and associated settings.
I found/checked the following sources:
https://www.gnu.org/software/emacs/manual/html_mono/ediff.html#Major-Entry-Points
https://www.reddit.com/r/emacs/comments/5h7k1r/undo_lost_hours_of_work/
https://www.gnu.org/software/emacs/manual/html_node/elisp/Auto_002dSaving.html
https://www.reddit.com/r/emacs/comments/3sqtig/important_block_of_text_disappeared_from_my_notes/
https://www.gnu.org/software/emacs/manual/html_node/emacs/Version-Control.html
However, regarding the manuals, I think I could benefit from some guidance on how to set up the most robust system (I rather have a lot of littering but with a robust ability to recover files vs a no-littering approach). And regarding users that experienced the same issue, the posts and replies are several years old so maybe obsolete with current emacs version (and package ecosystem).
I am looking for some recommendation to either disabling certain key bindings (e.g., linked to commands that can select/delete a lot of text), or perhaps change certain default settings (e.g., like the one for org-mode that prevents deleting text in folded sections). Or anything that works for you :-).
If the answer is outside of emacs, ie use git with some auto-commit script running in the background, I'd be interested in recommendations as well. I use emacs on my personal MacBook Air and on my company Windows laptop. I don't need to share my files with anyone, I just want to be able to recover from stupid user errors on my side :-).
(I backup to external drives as well, but my scenario is more 'OMG I pressed some key chord when I was doing something else and thought another application was focused but it wasn't. Worst part is I typically don't notice immediately, but only after a while, I may have even been adding a lot of text before realizing I somehow lost a whole bunch of other text somewhere else in a file - I think I read about a setting that asked for confirmation before a large amount of text is killed, but I couldn't find it back. And I also make such mistaken on smaller pieces of text, like a TODO heading in org-mode.)
Thank you for help,
Paul
magit-wip saved me a couple of times. And I'm doing magit-snapshots each time when my project compiled successfully.