Guru mode disables (or warns on) some generic keybindings and suggests the use of the established and more efficient Emacs alternatives instead. Here are a few examples:
- It will teach you to avoid the arrow keys and use keybindings like
C-f
,C-b
, etc. - It will teach you to avoid keybindings using Home, End, etc.
- It will teach you to avoid Delete/Backspace.
You can support my work on guru-mode
and my other Emacs packages via
PayPal,
ko-fi,
Patreon and
GitHub Sponsors.
Just drop guru-mode.el
somewhere in your load-path
. I favour the
folder ~/.emacs.d/vendor
:
(add-to-list 'load-path "~/emacs.d/vendor")
(require 'guru-mode)
If you're an Emacs 24 user or you have a recent version of package.el you can install guru-mode from the MELPA repository.
guru-mode
is naturally part of the
Emacs Prelude. If you're a Prelude
user - guru-mode
is already properly configured and ready for
action.
You can enable guru-mode
globally like this:
(guru-global-mode +1)
Most likely you'd like to enable guru-mode
only in specific modes
(like prog-mode
in Emacs 24):
(add-hook 'prog-mode-hook 'guru-mode)
If you only want to get warnings when you the arrow keys use the following config:
(setq guru-warn-only t)
You can extend the list of keybindings covered by guru-mode
like this:
(add-to-list 'guru-affected-bindings-list '("<C-left>" "M-b" left-word))
The list you're adding is of the format (discouraged keybinding, recommended keybinding, command).
Note: guru-mode
operates only on global keybindings and it will never interfere with
some mode-specific keybindings.
Check out the project's issue list a list of unresolved issues. By the way - feel free to fix any of them and send me a pull request. :-)
Here's a list of all the people who have contributed to the development of guru-mode.
Bug reports and suggestions for improvements are always welcome. GitHub pull requests are even better! :-)
Cheers,
Bozhidar