From 7eb67d79ac67a1d6abaec4b797d9587612972751 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Mon, 24 Nov 1997 03:32:20 +0000 Subject: [PATCH] (lisp-mode-auto-fill): New function. (lisp-mode-variables): Bind normal-auto-fill-function. --- lisp/emacs-lisp/lisp-mode.el | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index fa253e0977..f6a09eaba2 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -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 @@ With argument, insert value in current buffer after the defun." (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 "") -- 2.20.1