]> git.eshelyaron.com Git - emacs.git/commitdiff
Make nil value of fill-column obsolete
authorStefan Kangas <stefan@marxist.se>
Fri, 23 Jul 2021 12:57:44 +0000 (14:57 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 23 Jul 2021 12:57:44 +0000 (14:57 +0200)
* lisp/textmodes/fill.el (current-fill-column): Make nil value of
'fill-column' obsolete.  (Bug#22847)
(current-fill-column--has-warned): New variable to track warning.
* lisp/simple.el (do-auto-fill): Remove handling of nil return value
from 'current-fill-column'.
* etc/NEWS: Announce obsoletion of this usage.

etc/NEWS
lisp/simple.el
lisp/textmodes/fill.el

index 4987e5c07d9ca84e067fb2df60fa59ef6b052c3f..29953a8fa26c56ab13d675da27a45dbfd30aa95b 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -118,6 +118,16 @@ avoid security issues when executing untrusted code.  See the manual
 page for 'seccomp' system call, for details about Secure Computing
 filters.
 
+** Setting 'fill-column' to nil is obsolete.
+This undocumented use of 'fill-column' is now obsolete.  If you have
+set this value to nil disable auto filling, instead disable
+'auto-fill-mode' in the relevant mode instead.
+
+For instance, you could add something like the following to your init
+file:
+
+    (add-hook 'foo-mode-hook (lambda () (auto-fill-mode -1))
+
 \f
 * Changes in Emacs 28.1
 
index 1a49fe24252da670d5a790423c41a625967f573c..ee2698dc674600c8093429495b08a6bf882cb0a0 100644 (file)
@@ -8057,7 +8057,7 @@ Returns t if it really did any work."
   (let (fc justify give-up
           (fill-prefix fill-prefix))
     (if (or (not (setq justify (current-justification)))
-           (null (setq fc (current-fill-column)))
+           (setq fc (current-fill-column))
            (and (eq justify 'left)
                 (<= (current-column) fc))
            (and auto-fill-inhibit-regexp
index 3914bdeb83eb04b167692d15371afb2ba51b982a..f394171fb6cd960d34d1cc26506be4a2486fbc9c 100644 (file)
@@ -133,6 +133,8 @@ A nil return value means the function has not determined the fill prefix."
 (defvar fill-indent-according-to-mode nil ;Screws up CC-mode's filling tricks.
   "Whether or not filling should try to use the major mode's indentation.")
 
+(defvar current-fill-column--has-warned nil)
+
 (defun current-fill-column ()
   "Return the fill-column to use for this line.
 The fill-column to use for a buffer is stored in the variable `fill-column',
@@ -158,7 +160,14 @@ number equals or exceeds the local fill-column - right-margin difference."
                             (< col fill-col)))
            (setq here change
                  here-col col))
-         (max here-col fill-col)))))
+         (max here-col fill-col))
+      ;; This warning was added in 28.1.  It should be removed later,
+      ;; and this function changed to never return nil.
+      (unless current-fill-column--has-warned
+        (lwarn '(fill-column) :warning
+               "Setting this variable to nil is obsolete; use `(auto-fill-mode -1)' instead")
+        (setq current-fill-column--has-warned t))
+      most-positive-fixnum)))
 
 (defun canonically-space-region (beg end)
   "Remove extra spaces between words in region.