]> code.delx.au - gnu-emacs/commitdiff
(calculate-lisp-indent): Added indentation for the constants of Lisp.
authorEli Zaretskii <eliz@gnu.org>
Sat, 17 Feb 2007 11:35:22 +0000 (11:35 +0000)
committerEli Zaretskii <eliz@gnu.org>
Sat, 17 Feb 2007 11:35:22 +0000 (11:35 +0000)
lisp/ChangeLog
lisp/emacs-lisp/lisp-mode.el

index 832d921c20a71f6a7ac167912617ad603e0bbb7f..234030a9a7b77d40d67457752110735e29d1a7b9 100644 (file)
@@ -1,3 +1,8 @@
+2007-02-17  Alin C. Soare  <alinsoar@voila.fr>  (tiny change)
+
+       * emacs-lisp/lisp-mode.el (calculate-lisp-indent): Added
+       indentation for the constants of Lisp.
+
 2007-02-17  David Hansen  <david.hansen@physik.fu-berlin.de>  (tiny change)
 
        * font-lock.el (font-lock-extend-region-wholelines): Test for EOB
index 8c1cf918b36928eb972591025970ca3a09a5533d..5576a4882b061161ec1efdebba57bc4d4278b1b2 100644 (file)
@@ -909,6 +909,24 @@ is the buffer position of the start of the containing expression."
         (cond ((elt state 3)
                ;; Inside a string, don't change indentation.
               nil)
+              ((save-excursion
+                 ;; test whether current line begins with a constant
+                 (goto-char indent-point)
+                 (skip-chars-forward " \t")
+                 (looking-at ":"))
+               (let ((desired-indent
+                      (save-excursion
+                        (goto-char (1+ containing-sexp))
+                        (parse-partial-sexp (point) calculate-lisp-indent-last-sexp 0 t)
+                        (point)))
+                     (parse-sexp-ignore-comments t))
+                 ;; Align a constant symbol under the last constant symbol
+                 (goto-char calculate-lisp-indent-last-sexp)
+                 (while (> (point) desired-indent)
+                   (if (looking-at ":")
+                       (setq desired-indent (point))
+                     (backward-sexp 1))))
+                 (current-column))
               ((and (integerp lisp-indent-offset) containing-sexp)
                ;; Indent by constant offset
                (goto-char containing-sexp)