mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 22:41:06 -08:00
Globally sanitize single-file package long descriptions (Bug#37548)
Consistent with multi-file package descriptions which don’t have commentary sections nor double semicolon prefixes. * lisp/emacs-lisp/lisp-mnt.el (lm-commentary): Remove commentary header, double semicolon prefixes of each line, trailing new-lines and trailing white-space from commentary. * lisp/emacs-lisp/package.el (package--get-description) (describe-package-1): * lisp/finder.el (finder-commentary): * lisp/info.el (Info-finder-find-node): Remove ad-hoc sanitation.
This commit is contained in:
parent
cd2d812ec1
commit
963a9ffd66
4 changed files with 21 additions and 44 deletions
|
|
@ -485,7 +485,18 @@ absent, return nil."
|
|||
(lm-with-file file
|
||||
(let ((start (lm-commentary-start)))
|
||||
(when start
|
||||
(buffer-substring-no-properties start (lm-commentary-end))))))
|
||||
(replace-regexp-in-string ; Get rid of...
|
||||
"[[:blank:]]*$" "" ; trailing white-space
|
||||
(replace-regexp-in-string
|
||||
(format "%s\\|%s\\|%s"
|
||||
;; commentary header
|
||||
(concat "^;;;[[:blank:]]*\\("
|
||||
lm-commentary-header
|
||||
"\\):[[:blank:]\n]*")
|
||||
"^;;[[:blank:]]*" ; double semicolon prefix
|
||||
"[[:blank:]\n]*\\'") ; trailing new-lines
|
||||
"" (buffer-substring-no-properties
|
||||
start (lm-commentary-end))))))))
|
||||
|
||||
(defun lm-homepage (&optional file)
|
||||
"Return the homepage in file FILE, or current buffer if FILE is nil."
|
||||
|
|
|
|||
|
|
@ -2376,18 +2376,9 @@ The description is read from the installed package files."
|
|||
result
|
||||
|
||||
;; Look for Commentary header.
|
||||
(let ((mainsrcfile (expand-file-name (format "%s.el" (package-desc-name desc))
|
||||
srcdir)))
|
||||
(when (file-readable-p mainsrcfile)
|
||||
(with-temp-buffer
|
||||
(insert (or (lm-commentary mainsrcfile) ""))
|
||||
(goto-char (point-min))
|
||||
(when (re-search-forward "^;;; Commentary:\n" nil t)
|
||||
(replace-match ""))
|
||||
(while (re-search-forward "^\\(;+ ?\\)" nil t)
|
||||
(replace-match ""))
|
||||
(buffer-string))))
|
||||
)))
|
||||
(lm-commentary (expand-file-name
|
||||
(format "%s.el" (package-desc-name desc)) srcdir))
|
||||
"")))
|
||||
|
||||
(defun describe-package-1 (pkg)
|
||||
"Insert the package description for PKG.
|
||||
|
|
@ -2582,16 +2573,10 @@ Helper function for `describe-package'."
|
|||
(if built-in
|
||||
;; For built-in packages, get the description from the
|
||||
;; Commentary header.
|
||||
(let ((fn (locate-file (format "%s.el" name) load-path
|
||||
load-file-rep-suffixes))
|
||||
(opoint (point)))
|
||||
(insert (or (lm-commentary fn) ""))
|
||||
(save-excursion
|
||||
(goto-char opoint)
|
||||
(when (re-search-forward "^;;; Commentary:\n" nil t)
|
||||
(replace-match ""))
|
||||
(while (re-search-forward "^\\(;+ ?\\)" nil t)
|
||||
(replace-match ""))))
|
||||
(insert (or (lm-commentary (locate-file (format "%s.el" name)
|
||||
load-path
|
||||
load-file-rep-suffixes))
|
||||
""))
|
||||
|
||||
(if (package-installed-p desc)
|
||||
;; For installed packages, get the description from the
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue