[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#32142: WG: 26.1; Problems with flyspell-region
From: |
Eli Zaretskii |
Subject: |
bug#32142: WG: 26.1; Problems with flyspell-region |
Date: |
Fri, 13 Jul 2018 22:43:48 +0300 |
> Date: Fri, 13 Jul 2018 15:11:13 +0000 (UTC)
> From: "R. Diez" <rdiezmail-emacs@yahoo.de>
>
>
> I mentioned some problems with flyspell-region on the help-gnu-emacs mailing
> list here:
>
> https://lists.gnu.org/archive/html/help-gnu-emacs/2018-07/msg00100.html
And I replied to some of them.
> Issue 1) The spell check is performed just once, and is not updated as I type
> inside that region. This is what I wrote on the mailing list:
>
>
> "If I mark a region (click on the beginning, hold shift, move to the end),
> and then run flyspell-region, the region gets spell-checked, and all the
> dictionary misses are underlined in red, as expected. But then, if I fix the
> words, the spelling marking (the red underlining) is not removed. It looks
> like Flyspell is not 'live' anymore within that region. The "overlay" is left
> behind as static font faces."
You need to turn on flyspell-mode if you want the misspelled words to
be unhighlighted when you fix them.
> I do not want to activate Flyspell for the whole buffer, because that would
> lead to too much red underlining.
>
> If I just wanted a single-shot, I would use ispell-region instead.
We don't have a spell-checking feature that watches correction of
misspelled words without turning on flyspell-mode. You could manually
turn on flyspell-mode when you correct the misspelled words, then turn
it back off when you are done with correcting and want to continue to
type new text. And yes, ispell-region is better suited to your
workflow, if I understand it correctly.
> Issue 2) There is no easy way to remove the red underlining (overlays) left
> behind by flyspell-region.
See above. You can also toggle flyspell-mode.
> Issue 3) Disabling flyspell-persistent-highlight renders flyspell-region
> useless.
>
> Contrary to some of the answers in the mailing list, that combination does
> not work at all. This is what I am seeing:
>
> "What I mean is that, if you turn flyspell-persistent-highlight off, then
> flyspell-region does nothing other than consume CPU cycles. The red
> underlining for dictionary misses does not show up at all."
That description is inaccurate. The misspelled words _are_ highlighted,
but then the highlight is removed when cursor moves to the next word,
per the intended effect of flyspell-persistent-highlight being nil.
> Again, I do not want to turn on Flyspell for the whole buffer. If
> flyspell-region is supposed to work only when the Flyspell Mode is active, it
> should check, and error if it is not active. But that kind of defeats the
> purpose of having a flyspell-region.
The command flyspell-region is part of Flyspell mode, and is designed
to work in a buffer where flyspell-mode is turned on. Its intended
use is to spell-check a region that you didn't type, as if you did
type it. If you want to spell-check a region without turning on
flyspell-mode, I suggest to use ispell-region instead.