From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#22847: #17062: 24.3 current-fill-column breaks fill-match-adaptive-prefix Date: Fri, 09 Dec 2016 10:08:29 +0200 Message-ID: <831sxhikxu.fsf@gnu.org> References: <56D3F443.9000706@easy-emacs.de> <83si0b8q7t.fsf@gnu.org> <7dvauuyruh.fsf@fencepost.gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1481271052 15251 195.159.176.226 (9 Dec 2016 08:10:52 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 9 Dec 2016 08:10:52 +0000 (UTC) Cc: 22847@debbugs.gnu.org To: Glenn Morris Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Dec 09 09:10:45 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cFGGQ-0001TB-5F for geb-bug-gnu-emacs@m.gmane.org; Fri, 09 Dec 2016 09:10:42 +0100 Original-Received: from localhost ([::1]:45166 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cFGGP-0004Ft-CI for geb-bug-gnu-emacs@m.gmane.org; Fri, 09 Dec 2016 03:10:41 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54758) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cFGEs-0000H7-QR for bug-gnu-emacs@gnu.org; Fri, 09 Dec 2016 03:09:10 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cFGEo-0006xd-QE for bug-gnu-emacs@gnu.org; Fri, 09 Dec 2016 03:09:06 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:48005) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cFGEo-0006xZ-MS for bug-gnu-emacs@gnu.org; Fri, 09 Dec 2016 03:09:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1cFGEo-0006w0-HQ for bug-gnu-emacs@gnu.org; Fri, 09 Dec 2016 03:09:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 09 Dec 2016 08:09:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22847 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 22847-submit@debbugs.gnu.org id=B22847.148127089426582 (code B ref 22847); Fri, 09 Dec 2016 08:09:02 +0000 Original-Received: (at 22847) by debbugs.gnu.org; 9 Dec 2016 08:08:14 +0000 Original-Received: from localhost ([127.0.0.1]:35171 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cFGE2-0006ug-91 for submit@debbugs.gnu.org; Fri, 09 Dec 2016 03:08:14 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:35261) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cFGE1-0006uR-5i for 22847@debbugs.gnu.org; Fri, 09 Dec 2016 03:08:13 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cFGDq-0006m4-99 for 22847@debbugs.gnu.org; Fri, 09 Dec 2016 03:08:08 -0500 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52640) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cFGDq-0006lu-4d for 22847@debbugs.gnu.org; Fri, 09 Dec 2016 03:08:02 -0500 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3349 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1cFGDo-0005R8-J4; Fri, 09 Dec 2016 03:08:01 -0500 In-reply-to: <7dvauuyruh.fsf@fencepost.gnu.org> (message from Glenn Morris on Thu, 08 Dec 2016 17:32:38 -0500) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:126764 Archived-At: > From: Glenn Morris > cc: Eli Zaretskii > Date: Thu, 08 Dec 2016 17:32:38 -0500 > > So this seems like a mess. But a very old one. > fill-column is documented to be an integer, and that is its custom-type. > Nowhere does it say it can be nil, AFAICS. > Many places in Emacs are not prepared for it (or current-fill-column) to > be nil. > > Yet 1e87252 explicitly added a check for a nil fill-column to > current-fill-column. AFAICS, do-auto-fill is the only place in Emacs > that tests for this, and uses it to disable auto-fill. > > The only uses I find for "(setq fill-column nil)" are a few people using > it in their .emacs to disable auto-fill (I guess) in some major mode. > The idiomatic way to do this is just to turn off auto-fill in that mode. > > TLDR: > Let's remove the test for nil fill-column in current-fill-column. I don't understand what you propose to do instead. current-fill-column does arithmetics on fill-column when it's non-nil, so we cannot just remove the test, because the function will then signal an error. I see 3 possible ways to fix these bugs: . Fix the code which is not prepared for fill-column being nil to be prepared. This leaves everyone happy, except, perhaps, the person who would need to fix all those places in Emacs. . Change current-fill-column to return most-positive-fixnum when fill-column is nil. This is an easy way out, but it might slow down do-auto-fill when fill-column is nil. Not sure if we care about that slow down. . Disallow fill-column being nil and remove the test from current-fill-column without changing anything else, i.e. let it signal an error, perhaps with some text that tells this value is no longer supported. This will break setups of those who use that value to disable auto-fill, something that was available since forever, so I don't think we can do that. Comments?