diff options
author | Lute Kamstra <lute@gnu.org> | 2005-05-19 08:13:31 +0000 |
---|---|---|
committer | Lute Kamstra <lute@gnu.org> | 2005-05-19 08:13:31 +0000 |
commit | 07b41c42758f74cd1f0737595a73de6af870f823 (patch) | |
tree | 5baa8e32734e0252b8f42c0dc5c037c5ee0ceec4 /lisp/emacs-lisp/copyright.el | |
parent | 34e99b2e36e39fc5199dba83c87e6cfc10cde23c (diff) | |
download | emacs-07b41c42758f74cd1f0737595a73de6af870f823.tar.gz |
(copyright-fix-years): Make sure all years are fixed. Don't insert a
space after a dash.
Diffstat (limited to 'lisp/emacs-lisp/copyright.el')
-rw-r--r-- | lisp/emacs-lisp/copyright.el | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/lisp/emacs-lisp/copyright.el b/lisp/emacs-lisp/copyright.el index 30c76b8769a..c2e394bf15b 100644 --- a/lisp/emacs-lisp/copyright.el +++ b/lisp/emacs-lisp/copyright.el @@ -185,25 +185,24 @@ Uses heuristic: year >= 50 means 19xx, < 50 means 20xx." (widen) (goto-char (point-min)) (if (re-search-forward copyright-regexp (+ (point) copyright-limit) t) - (let ((s (match-beginning 2)) (e (make-marker)) + (let ((s (match-beginning 2)) + (e (copy-marker (1+ (match-end 2)))) + (p (make-marker)) last) - (set-marker e (1+ (match-end 2))) (goto-char s) - ;; Back up one character so that our search can match the first year. - (backward-char 1) - (while (and (< (point) (marker-position e)) - (re-search-forward "\\([^0-9]\\)\\([0-9]+\\)[^0-9]" - (marker-position e) t)) - (let ((p (point)) - (sep (match-string 1)) - (year (string-to-number (match-string 2)))) - (goto-char (1+ (match-beginning 0))) - (unless (= (char-syntax (string-to-char sep)) ?\s) + (while (re-search-forward "[0-9]+" e t) + (set-marker p (point)) + (goto-char (match-beginning 0)) + (let ((sep (char-before)) + (year (string-to-number (match-string 0)))) + (when (and sep + (/= (char-syntax sep) ?\s) + (/= sep ?-)) (insert " ")) - (if (< year 100) - (insert (if (>= year 50) "19" "20"))) - (goto-char p) - (setq last p))) + (when (< year 100) + (insert (if (>= year 50) "19" "20")))) + (goto-char p) + (setq last p)) (when last (goto-char last) ;; Don't mess up whitespace after the years. @@ -211,12 +210,11 @@ Uses heuristic: year >= 50 means 19xx, < 50 means 20xx." (save-restriction (narrow-to-region (point-min) (point)) (let ((fill-prefix " ")) - (fill-region s last))) - ) + (fill-region s last)))) (set-marker e nil) + (set-marker p nil) (copyright-update nil t)) - (message "No copyright message") - (goto-char (point-min)))) + (message "No copyright message"))) ;;;###autoload (define-skeleton copyright |