emacs-diffs
[Top][All Lists]
Advanced

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

emacs-28 d2849cc: Fix 'calculate-lisp-indent' when "[" starts containing


From: Martin Rudalics
Subject: emacs-28 d2849cc: Fix 'calculate-lisp-indent' when "[" starts containing sexp (Bug#51312)
Date: Fri, 22 Oct 2021 04:18:45 -0400 (EDT)

branch: emacs-28
commit d2849cc645f349080fd74ffbe082178bc12cd02b
Author: Martin Rudalics <rudalics@gmx.at>
Commit: Martin Rudalics <rudalics@gmx.at>

    Fix 'calculate-lisp-indent' when "[" starts containing sexp (Bug#51312)
    
    * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent): Handle
    arbitrary paren syntax after skipping whitespace backwards within
    containing sexp (Bug#51312).
---
 lisp/emacs-lisp/lisp-mode.el | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index fc7a736..bb00a97 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -1075,10 +1075,11 @@ is the buffer position of the start of the containing 
expression."
                       ;; Handle prefix characters and whitespace
                       ;; following an open paren.  (Bug#1012)
                        (backward-prefix-chars)
-                       (while (not (or (looking-back "^[ \t]*\\|([ \t]+"
-                                                      
(line-beginning-position))
-                                       (and containing-sexp
-                                            (>= (1+ containing-sexp) 
(point)))))
+                       (while (not (save-excursion
+                                     (skip-chars-backward " \t")
+                                     (or (= (point) (line-beginning-position))
+                                         (and containing-sexp
+                                              (= (point) (1+ 
containing-sexp))))))
                          (forward-sexp -1)
                          (backward-prefix-chars))
                        (setq calculate-lisp-indent-last-sexp (point)))



reply via email to

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