GNU bug report logs - #28085
24.5; Commentary section is not displayed correctly

Previous Next

Package: emacs;

Reported by: Takushi Usami <takushi1969 <at> gmail.com>

Date: Mon, 14 Aug 2017 15:38:02 UTC

Severity: normal

Tags: fixed, patch

Found in version 24.5

Fixed in version 28.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 28085 in the body.
You can then email your comments to 28085 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#28085; Package emacs. (Mon, 14 Aug 2017 15:38:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Takushi Usami <takushi1969 <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 14 Aug 2017 15:38:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Takushi Usami <takushi1969 <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.5; Commentary section is not displayed correctly
Date: Mon, 14 Aug 2017 15:55:01 +0900 (JST)
[Message part 1 (text/plain, inline)]
Hello, gurus.

I noticed that package description accompanied with comment characters,
if package is not a type of built-in and consists of only one flie.
Although Emacs Lisp Reference Manual says:

  39.2 Simple Packages
    ...
    If the file has a ‘;;; Commentary:’ section, this section is used as
    the long description.  (When displaying the description, Emacs omits the
    ‘;;; Commentary:’ line, as well as the leading comment characters in the
    commentary itself.)

I studied this issue, and maybe found how to fix it.  So I attached a
patch and a changelog.


HOW TO REPRODUCE THE PROBLEM
============================
1) Make a single package like an attached file:printHello.el
2) Run emacs
3) On emacs, load a library:package-x by typing 'M-x load-library',
   then 'package-x'
4) On emacs, open a single package by typing 'C-x C-f', and specify
   'printHello.el'
   After the content of printHello.el is displayed as curret buffer,
   typing 'M-x package-upload-buffer' and specify an arbitrary
   directory to store a formatted package.

I expect the content of a file for package
description:printHello-readme.txt is:

    This is a simple package for learning how to package a single elisp file.
    If you would like to know more about packaging elisp, read followings.
    
    - https://www.gnu.org/software/emacs/manual/html_node/elisp/Packaging.html
    - https://www.emacswiki.org/emacs/MakingPackages

But, in practice it is:

    ;;; Commentary:

    ;; This is a simple package for learning how to package a single elisp file.
    ;; If you would like to know more about packaging elisp, read followings.
    ;;
    ;; - https://www.gnu.org/software/emacs/manual/html_node/elisp/Packaging.html
    ;; - https://www.emacswiki.org/emacs/MakingPackages


INITIAL STUDY FOR THIS PROBLEM
==============================

THis problems occuers under following condition:
- A type of package is not built-in. and,
- Package consists of only 1 file.

So, I checked the package.el and package-x.el in lisp/emacs-lisp.
Eventually, I noticed that the functinon:describe-package-1 defined in
package.el removes leading comment characters in commentary section by
the following code:

	  (save-excursion
	    (goto-char opoint)
	    (when (re-search-forward "^;;; Commentary:\n" nil t)
	      (replace-match ""))
	    (while (re-search-forward "^\\(;+ ?\\)" nil t)
	      (replace-match ""))))

Although the function:package-upload-buffer-internal defined in
package-x.el, which generates a file for package description,  does
not have such code.  So, I will add code look like the above to the
function:package-upload-buffer-internal.

REPORT GENERATED BY REPORT-EMACS-BUG
====================================



In GNU Emacs 24.5.1 (i686-pc-linux-gnu, GTK+ Version 3.18.9)
 of 2016-04-18 on lgw01-36, modified by Debian
Windowing system distributor `The X.Org Foundation', version 11.0.11903000
System Description:	Ubuntu 16.04.3 LTS

Configured using:
 `configure --build i686-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.5/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.5/site-lisp:/usr/share/emacs/site-lisp
 --build i686-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
 --libexecdir=/usr/lib --localstatedir=/var/lib
 --infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.5/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.5/site-lisp:/usr/share/emacs/site-lisp
 --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars
 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat
 -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time
 -D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro''

Important settings:
  value of $LANG: ja_JP.UTF-8
  value of $XMODIFIERS: @im=fcitx
  locale-coding-system: utf-8-unix

Major mode: Info

Minor modes in effect:
  diff-auto-refine-mode: t
  helm-mode: t
  shell-dirtrack-mode: t
  async-bytecomp-package-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Quit
Saving file /tmp/ChangeLog...
Wrote /tmp/ChangeLog
You can run the command `info' with C-h i
user-error: Node has no Up
Template key: 
user-error: Abort
C-c C-c is undefined
Quit
Making completion list...

Load-path shadows:
/usr/share/emacs/24.5/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup
/home/taku/.emacs.d/elpa/flim-20161210.1728/hex-util hides /usr/share/emacs/24.5/lisp/hex-util
/home/taku/.emacs.d/elpa/flim-20161210.1728/md4 hides /usr/share/emacs/24.5/lisp/md4
/home/taku/.emacs.d/elpa/org-20170807/org-bibtex hides /usr/share/emacs/24.5/lisp/org/org-bibtex
/home/taku/.emacs.d/elpa/org-20170807/ob-perl hides /usr/share/emacs/24.5/lisp/org/ob-perl
/home/taku/.emacs.d/elpa/org-20170807/ob-keys hides /usr/share/emacs/24.5/lisp/org/ob-keys
/home/taku/.emacs.d/elpa/org-20170807/ob-C hides /usr/share/emacs/24.5/lisp/org/ob-C
/home/taku/.emacs.d/elpa/org-20170807/ob-gnuplot hides /usr/share/emacs/24.5/lisp/org/ob-gnuplot
/home/taku/.emacs.d/elpa/org-20170807/ob hides /usr/share/emacs/24.5/lisp/org/ob
/home/taku/.emacs.d/elpa/org-20170807/org-table hides /usr/share/emacs/24.5/lisp/org/org-table
/home/taku/.emacs.d/elpa/org-20170807/org-indent hides /usr/share/emacs/24.5/lisp/org/org-indent
/home/taku/.emacs.d/elpa/org-20170807/ob-scala hides /usr/share/emacs/24.5/lisp/org/ob-scala
/home/taku/.emacs.d/elpa/org-20170807/ob-fortran hides /usr/share/emacs/24.5/lisp/org/ob-fortran
/home/taku/.emacs.d/elpa/org-20170807/ob-ocaml hides /usr/share/emacs/24.5/lisp/org/ob-ocaml
/home/taku/.emacs.d/elpa/org-20170807/org-feed hides /usr/share/emacs/24.5/lisp/org/org-feed
/home/taku/.emacs.d/elpa/org-20170807/ob-scheme hides /usr/share/emacs/24.5/lisp/org/ob-scheme
/home/taku/.emacs.d/elpa/org-20170807/org-faces hides /usr/share/emacs/24.5/lisp/org/org-faces
/home/taku/.emacs.d/elpa/org-20170807/org-mouse hides /usr/share/emacs/24.5/lisp/org/org-mouse
/home/taku/.emacs.d/elpa/org-20170807/ox-beamer hides /usr/share/emacs/24.5/lisp/org/ox-beamer
/home/taku/.emacs.d/elpa/org-20170807/ox-odt hides /usr/share/emacs/24.5/lisp/org/ox-odt
/home/taku/.emacs.d/elpa/org-20170807/ob-awk hides /usr/share/emacs/24.5/lisp/org/ob-awk
/home/taku/.emacs.d/elpa/org-20170807/ob-R hides /usr/share/emacs/24.5/lisp/org/ob-R
/home/taku/.emacs.d/elpa/org-20170807/org-macs hides /usr/share/emacs/24.5/lisp/org/org-macs
/home/taku/.emacs.d/elpa/org-20170807/ob-makefile hides /usr/share/emacs/24.5/lisp/org/ob-makefile
/home/taku/.emacs.d/elpa/org-20170807/org-info hides /usr/share/emacs/24.5/lisp/org/org-info
/home/taku/.emacs.d/elpa/org-20170807/org-entities hides /usr/share/emacs/24.5/lisp/org/org-entities
/home/taku/.emacs.d/elpa/org-20170807/ox hides /usr/share/emacs/24.5/lisp/org/ox
/home/taku/.emacs.d/elpa/org-20170807/ob-exp hides /usr/share/emacs/24.5/lisp/org/ob-exp
/home/taku/.emacs.d/elpa/org-20170807/org-agenda hides /usr/share/emacs/24.5/lisp/org/org-agenda
/home/taku/.emacs.d/elpa/org-20170807/ob-sqlite hides /usr/share/emacs/24.5/lisp/org/ob-sqlite
/home/taku/.emacs.d/elpa/org-20170807/ob-calc hides /usr/share/emacs/24.5/lisp/org/ob-calc
/home/taku/.emacs.d/elpa/org-20170807/org-rmail hides /usr/share/emacs/24.5/lisp/org/org-rmail
/home/taku/.emacs.d/elpa/org-20170807/ob-screen hides /usr/share/emacs/24.5/lisp/org/ob-screen
/home/taku/.emacs.d/elpa/org-20170807/ob-io hides /usr/share/emacs/24.5/lisp/org/ob-io
/home/taku/.emacs.d/elpa/org-20170807/ob-ruby hides /usr/share/emacs/24.5/lisp/org/ob-ruby
/home/taku/.emacs.d/elpa/org-20170807/ob-maxima hides /usr/share/emacs/24.5/lisp/org/ob-maxima
/home/taku/.emacs.d/elpa/org-20170807/ob-tangle hides /usr/share/emacs/24.5/lisp/org/ob-tangle
/home/taku/.emacs.d/elpa/org-20170807/org-eshell hides /usr/share/emacs/24.5/lisp/org/org-eshell
/home/taku/.emacs.d/elpa/org-20170807/ob-haskell hides /usr/share/emacs/24.5/lisp/org/ob-haskell
/home/taku/.emacs.d/elpa/org-20170807/ob-ditaa hides /usr/share/emacs/24.5/lisp/org/ob-ditaa
/home/taku/.emacs.d/elpa/org-20170807/ox-icalendar hides /usr/share/emacs/24.5/lisp/org/ox-icalendar
/home/taku/.emacs.d/elpa/org-20170807/ob-mscgen hides /usr/share/emacs/24.5/lisp/org/ob-mscgen
/home/taku/.emacs.d/elpa/org-20170807/org-datetree hides /usr/share/emacs/24.5/lisp/org/org-datetree
/home/taku/.emacs.d/elpa/org-20170807/ob-lilypond hides /usr/share/emacs/24.5/lisp/org/ob-lilypond
/home/taku/.emacs.d/elpa/org-20170807/org-protocol hides /usr/share/emacs/24.5/lisp/org/org-protocol
/home/taku/.emacs.d/elpa/org-20170807/org-habit hides /usr/share/emacs/24.5/lisp/org/org-habit
/home/taku/.emacs.d/elpa/org-20170807/ob-shen hides /usr/share/emacs/24.5/lisp/org/ob-shen
/home/taku/.emacs.d/elpa/org-20170807/org-mobile hides /usr/share/emacs/24.5/lisp/org/org-mobile
/home/taku/.emacs.d/elpa/org-20170807/org-macro hides /usr/share/emacs/24.5/lisp/org/org-macro
/home/taku/.emacs.d/elpa/org-20170807/ob-ledger hides /usr/share/emacs/24.5/lisp/org/ob-ledger
/home/taku/.emacs.d/elpa/org-20170807/ob-ref hides /usr/share/emacs/24.5/lisp/org/ob-ref
/home/taku/.emacs.d/elpa/org-20170807/ob-sql hides /usr/share/emacs/24.5/lisp/org/ob-sql
/home/taku/.emacs.d/elpa/org-20170807/org-compat hides /usr/share/emacs/24.5/lisp/org/org-compat
/home/taku/.emacs.d/elpa/org-20170807/ob-java hides /usr/share/emacs/24.5/lisp/org/ob-java
/home/taku/.emacs.d/elpa/org-20170807/org-element hides /usr/share/emacs/24.5/lisp/org/org-element
/home/taku/.emacs.d/elpa/org-20170807/ox-publish hides /usr/share/emacs/24.5/lisp/org/ox-publish
/home/taku/.emacs.d/elpa/org-20170807/org-archive hides /usr/share/emacs/24.5/lisp/org/org-archive
/home/taku/.emacs.d/elpa/org-20170807/ob-eval hides /usr/share/emacs/24.5/lisp/org/ob-eval
/home/taku/.emacs.d/elpa/org-20170807/org-pcomplete hides /usr/share/emacs/24.5/lisp/org/org-pcomplete
/home/taku/.emacs.d/elpa/org-20170807/ob-plantuml hides /usr/share/emacs/24.5/lisp/org/ob-plantuml
/home/taku/.emacs.d/elpa/org-20170807/ox-md hides /usr/share/emacs/24.5/lisp/org/ox-md
/home/taku/.emacs.d/elpa/org-20170807/org-src hides /usr/share/emacs/24.5/lisp/org/org-src
/home/taku/.emacs.d/elpa/org-20170807/ob-octave hides /usr/share/emacs/24.5/lisp/org/ob-octave
/home/taku/.emacs.d/elpa/org-20170807/ob-comint hides /usr/share/emacs/24.5/lisp/org/ob-comint
/home/taku/.emacs.d/elpa/org-20170807/ob-dot hides /usr/share/emacs/24.5/lisp/org/ob-dot
/home/taku/.emacs.d/elpa/org-20170807/ob-matlab hides /usr/share/emacs/24.5/lisp/org/ob-matlab
/home/taku/.emacs.d/elpa/org-20170807/org-docview hides /usr/share/emacs/24.5/lisp/org/org-docview
/home/taku/.emacs.d/elpa/org-20170807/org-attach hides /usr/share/emacs/24.5/lisp/org/org-attach
/home/taku/.emacs.d/elpa/org-20170807/org-mhe hides /usr/share/emacs/24.5/lisp/org/org-mhe
/home/taku/.emacs.d/elpa/org-20170807/org-irc hides /usr/share/emacs/24.5/lisp/org/org-irc
/home/taku/.emacs.d/elpa/org-20170807/ob-css hides /usr/share/emacs/24.5/lisp/org/ob-css
/home/taku/.emacs.d/elpa/org-20170807/ox-man hides /usr/share/emacs/24.5/lisp/org/ox-man
/home/taku/.emacs.d/elpa/org-20170807/org-id hides /usr/share/emacs/24.5/lisp/org/org-id
/home/taku/.emacs.d/elpa/org-20170807/org-loaddefs hides /usr/share/emacs/24.5/lisp/org/org-loaddefs
/home/taku/.emacs.d/elpa/org-20170807/org hides /usr/share/emacs/24.5/lisp/org/org
/home/taku/.emacs.d/elpa/org-20170807/ob-python hides /usr/share/emacs/24.5/lisp/org/ob-python
/home/taku/.emacs.d/elpa/org-20170807/ob-org hides /usr/share/emacs/24.5/lisp/org/ob-org
/home/taku/.emacs.d/elpa/org-20170807/ox-ascii hides /usr/share/emacs/24.5/lisp/org/ox-ascii
/home/taku/.emacs.d/elpa/org-20170807/ob-sass hides /usr/share/emacs/24.5/lisp/org/ob-sass
/home/taku/.emacs.d/elpa/org-20170807/org-inlinetask hides /usr/share/emacs/24.5/lisp/org/org-inlinetask
/home/taku/.emacs.d/elpa/org-20170807/ob-clojure hides /usr/share/emacs/24.5/lisp/org/ob-clojure
/home/taku/.emacs.d/elpa/org-20170807/ob-emacs-lisp hides /usr/share/emacs/24.5/lisp/org/ob-emacs-lisp
/home/taku/.emacs.d/elpa/org-20170807/ox-latex hides /usr/share/emacs/24.5/lisp/org/ox-latex
/home/taku/.emacs.d/elpa/org-20170807/org-footnote hides /usr/share/emacs/24.5/lisp/org/org-footnote
/home/taku/.emacs.d/elpa/org-20170807/ob-js hides /usr/share/emacs/24.5/lisp/org/ob-js
/home/taku/.emacs.d/elpa/org-20170807/ob-picolisp hides /usr/share/emacs/24.5/lisp/org/ob-picolisp
/home/taku/.emacs.d/elpa/org-20170807/org-gnus hides /usr/share/emacs/24.5/lisp/org/org-gnus
/home/taku/.emacs.d/elpa/org-20170807/org-ctags hides /usr/share/emacs/24.5/lisp/org/org-ctags
/home/taku/.emacs.d/elpa/org-20170807/org-plot hides /usr/share/emacs/24.5/lisp/org/org-plot
/home/taku/.emacs.d/elpa/org-20170807/org-w3m hides /usr/share/emacs/24.5/lisp/org/org-w3m
/home/taku/.emacs.d/elpa/org-20170807/ob-lob hides /usr/share/emacs/24.5/lisp/org/ob-lob
/home/taku/.emacs.d/elpa/org-20170807/ox-texinfo hides /usr/share/emacs/24.5/lisp/org/ox-texinfo
/home/taku/.emacs.d/elpa/org-20170807/ob-latex hides /usr/share/emacs/24.5/lisp/org/ob-latex
/home/taku/.emacs.d/elpa/org-20170807/org-clock hides /usr/share/emacs/24.5/lisp/org/org-clock
/home/taku/.emacs.d/elpa/org-20170807/ob-core hides /usr/share/emacs/24.5/lisp/org/ob-core
/home/taku/.emacs.d/elpa/org-20170807/org-bbdb hides /usr/share/emacs/24.5/lisp/org/org-bbdb
/home/taku/.emacs.d/elpa/org-20170807/ob-lisp hides /usr/share/emacs/24.5/lisp/org/ob-lisp
/home/taku/.emacs.d/elpa/org-20170807/ob-asymptote hides /usr/share/emacs/24.5/lisp/org/ob-asymptote
/home/taku/.emacs.d/elpa/org-20170807/org-capture hides /usr/share/emacs/24.5/lisp/org/org-capture
/home/taku/.emacs.d/elpa/org-20170807/ob-table hides /usr/share/emacs/24.5/lisp/org/ob-table
/home/taku/.emacs.d/elpa/org-20170807/org-timer hides /usr/share/emacs/24.5/lisp/org/org-timer
/home/taku/.emacs.d/elpa/org-20170807/org-crypt hides /usr/share/emacs/24.5/lisp/org/org-crypt
/home/taku/.emacs.d/elpa/org-20170807/ox-html hides /usr/share/emacs/24.5/lisp/org/ox-html
/home/taku/.emacs.d/elpa/org-20170807/org-list hides /usr/share/emacs/24.5/lisp/org/org-list
/home/taku/.emacs.d/elpa/org-20170807/ox-org hides /usr/share/emacs/24.5/lisp/org/ox-org
/home/taku/.emacs.d/elpa/org-20170807/org-colview hides /usr/share/emacs/24.5/lisp/org/org-colview
/home/taku/.emacs.d/elpa/org-20170807/org-install hides /usr/share/emacs/24.5/lisp/org/org-install
/home/taku/.emacs.d/elpa/org-20170807/org-version hides /usr/share/emacs/24.5/lisp/org/org-version
/home/taku/.emacs.d/elpa/soap-client-3.1.3/soap-inspect hides /usr/share/emacs/24.5/lisp/net/soap-inspect
/home/taku/.emacs.d/elpa/flim-20161210.1728/sasl-ntlm hides /usr/share/emacs/24.5/lisp/net/sasl-ntlm
/home/taku/.emacs.d/elpa/flim-20161210.1728/sasl-cram hides /usr/share/emacs/24.5/lisp/net/sasl-cram
/home/taku/.emacs.d/elpa/flim-20161210.1728/ntlm hides /usr/share/emacs/24.5/lisp/net/ntlm
/home/taku/.emacs.d/elpa/soap-client-3.1.3/soap-client hides /usr/share/emacs/24.5/lisp/net/soap-client
/home/taku/.emacs.d/elpa/flim-20161210.1728/hmac-md5 hides /usr/share/emacs/24.5/lisp/net/hmac-md5
/home/taku/.emacs.d/elpa/flim-20161210.1728/sasl-digest hides /usr/share/emacs/24.5/lisp/net/sasl-digest
/home/taku/.emacs.d/elpa/flim-20161210.1728/hmac-def hides /usr/share/emacs/24.5/lisp/net/hmac-def
/home/taku/.emacs.d/elpa/flim-20161210.1728/sasl hides /usr/share/emacs/24.5/lisp/net/sasl
/tmp/package-x hides /usr/share/emacs/24.5/lisp/emacs-lisp/package-x

Features:
(shadow emacsbug sendmail org-capture timezone parse-time
google-translate-default-ui google-translate-core-ui
google-translate-core google-translate-tk json sdicf-client stem sdicf
sdic bug-reference add-log diff-mode mm-archive message rfc822 mml
mml-sec mailabbrev gmm-utils mailheader mm-decode mm-bodies mm-encode
mail-utils gnutls url-http mail-parse rfc2231 rfc2047 rfc2045
ietf-drums url-gw url-cache url-auth url-handlers epg finder-inf
lisp-mnt package-x pcase tramp-cache dabbrev eieio-opt speedbar
sb-image ezimage dframe help-mode helm-elisp helm-eval edebug eldoc
mule-util ido image-file magit-utils crm dash misearch multi-isearch
skk-vars wid-edit qp network-stream starttls tls mew-varsx mew-unix
mew-auth mew-config mew-imap2 mew-imap mew-nntp2 mew-nntp mew-pop
mew-smtp mew-ssl mew-ssh mew-net mew-highlight mew-sort mew-fib
mew-ext mew-refile mew-demo mew-attach mew-draft mew-message
mew-thread mew-virtual mew-summary4 mew-summary3 mew-summary2
mew-summary mew-search mew-pick mew-passwd mew-scan mew-syntax mew-bq
mew-smime mew-pgp mew-header mew-exec mew-mark mew-mime mew-edit
mew-decode mew-encode mew-cache mew-minibuf mew-complete mew-addrbook
mew-local mew-vars3 mew-vars2 mew-vars mew-env mew-lang-jp mew-mule3
mew-mule mew-gemacs mew-key mew-func mew-blvs mew-const mew slime
etags arc-mode archive-mode hyperspec winner org-rmail org-mhe org-irc
org-info org-gnus org-docview doc-view jka-compr image-mode org-bibtex
bibtex org-bbdb org-w3m org-agenda ox-qmd org-eww ox-md ox-odt rng-loc
rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse
nxml-ns nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html table
ox-ascii ox-publish ox org-element avl-tree org org-macro org-footnote
org-pcomplete org-list org-faces org-entities noutline outline
org-version ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table
ob-keys ob-exp ob-comint ob-core ob-eval org-compat org-macs
org-loaddefs find-func cal-menu calendar cal-loaddefs ccc helm-mode
helm-files rx image-dired tramp tramp-compat tramp-loaddefs trampver
shell pcomplete format-spec dired-x dired-aux ffap thingatpt
helm-buffers helm-tags helm-bookmark helm-adaptive helm-info bookmark
pp helm-locate helm-grep helm-regexp helm-external helm-net browse-url
xml url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf url-util url-parse auth-source gnus-util mm-util
mail-prsvr password-cache url-vars mailcap helm-utils compile comint
ansi-color ring helm-help helm-types helm easy-mmode cl-macs gv
helm-source eieio byte-opt bytecomp byte-compile cl-extra cconv
eieio-core helm-multi-match helm-lib dired helm-config helm-easymenu
edmacro kmacro async-bytecomp async cl-loaddefs cl-lib slime-autoloads
info easymenu package epg-config skk-setup skk-autoloads advice
help-fns time-date japan-util tooltip electric uniquify ediff-hook
vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode
register page menu-bar rfn-eshadow timer select scroll-bar mouse
jit-lock font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
minibuffer nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote make-network-process
dbusbind gfilenotify dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)

Memory information:
((conses 8 1186668 162179)
 (symbols 24 52434 2)
 (miscs 20 1327 1392)
 (strings 16 179179 19271)
 (string-bytes 1 4854175)
 (vectors 8 60747)
 (vector-slots 4 1744482 89680)
 (floats 8 309 847)
 (intervals 28 124875 414)
 (buffers 512 84)
 (heap 1024 77363 5818))

Best regards,
 Takushi Usami.
[ChangeLog (text/plain, inline)]
2017-08-14  Takushi Usami  <takushi1969 <at> gmail.com>

	Fix to extract commentary section from public package
	
	* lisp/emacs-lisp/package-x.el (package-upload-buffer-internal):
	Commentary section shuld be displayed as the below, those are
	described at '39.2 Simple Pakcages' in Elisp info
	- no ‘;;; Commentary:’ line,
	- no leading comment characters
	But if a package is not a type of built-in and consists of only 1
	file, the commentary section is displayed with comment charcters.


[package-x.patch (text/x-patch, inline)]
diff -crNad old/emacs/24.5/lisp/emacs-lisp/package-x.el new/emacs/24.5/lisp/emacs-lisp/package-x.el
*** old/emacs/24.5/lisp/emacs-lisp/package-x.el	2017-08-14 14:08:24.623168435 +0900
--- new/emacs/24.5/lisp/emacs-lisp/package-x.el	2017-08-14 14:11:03.011751569 +0900
***************
*** 238,243 ****
--- 238,247 ----
  
  	    ;; If there is a commentary section, write it.
  	    (when commentary
+ 	      (let ((pos 0)
+ 		    (omit-regex "^\\(?:;;;[[:space:]]*Commentary.*?\n\\|;;\\)"))
+ 		(while (setq pos (string-match omit-regex commentary pos))
+ 		  (setq commentary (replace-match "" t t commentary))))
  	      (write-region commentary nil
  	        	    (expand-file-name
  	        	     (concat (symbol-name pkg-name) "-readme.txt")
[printHello.el (text/plain, inline)]
;;; printHello.el --- My first package which echoes "Hello, World" in minibuffer.

;; Author: Takushi Usami <takushi1969 <at> gmail.com>
;; Version: 1.0

;;; Commentary:

;; This is a simple package for learning how to package a single elisp file.
;; If you would like to know more about packaging elisp, read followings.
;;
;; - https://www.gnu.org/software/emacs/manual/html_node/elisp/Packaging.html
;; - https://www.emacswiki.org/emacs/MakingPackages

;;; Code:
;;;###autoload
(defun printHello ()
  "Echo \"Hello, World\" in minibuffer."
  (format "Hello, World"))

;;; printHello.el ends here

Added tag(s) patch. Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Tue, 27 Aug 2019 01:44:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28085; Package emacs. (Mon, 10 Aug 2020 14:55:02 GMT) Full text and rfc822 format available.

Message #10 received at 28085 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Takushi Usami <takushi1969 <at> gmail.com>
Cc: 28085 <at> debbugs.gnu.org
Subject: Re: bug#28085: 24.5; Commentary section is not displayed correctly
Date: Mon, 10 Aug 2020 16:54:01 +0200
Takushi Usami <takushi1969 <at> gmail.com> writes:

>   	    (when commentary
> + 	      (let ((pos 0)
> + 		    (omit-regex "^\\(?:;;;[[:space:]]*Commentary.*?\n\\|;;\\)"))
> + 		(while (setq pos (string-match omit-regex commentary pos))
> + 		  (setq commentary (replace-match "" t t commentary))))

This was fixed in a different way some months back:

commit 963a9ffd66cb29f0370e9a4b854dddda242c54a6
Author:     Bruno Félix Rezende Ribeiro <oitofelix <at> gnu.org>
AuthorDate: Tue Oct 8 04:32:18 2019 -0300
Commit:     Stefan Kangas <stefankangas <at> gmail.com>
CommitDate: Thu Jan 23 22:57:23 2020 +0100

    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.

So I'm closing this bug report.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) fixed. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 10 Aug 2020 14:55:02 GMT) Full text and rfc822 format available.

bug marked as fixed in version 28.1, send any further explanations to 28085 <at> debbugs.gnu.org and Takushi Usami <takushi1969 <at> gmail.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 10 Aug 2020 14:55:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 08 Sep 2020 11:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 201 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.