How to make M-x suggest vanilla keybinds with evil mode disabled?

I’m a new to Emacs with no Vim experience. Most of the novice resources I’m working through, including “Mastering Emacs”, assume vanilla Emacs. The biggest source of confusion are the evil- and doom- specific keybinds, so I’m trying to temporarily ignore them while I figure out basic Emacs. Apparently you can do that by toggling evil mode with C-z, but M-x still suggests Doom-specific keybinds. For example, M-x find-file suggests (M-SPC .), which works, but I would like to see (C-x C-f).

Is there any way to do that without risking potential conflict with current or future doom-specific configuration? A solution would ideally retain the ability to switch between vanilla and doom on the fly, without having to restart Emacs.

Hi, you can disable Vim keybindings altogether, if you prefer. If I remember correctly you just have to configure your init.el as follows:

;;; in $DOOMDIR/init.el
:editor
  ;; (evil +everywhere)
  ...

then close Doom, run doom sync and restart Doom.

I’ve never used evil-mode so I can’t say if you can switch between keybindings.

Note: Since Doom also has custom non-Vim keybindings, when you run M-x find-file you will see C-c f f suggested instead of C-x C-f but both will work.

A few tips I find useful when learning more about my Emacs:

  • C-h f: shows documentation for a function
  • C-h o: shows documentation for a object (could be a variable or a function)
  • C-h v: shows documentation for a variable
  • C-h k: prompt to insert a key combination (example C-c f f), returns the function is bound to (if any)

Happy hacking!

I’m aware of the possibility of disabling evil-mode entirely by uninstalling, but this would remove my ability to switch it on on-the-fly with C-z. I want to have access to Doom keybindings for learning them gradually, and entirely removing makes that impossible. Ideally I would be able to make C-z do everything it does, plus switch the suggestions by M-x from doom to vanilla and back. I basically just want to have something close enough to a vanilla Emacs experience to be able to follow basic Emacs and org-mode tutorials without constantly switching to the Doom documentation whenever there’s a conflict between what the literature I’m reading assumes and what Doom does.

I initially considered figuring out the relevant lisp code called by M-x when it makes the suggestions and modifying it directly, but I don’t know how well this would jam with future updates by Doom or base Emacs.