Arthur Lemmens alemmens@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.