When using Spacemacs on vim mode, you can toggle between Emacs/Vim modes with Ctrl-Z
. This works per buffer, is there a way to do this globally so when you switch to a mode, every buffer you open/visit after that keeps the mode you just switched to?
2 Answers
I found a workaround using holy-mode
. If it's enabled, you get Emacs mode for every buffer. If it's disabled, you can switch between Vim and Emacs per buffer with C-z
. It can be used globally, disable for Vim mode and enable for Emacs mode.
It can be enabled/disabled with M-x holy-mode
or the keyboard shortcut M-m t E e
.
-
3I never understood why it was called holy mode until I accidentally disabled it, then found this post, turned it back on and said "Thank God" (I know about the Church of Emacs but still... it was different this time)– learnerCommented May 2, 2019 at 18:13
You just need to toggle holy-mode on and off.
If holy-mode is off you can turn it on with SPC t E e
.
If holy-mode is on you can turn it off with M-m t E e
.
It is possible to toggle it on and off with SPC t E e and M-m t E e. When off the vim style is enabled.
Without holy-mode:
Spacemacs behaves like in Vim using Evil mode package to emulate Vim key bindings. This is the default style of Spacemacs
With holy-mode:
Spacemacs behaves like in raw Emacs using the Holy mode which configures Evil to make the emacs state the default state everywhere.
https://github.com/syl20bnr/spacemacs/blob/master/doc/DOCUMENTATION.org#editing-styles