Subject: bug#40059: lisp-mode indentation not aligned vertically

From: Spenser Truex <[email-masked]>
Date: Fri, 13 Mar 2020 21:46:48 -0700

This code sample demonstrates what I consider to be a bug in the
lisp-mode indentation.

Here is a very simple example:

(:a :b
 :c
    :d
 :e)

Here it is in an actual use case (defining Common Lisp packages)
(defpackage :example
  (:use :cl)

  ;; Here is the weird part:
  (:export :thing1
   :thing2
           :thing3
    :thing4
           :thing5))

A sane, non-buggy indentation would be this:
(defpackage :example
  (:use :cl)

  ;; These are aligned vertically:
  (:export :thing1
           :thing2
           :thing3
           :thing4
           :thing5))

This seems to be primarily caused by the keyword argument as the first
element of the unquoted list.

This is especially an issue if using aggressive formatting like
aggressive indent mode. <https://github.com/Malabarba/aggressive-indent-mode/issues/122>

-- 
Spenser Truex
spensertruex.com
SFSU Computer Science