[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#4612: 23.1; checkdoc insert ";;; Code" before autoload cookie
From: |
Kevin Ryde |
Subject: |
bug#4612: 23.1; checkdoc insert ";;; Code" before autoload cookie |
Date: |
Fri, 02 Oct 2009 10:10:04 +1000 |
User-agent: |
Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) |
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@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
Description: application/emacs-lisp
--- 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:\""
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
- bug#4612: 23.1; checkdoc insert ";;; Code" before autoload cookie,
Kevin Ryde <=