changeset 105699:bbd67ae03f38

(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. (My Bug#4612.)
author Kevin Ryde <user42@zip.com.au>
date Wed, 21 Oct 2009 22:05:34 +0000
parents a08904175e1a
children 2104d36ad213
files lisp/emacs-lisp/checkdoc.el
diffstat 1 files changed, 14 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/checkdoc.el	Wed Oct 21 21:28:59 2009 +0000
+++ b/lisp/emacs-lisp/checkdoc.el	Wed Oct 21 22:05:34 2009 +0000
@@ -2307,15 +2307,24 @@
        (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-+")))
+	      ;; match ";;;###autoload" cookie to keep it with the form
+	      (require 'autoload)
+	      (while (and cont (re-search-forward
+				(concat "^\\("
+					(regexp-quote generate-autoload-cookie)
+					"\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:\""