emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Common Lisp indentation bug fix/new feature


From: Nikodemus Siivola
Subject: Re: Common Lisp indentation bug fix/new feature
Date: Sat, 31 Mar 2012 13:21:09 +0300

On 22 November 2011 20:09, Lars Magne Ingebrigtsen <address@hidden> wrote:

> I don't know from SMIE, but I was told by my cow-orkers today that SLIME
> has its own version of cl-indent.el that does LOOP indentation
> properly.  (Allegedly the only difference between the version in SLIME
> and Emacs is the LOOP handling.)

Missed this when it came up, but FWIW, plenty more differences have
crept in since then as I realized that cl-indent.el in Emacs was
sitting still and I stopped worried about staying in synch.

Partial list:

* Test suite!

* Support for named indentation styles.

* Better DEFGENERIC and DEFMETHOD indentation.

* Better lambda-list indentation.

* LOOP indentation, as mentioned.

* Aligning keywords in calls.

* Better handling of comments. There is still plenty of work to be
done here, though. Comment indentation remains my biggest irritant,
but at least we now get

        (foo ;; Deal with bar
             (bar)
             ;; Deal with quux
             (quux))

instead of

        (foo ;; Deal with bar
         (bar)
         ;; Deal with quux
         (quux))

* CL feature expression handling. It's not perfect, but a damn sight
better than nothing.

* Better DEFCLASS and DEFINE-CONDITION superclass list indentation.

* Fixed handling of incomplete destructuring indentation specs.

* Don't consider DEFAULT, DEFINER and DEFINITION to be defun-like.

* Indent boa-constructor lambda-lists properly.

* Fix handling of , and ,@ at the start of the indentation.

* Indirect indentation specs. (late bound)

* Fallback method for trailing expressions on prev line: Emacs'
calculate-lisp-indent doesn't indent

        (foo (or x
                 y) t
             z)

right, but would align Z with Y.

* Support for IF*.

Cheers,

 -- nikodemus



reply via email to

[Prev in Thread] Current Thread [Next in Thread]