I'm accustomed to remapping Esc to Tab in Vim. In Spacemacs this can be done with:

(define-key evil-insert-state-map [tab] 'evil-normal-state)
(define-key evil-visual-state-map [tab] 'evil-normal-state)

in dotspacemacs/config in .spacemacs. This leaves me with the option of pressing C-i when Tab is really needed (quite rarely in my case).

However, shells in Spacemacs are also run in vi-mode, and there Tab key is really convenient for completion, obviously.

How can i either

  • Run shells in emacs-mode
  • or disable Tab remapping in shells while retaining it elsewhere?


1 Answer 1


Seems that i simply did not enable Spacemacs's own shell layer. This is what i have now in dotspacemacs-configuration-layers:

(shell :variables
             shell-default-height 30
             shell-default-position 'bottom
             shell-default-shell 'multi-term)

With this configuration, Tab works as Tab, even when though it's remapped to Esc in my configuration as shown in the question. Which seems nice.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.