A few months ago, I stumbled across elisp-slime-nav and decided to try
it out. For some reason—lost to the mists of time—I didn’t write about
it at then. That’s too bad because it’s a really useful package
that anyone who writes, or even reads, Elisp should be using.
What it does is take one of the navigation functions from the SLIME
package for Common Lisp and port it to work with Emacs Lisp. Typing
Meta+. will
take you to the definition of the symbol at point. The current point
position is pushed on a stack so typing Meta+,
will return you to where you were.
This functionality is really handy when you’re reading some unfamiliar
Elisp and need to quickly check out a definition or follow the flow of
a program. I use it all the time when I’m reading some unfamiliar part
of the Emacs source. In addition, you can bring up a buffer with the
documentation for the symbol of point by typing
Ctrl+c Ctrl+d d or Ctrl+c Ctrl+d Ctrl+d.
I didn’t realize until I started gathering material for this post that
elisp-slime-nav
was written by Steve Purcell. As most of you know,
Purcell is the founder/maintainer of MELPA as well as the author of
many other useful packages. Elisp-slime-nav is one more reason to
grant him Hero of the Emacs Community status.