Mercurial > emacs
changeset 92083:5c3cc900f8ff
(copyright-update-year): Fix subexpression numbering for the case when
years are split over lines, and for the replace case.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Fri, 22 Feb 2008 03:52:44 +0000 |
parents | b1ab51096088 |
children | 0521c6a7dca0 |
files | lisp/emacs-lisp/copyright.el |
diffstat | 1 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/copyright.el Fri Feb 22 03:50:20 2008 +0000 +++ b/lisp/emacs-lisp/copyright.el Fri Feb 22 03:52:44 2008 +0000 @@ -94,6 +94,8 @@ (defun copyright-update-year (replace noquery) (when (condition-case err + ;; (1) Need the extra \\( \\) around copyright-regexp because we + ;; goto (match-end 1) below. See note (2) below. (re-search-forward (concat "\\(" copyright-regexp "\\)\\([ \t]*\n\\)?.*\\(?:" copyright-names-regexp "\\)") @@ -104,7 +106,7 @@ ;; such an error is very inconvenient for the user. (error (message "Can't update copyright: %s" err) nil)) (goto-char (match-end 1)) - ;; If the years are continued onto multiple lined + ;; If the years are continued onto multiple lines ;; that are marked as comments, skip to the end of the years anyway. (while (save-excursion (and (eq (following-char) ?,) @@ -119,7 +121,9 @@ (looking-at copyright-years-regexp)))) (forward-line 1) (re-search-forward comment-start-skip) - (re-search-forward copyright-years-regexp)) + ;; (2) Need the extra \\( \\) so that the years are subexp 3, as + ;; they are at note (1) above. + (re-search-forward (format "\\(%s\\)" copyright-years-regexp))) ;; Note that `current-time-string' isn't locale-sensitive. (setq copyright-current-year (substring (current-time-string) -4)) @@ -132,7 +136,7 @@ (concat "Add " copyright-current-year " to copyright? ")))) (if replace - (replace-match copyright-current-year t t nil 2) + (replace-match copyright-current-year t t nil 3) (let ((size (save-excursion (skip-chars-backward "0-9")))) (if (and (eq (% (- (string-to-number copyright-current-year) (string-to-number (buffer-substring