4 Matching Annotations
  1. Sep 2019
    1. Patches form the basis of any proper undo / redo system. (Snapshots don’t support undo / redo well in multi actor systems; they tend to undo everybody’s changes when going back in time.
  2. Nov 2018
  3. May 2015
    1. Time Travelling Without Worries But here's the best part - knowing the true nature of history, we can combo it with another cool feature of Vim - persistent undo - to be able to travel in time there and back without fear of losing anything! In other words, if you do: mkdir -p ~/.vim/undodir and then add: set undofile set undodir=~/.vim/undodir to your ~/.vimrc, you get a file-backed infinite undo. And even if you undo like a madman and then edit something, you will not lose your way back to where you’ve been. Which is pretty much a developer’s (or anyone’s, really) text-editing nirvana. Enhance you calm and enjoy a bit saner coding.
    1. Save Work On Focus Lost This feature works best in combo with infinite undo. The idea here is that everytime you leave your Vim window, all your open files are automatically saved. I find this to be extremely helpful, for example when I’m working on a laptop and continuously run unit tests in terminal. My laptop is 13'' so I prefer to run Vim full screen and with this feature, I don’t have to explicitly save my source code file; I just cmd+tab to the terminal, Vim saves the file for me and my unit tests watcher re-runs the suite. If you save unwanted changes by accident you can easily remedy that with undo. To turn autosaving on, add: :au FocusLost * silent! wa to your .vimrc. The silent! flag prevents Vim from complaining when you have open unititled buffers (see this article for details).