GNU bug report logs - #4612
23.1; checkdoc insert ";;; Code" before autoload cookie

Previous Next

Package: emacs;

Reported by: Kevin Ryde <user42 <at> zip.com.au>

Date: Fri, 2 Oct 2009 00:15:06 UTC

Severity: minor

Tags: patch

Done: Kevin Ryde <user42 <at> zip.com.au>

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 4612 in the body.
You can then email your comments to 4612 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-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#4612; Package emacs. (Fri, 02 Oct 2009 00:15:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Kevin Ryde <user42 <at> zip.com.au>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Fri, 02 Oct 2009 00:15:07 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Kevin Ryde <user42 <at> zip.com.au>
To: bug-gnu-emacs <at> gnu.org
Subject: 23.1; checkdoc insert ";;; Code" before autoload cookie
Date: Fri, 02 Oct 2009 10:10:04 +1000
[Message part 1 (text/plain, inline)]
On foo.el below M-x checkdoc inserts ";;; Code" as

    ;;;###autoload
    ;;; Code:
    (defun foo ()

where I hoped it would be before the cookie like say

    ;;; Code:

    ;;;###autoload
    (defun foo ()

generate-file-autoloads etc is happy with either, but the latter reads
better for humans.  I struck this in one of my own .el files which had
an autoload cookie on the first func.

Incidentally, I see the `cont' loop puts ";;; Code" after any initial
`require' forms.  Is that actually usual, or usual any more?  I think
I've only ever seen `require's after ";;; Code".


2009-10-01  Kevin Ryde  <user42 <at> zip.com.au>

	* emacs-lisp/checkdoc.el (checkdoc-file-comments-engine): When
	inserting ";;; Code" put it before any ";;;###autoload" cookie on
	the first form.  And insert a blank line after ";;; Code" since
	that's usual style.

[foo.el (application/emacs-lisp, inline)]
[checkdoc.el.code-autoload.diff (text/x-diff, inline)]
--- checkdoc.el.~1.74.~	2009-09-18 08:22:27.000000000 +1000
+++ checkdoc.el	2009-09-25 18:22:29.000000000 +1000
@@ -2304,15 +2304,18 @@
        (or
 	;; * Code section
 	(if (not (lm-code-mark))
-	    (let ((cont t))
+	    (let ((cont t)
+		  pos)
 	      (goto-char (point-min))
-	      (while (and cont (re-search-forward "^(" nil t))
-		(setq cont (looking-at "require\\s-+")))
+	      ;; matching ";;;###" to keep autoload cookie with the form
+	      (while (and cont (re-search-forward "^\\(;;;###.*\n\\)?(" nil t))
+		(setq pos (match-beginning 0)
+		      cont (looking-at "require\\s-+")))
 	      (if (and (not cont)
 		       (checkdoc-y-or-n-p
 			"There is no ;;; Code: marker.  Insert one? "))
-		  (progn (beginning-of-line)
-			 (insert ";;; Code:\n")
+		  (progn (goto-char pos)
+			 (insert ";;; Code:\n\n")
 			 nil)
 		(checkdoc-create-error
 		 "You should have a section marked \";;; Code:\""
[Message part 4 (text/plain, inline)]

In GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.16.5)
 of 2009-09-14 on raven, modified by Debian
configured using `configure  '--build=i486-linux-gnu' '--host=i486-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/emacs23:/etc/emacs:/usr/local/share/emacs/23.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'host_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS=''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_AU
  value of $XMODIFIERS: nil
  locale-coding-system: iso-latin-1-unix
  default-enable-multibyte-characters: t

Added tag(s) patch. Request was from Juanma Barranquero <lekktu <at> gmail.com> to control <at> emacsbugs.donarmstrong.com. (Tue, 06 Oct 2009 00:35:05 GMT) Full text and rfc822 format available.

Severity set to 'minor' from 'normal' Request was from Juanma Barranquero <lekktu <at> gmail.com> to control <at> emacsbugs.donarmstrong.com. (Tue, 06 Oct 2009 00:35:06 GMT) Full text and rfc822 format available.

Reply sent to Kevin Ryde <user42 <at> zip.com.au>:
You have taken responsibility. (Wed, 21 Oct 2009 22:20:17 GMT) Full text and rfc822 format available.

Notification sent to Kevin Ryde <user42 <at> zip.com.au>:
bug acknowledged by developer. (Wed, 21 Oct 2009 22:20:18 GMT) Full text and rfc822 format available.

Message #14 received at 4612-done <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Kevin Ryde <user42 <at> zip.com.au>
To: 4612-done <at> debbugs.gnu.org
Cc: Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#4612: 23.1; checkdoc insert ";;; Code" before autoload cookie
Date: Thu, 22 Oct 2009 09:10:29 +1100
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:
>
> Please install it.

Beaut, done.  I used generate-autoload-cookie too, for gratuitous
generality :-).

I've still got doubts about putting the ";; Code:" after `require's, but
I'll leave that alone failing a reason for or against it being that way.



bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> emacsbugs.donarmstrong.com. (Thu, 19 Nov 2009 15:24:15 GMT) Full text and rfc822 format available.

This bug report was last modified 15 years and 276 days ago.

Previous Next


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