Add new function lm-maintainers (bug#48592)
* doc/lispref/tips.texi (Library Headers): Improve wording. * lisp/emacs-lisp/lisp-mnt.el (lm-maintainers): New function. (lm-maintainer): Make obsolete in favor of lm-maintainer. (lm-verify): Use lm-maintainers. (lm-report-bug): Use lm-maintainers.
This commit is contained in:
parent
0e3668b233
commit
3cfc553202
2 changed files with 18 additions and 10 deletions
|
@ -1034,7 +1034,7 @@ the conventional possibilities for @var{header-name}:
|
|||
|
||||
@table @samp
|
||||
@item Author
|
||||
This line states the name and email address of at least the principal
|
||||
This header states the name and email address of at least the principal
|
||||
author of the library. If there are multiple authors, list them on
|
||||
continuation lines led by @code{;;} and a tab or at least two spaces.
|
||||
We recommend including a contact email address, of the form
|
||||
|
@ -1053,8 +1053,8 @@ This header has the same format as the Author header. It lists the
|
|||
person(s) who currently maintain(s) the file (respond to bug reports,
|
||||
etc.).
|
||||
|
||||
If there is no maintainer line, the person(s) in the Author field
|
||||
is/are presumed to be the maintainers. Some files in Emacs use
|
||||
If there is no Maintainer header, the person(s) in the Author header
|
||||
is/are presumed to be the maintainer(s). Some files in Emacs use
|
||||
@samp{emacs-devel@@gnu.org} for the maintainer, which means the author is
|
||||
no longer responsible for the file, and that it is maintained as part
|
||||
of Emacs.
|
||||
|
|
|
@ -378,14 +378,22 @@ the cdr is an email address."
|
|||
(let ((authorlist (lm-header-multiline "author")))
|
||||
(mapcar #'lm-crack-address authorlist))))
|
||||
|
||||
(defun lm-maintainers (&optional file)
|
||||
"Return the maintainer list of file FILE, or current buffer if FILE is nil.
|
||||
If the maintainers are unspecified, then return the authors.
|
||||
Each element of the list is a cons; the car is the full name,
|
||||
the cdr is an email address."
|
||||
(lm-with-file file
|
||||
(mapcar #'lm-crack-address
|
||||
(or (lm-header-multiline "maintainer")
|
||||
(lm-header-multiline "author")))))
|
||||
|
||||
(defun lm-maintainer (&optional file)
|
||||
"Return the maintainer of file FILE, or current buffer if FILE is nil.
|
||||
If the maintainer is unspecified, then return the author.
|
||||
The return value has the form (NAME . ADDRESS)."
|
||||
(lm-with-file file
|
||||
(let ((maint (lm-header "maintainer")))
|
||||
(if maint
|
||||
(lm-crack-address maint)
|
||||
(car (lm-authors))))))
|
||||
(declare (obsolete lm-maintainers "28.1"))
|
||||
(car (lm-maintainers file)))
|
||||
|
||||
(defun lm-creation-date (&optional file)
|
||||
"Return the created date given in file FILE, or current buffer if FILE is nil."
|
||||
|
@ -545,7 +553,7 @@ copyright notice is allowed."
|
|||
"Can't find package name")
|
||||
((not (lm-authors))
|
||||
"`Author:' tag missing")
|
||||
((not (lm-maintainer))
|
||||
((not (lm-maintainers))
|
||||
"`Maintainer:' tag missing")
|
||||
((not (lm-summary))
|
||||
"Can't find the one-line summary description")
|
||||
|
@ -613,7 +621,7 @@ Prompts for bug subject TOPIC. Leaves you in a mail buffer."
|
|||
(interactive "sBug Subject: ")
|
||||
(require 'emacsbug)
|
||||
(let ((package (lm-get-package-name))
|
||||
(addr (lm-maintainer))
|
||||
(addr (car (lm-maintainers)))
|
||||
(version (lm-version)))
|
||||
(compose-mail (if addr
|
||||
(concat (car addr) " <" (cdr addr) ">")
|
||||
|
|
Loading…
Add table
Reference in a new issue