GNU bug report logs - #22560
forward-word etc should be interactive-only

Previous Next

Package: emacs;

Reported by: Glenn Morris <rgm <at> gnu.org>

Date: Thu, 4 Feb 2016 21:03:01 UTC

Severity: normal

Found in version 25.0.90

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#22560: closed (forward-word etc should be interactive-only)
Date: Fri, 05 Feb 2016 22:16:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sat, 06 Feb 2016 00:15:15 +0200
with message-id <83mvreu7m4.fsf <at> gnu.org>
and subject line Re: bug#22560: forward-word etc should be interactive-only
has caused the debbugs.gnu.org bug report #22560,
regarding forward-word etc should be interactive-only
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
22560: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22560
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Glenn Morris <rgm <at> gnu.org>
To: submit <at> debbugs.gnu.org
Subject: forward-word etc should be interactive-only
Date: Thu, 04 Feb 2016 16:02:10 -0500
Package: emacs
Version: 25.0.90

The new implementation of subword-mode means that forward-word etc need
to be marked as interactive-only, all existing uses of such functions
need to be reviewed, and the issue needs to be mentioned in NEWS.

See bug#17558, where this was all pointed out.


[Message part 3 (message/rfc822, inline)]
From: Eli Zaretskii <eliz <at> gnu.org>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 22560-done <at> debbugs.gnu.org
Subject: Re: bug#22560: forward-word etc should be interactive-only
Date: Sat, 06 Feb 2016 00:15:15 +0200
> From: Glenn Morris <rgm <at> gnu.org>
> Date: Thu, 04 Feb 2016 16:02:10 -0500
> 
> The new implementation of subword-mode means that forward-word etc need
> to be marked as interactive-only, all existing uses of such functions
> need to be reviewed, and the issue needs to be mentioned in NEWS.

The documentation is now fixed, including NEWS.  There are 2 new
functions, forward-word-strictly and backward-word-strictly, that move
by words using only the syntax table and disregarding
find-word-boundary-function-table.  I've reviewed all the users of
forward-word and backward-word, and made those of them which IMO
should not heed to the likes of subword-mode (there were quite a few)
use these new functions.

I didn't mark forward-word and backward-word interactive-only, as I
don't think this is needed, or even TRT, since the sub-word feature
explicitly wants to be honored in many word-related commands.

I therefore consider this bug "done".

As an aside, I don't understand how could we admit such pervasive
changes into our codebase without proper documentation and without
carefully considering its non-trivial implications.

I also think that the implementation of sub-word mode, which uses
find-word-boundary-function-table, is a kludge, and shouldn't have
been accepted in its present form.  find-word-boundary-function-table
is a char-table, which should have made it crystal clear that
(ab)using it to have the same function called for _any_ character is
against the spirit of char-tables.  This char-table was introduced for
script-specific word motion.  Patches to fix this aspect of sub-word
mode will be very welcome (on master).

But all this is a ship that sailed long ago, sadly, so all we can do
is lick our wounds and hope not to make such mistakes in the future.

Thanks.


This bug report was last modified 9 years and 184 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.