[slime-devel] Indenting macro bodies

Helmut Eller e9626484 at stud3.tuwien.ac.at
Wed Oct 6 09:04:21 UTC 2004


Arthur Lemmens <alemmens at xs4all.nl> writes:

> Is there some way to get the indentation I want? It would be even
> better if this would also work for macros that weren't defined by
> me but that I just loaded into the system.
>
> A better indentation for the bodies of flet and labels-functions
> would also be nice, by the way.

SLIME assumes that you use common-lisp-indent-function and not the
default indent-function.  The default indent-function is for Emacs
Lisp. Try to add something like

  (make-variable-buffer-local 'lisp-indent-function)
  (setq lisp-indent-function 'common-lisp-indent-function) 

to your lisp-mode-hook. This should give you automatic indentation for
macros with &body args and also better indentation for flet and
labels.

SLIME does by default nothing special for macros starting with "with-"
of "def" because doing so messes up the indentation of defmethod in
some implementations.  You can change the default by setting
slime-conservative-indentation.

See also the "Semantic indentation" section in the manual.

Helmut.





More information about the slime-devel mailing list