changeset 20333:3627bd4b83d9

(lisp-mode-auto-fill): New function. (lisp-mode-variables): Bind normal-auto-fill-function.
author Richard M. Stallman <rms@gnu.org>
date Mon, 24 Nov 1997 03:32:20 +0000
parents 52b1ed13e4d2
children 98744f3de8ed
files lisp/emacs-lisp/lisp-mode.el
diffstat 1 files changed, 13 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/lisp-mode.el	Sun Nov 23 02:30:00 1997 +0000
+++ b/lisp/emacs-lisp/lisp-mode.el	Mon Nov 24 03:32:20 1997 +0000
@@ -109,6 +109,8 @@
   ;; because lisp-fill-paragraph should do the job.
   (make-local-variable 'adaptive-fill-mode)
   (setq adaptive-fill-mode nil)
+  (make-local-variable 'normal-auto-fill-function)
+  (setq normal-auto-fill-function 'lisp-mode-auto-fill)
   (make-local-variable 'indent-line-function)
   (setq indent-line-function 'lisp-indent-line)
   (make-local-variable 'indent-region-function)
@@ -362,6 +364,17 @@
       (max (if (bolp) 0 (1+ (current-column)))
 	   comment-column))))
 
+(defun lisp-mode-auto-fill ()
+  (if (> (current-column) (current-fill-column))
+      (if (save-excursion
+	    (nth 4 (parse-partial-sexp (save-excursion
+					 (beginning-of-defun)
+					 (point))
+				       (point))))
+	  (do-auto-fill)
+	(let ((comment-start nil) (comment-start-skip nil))
+	  (do-auto-fill)))))
+
 (defvar lisp-indent-offset nil "")
 (defvar lisp-indent-function 'lisp-indent-function "")