summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/copyright.el
diff options
context:
space:
mode:
authorLute Kamstra <lute@gnu.org>2005-05-19 08:13:31 +0000
committerLute Kamstra <lute@gnu.org>2005-05-19 08:13:31 +0000
commit07b41c42758f74cd1f0737595a73de6af870f823 (patch)
tree5baa8e32734e0252b8f42c0dc5c037c5ee0ceec4 /lisp/emacs-lisp/copyright.el
parent34e99b2e36e39fc5199dba83c87e6cfc10cde23c (diff)
downloademacs-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.el38
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