changeset 62508:39dc00cd1f8a

(copyright-fix-years): Make sure all years are fixed. Don't insert a space after a dash.
author Lute Kamstra <lute@gnu.org>
date Thu, 19 May 2005 08:13:31 +0000
parents 68429718056c
children d631d0a6ba66
files lisp/emacs-lisp/copyright.el
diffstat 1 files changed, 18 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/copyright.el	Thu May 19 08:06:59 2005 +0000
+++ b/lisp/emacs-lisp/copyright.el	Thu May 19 08:13:31 2005 +0000
@@ -185,25 +185,24 @@
   (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 @@
 	  (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