From c56d2269c288cc6baa1926dd9f781f34656cc1cf Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Wed, 30 Jan 2013 15:46:10 -0500 Subject: [PATCH] * lisp/progmodes/make-mode.el (makefile-backslash-region): Don't compute column if we're just deleting the backslashes. (makefile-fill-paragraph): Use eolp. --- lisp/ChangeLog | 6 ++++++ lisp/progmodes/make-mode.el | 41 +++++++++++++++++++---------------------- 2 files changed, 25 insertions(+), 22 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index fb9effbc694..e222e17ed07 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2013-01-30 Stefan Monnier + + * progmodes/make-mode.el (makefile-backslash-region): Don't compute + column if we're just deleting the backslashes. + (makefile-fill-paragraph): Use eolp. + 2013-01-30 Michael Albinus * autorevert.el (auto-revert-use-notify): Fix docstring. diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el index 8ab4c6f95b6..be718135f99 100644 --- a/lisp/progmodes/make-mode.el +++ b/lisp/progmodes/make-mode.el @@ -1213,26 +1213,23 @@ definition and conveniently use this command." (save-excursion (goto-char from) (let ((column makefile-backslash-column) - (endmark (make-marker))) - (move-marker endmark to) + (endmark (copy-marker to))) ;; Compute the smallest column number past the ends of all the lines. - (if makefile-backslash-align - (progn - (if (not delete-flag) - (while (< (point) to) - (end-of-line) - (if (= (preceding-char) ?\\) - (progn (forward-char -1) - (skip-chars-backward " \t"))) - (setq column (max column (1+ (current-column)))) - (forward-line 1))) - ;; Adjust upward to a tab column, if that doesn't push - ;; past the margin. - (if (> (% column tab-width) 0) - (let ((adjusted (* (/ (+ column tab-width -1) tab-width) - tab-width))) - (if (< adjusted (window-width)) - (setq column adjusted)))))) + (when (and makefile-backslash-align (not delete-flag)) + (while (< (point) to) + (end-of-line) + (if (= (preceding-char) ?\\) + (progn (forward-char -1) + (skip-chars-backward " \t"))) + (setq column (max column (1+ (current-column)))) + (forward-line 1)) + ;; Adjust upward to a tab column, if that doesn't push + ;; past the margin. + (if (> (% column tab-width) 0) + (let ((adjusted (* (/ (+ column tab-width -1) tab-width) + tab-width))) + (if (< adjusted (window-width)) + (setq column adjusted))))) ;; Don't modify blank lines at start of region. (goto-char from) (while (and (< (point) endmark) (eolp)) @@ -1296,9 +1293,9 @@ Fill comments, backslashed lines, and variable definitions specially." (while (= (preceding-char) ?\\) (end-of-line 0)) ;; Maybe we hit bobp, in which case we are not at EOL. - (if (eq (point) (line-end-position)) - (forward-char)) - (point))) + (if (eolp) + (1+ (point)) + (point)))) (end (save-excursion (while (= (preceding-char) ?\\) -- 2.11.4.GIT