Another neat thing:
You select some text, either via keyboard or mouse. You realise you’ve missed a bit at the start of your selection.
In vim without having to start over you press o and it moves your cursor the other end of the selection and you can now extend it.
Deselect accidentally and want the selection again? Press gv.
I’m sure these little features are available in other editors but not always or not always by default.
So if you undo something a few steps and try something different but decide you want to go back you can’t... but you can in vim with g+ and g-
If you add the Gundo plugin you can visualise this as a tree of diffs in a side window.
I’m sure that’s been added to IDEs as a plugin but in vim it’s standard.
It also persists undo state to disc if you want so if you return to a file on another day it’s still all there.