GNU bug report logs - #38185
isearch-yank-word-or-char grabs periods at ends of words when used on man pages

Previous Next

Package: emacs;

Reported by: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>

Date: Tue, 12 Nov 2019 20:38:02 UTC

Severity: normal

Tags: wontfix

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 38185 in the body.
You can then email your comments to 38185 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#38185; Package emacs. (Tue, 12 Nov 2019 20:38:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 12 Nov 2019 20:38:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
To: bug-gnu-emacs <at> gnu.org
Subject: isearch-yank-word-or-char grabs periods at ends of words when used on
 man pages
Date: Sun, 10 Nov 2019 08:02:46 +0800
When used on man pages, isearch-yank-word-or-char also gets periods at
the ends of words, along with the word. Commas, however, thankfully, are
not gotten.

    C-w runs the command isearch-yank-word-or-char (found in
    overriding-terminal-local-map), which is an interactive compiled Lisp
    function in ‘isearch.el’.

    (isearch-yank-word-or-char)

    Pull next character, subword or word from buffer into search string.
    Subword is used when ‘subword-mode’ is activated.

M-x man cat
Put cursor here:

  blarf.
  ^
Hit C-s C-w

Cursor now here:
  blarf.
        ^
Should be here:
  blarf.
       ^

emacs-version "26.3".




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#38185; Package emacs. (Thu, 14 Nov 2019 05:42:01 GMT) Full text and rfc822 format available.

Message #8 received at 38185 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: 38185 <at> debbugs.gnu.org
Subject: Re: bug#38185: isearch-yank-word-or-char grabs periods at ends of
 words when used on man pages
Date: Thu, 14 Nov 2019 06:41:08 +0100
積丹尼 Dan Jacobson <jidanni <at> jidanni.org> writes:

> When used on man pages, isearch-yank-word-or-char also gets periods at
> the ends of words, along with the word. Commas, however, thankfully, are
> not gotten.
>
>     C-w runs the command isearch-yank-word-or-char (found in
>     overriding-terminal-local-map), which is an interactive compiled Lisp
>     function in ‘isearch.el’.
>
>     (isearch-yank-word-or-char)
>
>     Pull next character, subword or word from buffer into search string.
>     Subword is used when ‘subword-mode’ is activated.

The command calls

(isearch--yank-char-or-syntax '(?w) 'forward-word arg)

so I guess this means that "." has word syntax in Man buffers, but ","
doesn't?

I guess that makes sense -- you can have stuff like "foo.bar" that
should be considered a single "word", but I agree that it doesn't make
much sense to have a terminating "." be part of a word.

I'm not sure how to fix that, though -- switch isearch-yank-word-or-char
to something like ffap instead of using syntax classes?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#38185; Package emacs. (Thu, 14 Nov 2019 05:44:02 GMT) Full text and rfc822 format available.

Message #11 received at 38185 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: 38185 <at> debbugs.gnu.org
Subject: Re: bug#38185: isearch-yank-word-or-char grabs periods at ends of
 words when used on man pages
Date: Thu, 14 Nov 2019 06:43:08 +0100
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> I'm not sure how to fix that, though -- switch isearch-yank-word-or-char
> to something like ffap instead of using syntax classes?

I mean thingatp.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#38185; Package emacs. (Sat, 16 Nov 2019 21:08:03 GMT) Full text and rfc822 format available.

Message #14 received at 38185 <at> debbugs.gnu.org (full text, mbox):

From: Juri Linkov <juri <at> linkov.net>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 38185 <at> debbugs.gnu.org,
 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Subject: Re: bug#38185: isearch-yank-word-or-char grabs periods at ends of
 words when used on man pages
Date: Sat, 16 Nov 2019 22:25:18 +0200
> (isearch--yank-char-or-syntax '(?w) 'forward-word arg)
>
> so I guess this means that "." has word syntax in Man buffers, but ","
> doesn't?
>
> I guess that makes sense -- you can have stuff like "foo.bar" that
> should be considered a single "word", but I agree that it doesn't make
> much sense to have a terminating "." be part of a word.
>
> I'm not sure how to fix that, though -- switch isearch-yank-word-or-char
> to something like ffap instead of using syntax classes?

isearch-yank-word-or-char was intended to yank exactly the same text
as navigated by forward-word.

However, I can't reproduce this issue in Man buffers: forward-word
doesn't consider "." as part of a word.  Ah, this is because I fixed
this long ago in the init file ~/.emacs as:

  ;; Don't use `man-mode-syntax-table' that sets word syntax to `.', `_', `:'.
  (add-hook 'Man-mode-hook
            (lambda ()
              (set-syntax-table text-mode-syntax-table)))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#38185; Package emacs. (Sun, 17 Nov 2019 05:52:01 GMT) Full text and rfc822 format available.

Message #17 received at 38185 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Juri Linkov <juri <at> linkov.net>
Cc: 38185 <at> debbugs.gnu.org,
 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Subject: Re: bug#38185: isearch-yank-word-or-char grabs periods at ends of
 words when used on man pages
Date: Sun, 17 Nov 2019 06:51:12 +0100
Juri Linkov <juri <at> linkov.net> writes:

> isearch-yank-word-or-char was intended to yank exactly the same text
> as navigated by forward-word.

And I guess we don't really want to change the syntax class of "." in
Man buffers, so there isn't really anything to fix here, and I'm closing
this bug report.

> However, I can't reproduce this issue in Man buffers: forward-word
> doesn't consider "." as part of a word.  Ah, this is because I fixed
> this long ago in the init file ~/.emacs as:
>
>   ;; Don't use `man-mode-syntax-table' that sets word syntax to `.', `_', `:'.
>   (add-hook 'Man-mode-hook
>             (lambda ()
>               (set-syntax-table text-mode-syntax-table)))

(And Dan can do this if he wants a more text-mode like behaviour.)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) wontfix. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 17 Nov 2019 05:52:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 38185 <at> debbugs.gnu.org and 積丹尼 Dan Jacobson <jidanni <at> jidanni.org> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 17 Nov 2019 05:52:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 15 Dec 2019 12:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 245 days ago.

Previous Next


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