From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nikodemus Siivola Newsgroups: gmane.emacs.devel Subject: Re: Common Lisp indentation bug fix/new feature Date: Sat, 31 Mar 2012 13:21:09 +0300 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1333189285 23477 80.91.229.3 (31 Mar 2012 10:21:25 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 31 Mar 2012 10:21:25 +0000 (UTC) Cc: Stefan Monnier , emacs-devel@gnu.org To: Lars Magne Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Mar 31 12:21:24 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1SDvQx-0005fF-Tl for ged-emacs-devel@m.gmane.org; Sat, 31 Mar 2012 12:21:24 +0200 Original-Received: from localhost ([::1]:39485 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SDvQx-00066x-2X for ged-emacs-devel@m.gmane.org; Sat, 31 Mar 2012 06:21:23 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:56015) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SDvQq-00066N-NO for emacs-devel@gnu.org; Sat, 31 Mar 2012 06:21:20 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SDvQl-0000T4-UJ for emacs-devel@gnu.org; Sat, 31 Mar 2012 06:21:16 -0400 Original-Received: from mail-ob0-f169.google.com ([209.85.214.169]:37225) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SDvQl-0000So-PC for emacs-devel@gnu.org; Sat, 31 Mar 2012 06:21:11 -0400 Original-Received: by obbta14 with SMTP id ta14so2372335obb.0 for ; Sat, 31 Mar 2012 03:21:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding:x-gm-message-state; bh=Xg9TLQh19KZ57Uczby+RJyuSt4tn8Uw3m5Tic02VR9k=; b=i26pP0wroFeZJ91bI/mVhDX3v5pFXgAnUXC72mOa0K0A32P9ugB0f5GYIDdGw8waJZ 722XzY/JIVf2j2Fh5ZJAUglPObVY/T/jWACE2ZSD+9QkXC1yQ2ce7ixfONsETUmGlt/l 2knwNNGFD4tArEzZsP1OLUFCt5JLUj+A9kaPL3kmKR+V3k4J2sM/a5IDysIgc4/DxJTq 6Wux6DJ9kYFGoLyLsbZyMDQikY1ovIUbgFRpuNuL4GeQ5AMjKGAbLgtCppKN6Tv/89Wy MPxkt5AD7bkd1jUZmxSrqaLcvJteorQuMGbqlUFq3rdpmNKLdNmp0JZyUzpHvKY8mHJi NpEg== Original-Received: by 10.182.136.104 with SMTP id pz8mr2108388obb.3.1333189269017; Sat, 31 Mar 2012 03:21:09 -0700 (PDT) Original-Received: by 10.60.22.197 with HTTP; Sat, 31 Mar 2012 03:21:09 -0700 (PDT) In-Reply-To: X-Gm-Message-State: ALoCoQncGbpvhyuY945WGopA7vkuVF6TncnowcKHnn5gKSnJoVFwnPbNQ7UUPu6Gp3u7saYYC8v1 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.214.169 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:149258 Archived-At: On 22 November 2011 20:09, Lars Magne Ingebrigtsen 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. =C2=A0(Allegedly the only difference between the version in SLI= ME > 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