(move-past-close-and-reindent):

Don't move closeparen back onto the end of a comment.
This commit is contained in:
Richard M. Stallman 1997-09-07 01:12:07 +00:00
parent f656ec48c3
commit adce3b5f3d

View file

@ -256,7 +256,25 @@ before and after, depending on the surrounding characters."
(while (save-excursion ; this is my contribution
(let ((before-paren (point)))
(back-to-indentation)
(= (point) before-paren)))
(and (= (point) before-paren)
(progn
;; Move to end of previous line.
(beginning-of-line)
(forward-char -1)
;; Verify it doesn't end within a string or comment.
(let ((end (point))
state)
(beginning-of-line)
;; Get state at start of line.
(setq state (list 0 nil nil
(null (calculate-lisp-indent))
nil nil nil nil
nil))
;; Parse state across the line to get state at end.
(setq state (parse-partial-sexp (point) end nil nil
state))
;; Check not in string or comment.
(and (not (elt state 3)) (not (elt state 4))))))))
(delete-indentation))
(forward-char 1)
(newline-and-indent))