From: Richard M. Stallman Date: Sun, 13 Jan 2002 20:17:46 +0000 (+0000) Subject: (copyright-regexp): Make (C) optional. X-Git-Tag: ttn-vms-21-2-B4~17156 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9c05459cf6465f3b4c3e69cac44156c9297b46c5;p=emacs.git (copyright-regexp): Make (C) optional. (copyright-regexp): Add Latin-9 copyright sign. Match comment delimiters in year lists. (copyright-current-year): Initialize to load-time year. Doc fixes. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 37b1f3f8d67..145c7823917 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,14 @@ +2002-01-13 Richard M. Stallman + + * emacs-lisp/copyright.el (copyright-regexp): Make (C) optional. + +2002-01-13 Dave Love + + * emacs-lisp/copyright.el: Doc fixes. + (copyright-regexp): Add Latin-9 copyright sign. + Match comment delimiters in year lists. + (copyright-current-year): Initialize to load-time year. + 2002-01-13 Andreas Schwab * dired-aux.el (dired-do-shell-command): Doc fix. diff --git a/lisp/emacs-lisp/copyright.el b/lisp/emacs-lisp/copyright.el index 15c39e07b74..93ee030e7bf 100644 --- a/lisp/emacs-lisp/copyright.el +++ b/lisp/emacs-lisp/copyright.el @@ -1,6 +1,6 @@ ;;; copyright.el --- update the copyright notice in current buffer -;; Copyright (C) 1991, 92, 93, 94, 95, 1998 Free Software Foundation, Inc. +;; Copyright (C) 1991, 92, 93, 94, 95, 98, 2001 Free Software Foundation, Inc. ;; Author: Daniel Pfeiffer ;; Keywords: maint, tools @@ -35,17 +35,20 @@ (defcustom copyright-limit 2000 "*Don't try to update copyright beyond this position unless interactive. -`nil' means to search whole buffer." +A value of nil means to search whole buffer." :group 'copyright :type '(choice (integer :tag "Limit") (const :tag "No limit"))) -;; Cleaner to specify Latin-1 coding for this file, and not use both -;; unibyte and multibyte copyright symbol characters? +;; Would it be cleaner to specify Latin-1 coding for this file, +;; and not use both unibyte and multibyte copyright symbol characters? + +;; The character classes include the unibyte (C) sign, +;; the Latin-1 version, and the Latin-9 version. (defcustom copyright-regexp - "\\([\251©]\\|@copyright{}\\|[Cc]opyright\\s *:?\\s *(C)\ -\\|[Cc]opyright\\s *:?\\s *[\251©]\\)\ -\\s *\\([1-9][-0-9, ';\n\t]*[0-9]+\\)" + "\\([\251©Ž©]\\|@copyright{}\\|[Cc]opyright\\s *:?\\s *\\((C)\\)?\ +\\|[Cc]opyright\\s *:?\\s *[\251©Ž©]\\)\ +\\s *\\([1-9]\\([-0-9, ';\n\t]\\|\\s<\\|\\s>\\)*[0-9]+\\)" "*What your copyright notice looks like. The second \\( \\) construct must match the years." :group 'copyright @@ -53,7 +56,7 @@ The second \\( \\) construct must match the years." (defcustom copyright-query 'function - "*If non-`nil', ask user before changing copyright. + "*If non-nil, ask user before changing copyright. When this is `function', only ask when called non-interactively." :group 'copyright :type '(choice (const :tag "Do not ask") @@ -63,29 +66,30 @@ When this is `function', only ask when called non-interactively." ;; when modifying this, also modify the comment generated by autoinsert.el (defconst copyright-current-gpl-version "2" - "String representing the current version of the GPL or `nil'.") + "String representing the current version of the GPL or nil.") (defvar copyright-update t) ;; This is a defvar rather than a defconst, because the year can ;; change during the Emacs session. -(defvar copyright-current-year "2001" +(defvar copyright-current-year (substring (current-time-string) -4) "String representing the current year.") ;;;###autoload (defun copyright-update (&optional arg) - "Update the copyright notice at the beginning of the buffer to indicate -the current year. If optional prefix ARG is given replace the years in the -notice rather than adding the current year after them. If necessary and -`copyright-current-gpl-version' is set, the copying permissions following the -copyright, if any, are updated as well." + "Update copyright notice at beginning of buffer to indicate the current year. +With prefix ARG, replace the years in the notice rather than adding +the current year after them. If necessary, and +`copyright-current-gpl-version' is set, any copying permissions +following the copyright are updated as well." (interactive "*P") (if copyright-update (save-excursion (save-restriction (widen) (goto-char (point-min)) + ;; Note that `current-time-string' isn't locale-sensitive. (setq copyright-current-year (substring (current-time-string) -4)) (if (re-search-forward copyright-regexp copyright-limit t) (if (string= (buffer-substring (- (match-end 2) 2) (match-end 2)) @@ -98,7 +102,7 @@ copyright, if any, are updated as well." (concat "Replace copyright year(s) by " copyright-current-year "? ") (concat "Add " copyright-current-year - " to copyright? ")))) + " to copyright? ")))) (if arg (progn (delete-region (match-beginning 1) (match-end 1)) @@ -122,10 +126,11 @@ copyright, if any, are updated as well." (and copyright-current-gpl-version ;; match the GPL version comment in .el files, including the ;; bilingual Esperanto one in two-column, and in texinfo.tex - (re-search-forward "\\(the Free Software Foundation; either \\|; a\\^u eldono \\([0-9]+\\)a, ? a\\^u (la\\^u via \\)version \\([0-9]+\\), or (at" + (re-search-forward "\\(the Free Software Foundation;\ + either \\|; a\\^u eldono \\([0-9]+\\)a, ? a\\^u (la\\^u via \\)\ +version \\([0-9]+\\), or (at" copyright-limit t) - (not (string= (buffer-substring (match-beginning 3) (match-end 3)) - copyright-current-gpl-version)) + (not (string= (match-string 3) copyright-current-gpl-version)) (or (not copyright-query) (and (eq copyright-query 'function) (eq this-command 'copyright-update))