The following snippet will make Evil treat an Emacs *symbol* as a word. (with-eval-after-load 'evil (defalias #'forward-evil-word #'forward-evil-symbol)) This has the advantage that it changes depending on the language: foo-bar is one symbol in `lisp-mode` but two symbols (separated by `-`) in `c-mode`.