;;; refill.el --- `auto-fill' by refilling paragraphs on changes
-;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005,
-;; 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 2000-2016 Free Software Foundation, Inc.
;; Author: Dave Love <fx@gnu.org>
;; Maintainer: Miles Bader <miles@gnu.org>
;;; Code:
-(eval-when-compile (require 'cl))
-
-(defgroup refill nil
- "Refilling paragraphs on changes."
- :group 'fill)
+;; Unused.
+;;; (defgroup refill nil
+;;; "Refilling paragraphs on changes."
+;;; :group 'fill)
(defvar refill-ignorable-overlay nil
"Portion of the most recently filled paragraph not needing filling.
"Post-command function to do refilling (conditionally)."
(when refill-doit ; there was a change
;; There's probably scope for more special cases here...
- (case this-command
- (self-insert-command
+ (pcase this-command
+ (`self-insert-command
;; Treat self-insertion commands specially, since they don't
;; always reset `refill-doit' -- for self-insertion commands that
;; *don't* cause a refill, we want to leave it turned on so that
;; newline, covered below).
(refill-fill-paragraph-at refill-doit)
(setq refill-doit nil)))
- ((quoted-insert fill-paragraph fill-region) nil)
- ((newline newline-and-indent open-line indent-new-comment-line
- reindent-then-newline-and-indent)
+ ((or `quoted-insert `fill-paragraph `fill-region) nil)
+ ((or `newline `newline-and-indent `open-line `indent-new-comment-line
+ `reindent-then-newline-and-indent)
;; Don't zap what was just inserted.
(save-excursion
(beginning-of-line) ; for newline-and-indent
(save-restriction
(narrow-to-region (line-beginning-position) (point-max))
(refill-fill-paragraph-at refill-doit))))
- (t
+ (_
(refill-fill-paragraph-at refill-doit)))
(setq refill-doit nil)))
;;;###autoload
(define-minor-mode refill-mode
- "Toggle Refill minor mode.
-With prefix arg, turn Refill mode on if arg is positive, otherwise turn it off.
+ "Toggle automatic refilling (Refill mode).
+With a prefix argument ARG, enable Refill mode if ARG is
+positive, and disable it otherwise. If called from Lisp, enable
+the mode if ARG is omitted or nil.
+
+Refill mode is a buffer-local minor mode. When enabled, the
+current paragraph is refilled as you edit. Self-inserting
+characters only cause refilling if they would cause
+auto-filling.
-When Refill mode is on, the current paragraph will be formatted when
-changes are made within it. Self-inserting characters only cause
-refilling if they would cause auto-filling."
- :group 'refill
+For true \"word wrap\" behavior, use `visual-line-mode' instead."
+ ;; Not global, so no effect.
+;;; :group 'refill
:lighter " Refill"
:keymap '(("\177" . backward-delete-char-untabify))
;; Remove old state if necessary