Subject: bug#3405: Bug#3405: 23.0.91; indentation w/ comma in lisp-mode

From: Glenn Morris <[email-masked]>
Date: Wed, 17 Jun 2009 20:33:56 -0400

Joe Corneli wrote:

> Please run `indent-region' on the following form
> in Lisp mode -- and observe that the nicely-lined-up
> forms in the `:values' field get skewed.
>
>         (insert-records :into [places]
>                         :attributes '(code ref)
>                         :values `(,(first data)
>                                   ,(second data)))

I don't observe any problem with:

emacs -Q -f lisp-mode

in either 22.3 or current CVS trunk.

> In GNU Emacs 23.0.91.1 (i386-apple-darwin8.11.1, GTK+ Version 2.14.7)

> Major mode: Lisp
> Minor modes in effect:
[...]
>   slime-mode: t

However, the use of a 2009-06-17 slime-mode snapshot with:

(require 'slime)
(slime-setup)

introduces a one-character shift in the indenting of the last line.

It seems to be due to the use of common-lisp-indent-function. Minimum
recipe:

emacs -Q --eval "(setq lisp-indent-function 'common-lisp-indent-function)" \
   -f lisp-mode

It seems you can set the user option lisp-backquote-indentation to nil
to recover the original indentation.