unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Artem Boldarev <artem.boldarev@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 32280@debbugs.gnu.org
Subject: bug#32280: 26.1; FLYSPELL-BUFFER sometimes misbehaves for some input in a large enough buffer
Date: Sun, 29 Jul 2018 17:09:54 +0300	[thread overview]
Message-ID: <a6727881-fe39-cf2a-fcf7-20722e9960e8@gmail.com> (raw)
In-Reply-To: <29a7677b-47ad-a42b-17af-01ff4c06105e@gmail.com>

Hello,

I have crafted some sample data as well as wrote instruction how to 
reproduce the bug.

The sample file can be found by following this link:

https://chaoticlab.io/pub/flyspell-bug/flyspell-sample.txt

The instruction alongside with the required code can be downloaded from 
here:

https://chaoticlab.io/pub/flyspell-bug/flyspell-bug-reproduction.el

I made some screenshots which demonstrate the bug:

https://chaoticlab.io/pub/flyspell-bug/flyspell-bug-linux.png
https://chaoticlab.io/pub/flyspell-bug/flyspell-bug-windows.png

I haven't been able to demonstrate the case when a misspelt word is not 
highlighted though. I will send an update should I craft the required data.

I hope this is helpful.

Regards,
Artem

> Hello Eli,
>> Can you post the text where this happens?
> The text where I encountered the problem is a personal e-mail, so I 
> can not share it as it is. I will try to craft a sample text and 
> describe the steps for bug reproduction using emacs -Q.
>> AFAICT, you have removed a single line:
>>
>>                  (< found-length misspell-length)
>
> I am also replaced:
> ;; Size matches, we really found it.
> (= found-length misspell-length)
>
> with
>
> ;; Size and content matches, we really found it.
>  (and (= found-length misspell-length)
>           (string= found word))
>
> I believe, in this case there is no need in  (< found-length 
> misspell-length) anymore.
>> Can you take me through your reasoning why this line is incorrect, and
>> what assumptions it made that are correct for English, but not for
>> Russian?
> As about my reasoning behind the changes: I felt that it is not right 
> to mark the word as misspelt without actually checking the content. 
> Moreover, look at the original comment right behind the (< 
> found-length misspell-length) line:
>                  ;; Misspelling has higher length than
>                  ;; what flyspell considers the word.
>                              ;; Caused by boundary-chars mismatch.
>                              ;; Validating seems safe.
> I am not sure that comparing length of found word and misspelt word is 
> enough to make an assumption that validating is safe (even considering 
> the preceding checks). The keyword here, I think, is 'seems'. For some 
> reason, it really works most of the time.
>
> I believe that the bug should be possible to reproduce for texts in 
> English too. For some reason, I have not encountered this problem 
> while spell checking English. I should note that flyspell-buffer works 
> fine for *most* of the texts in Russian and Ukrainian which I have 
> checked and the discussed issue is rarely encountered. I did not know 
> that It exists until  I started using flyspell-buffer regularly.
>
> Kind regards,
> Artem
>






  reply	other threads:[~2018-07-29 14:09 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-26  9:44 bug#32280: 26.1; FLYSPELL-BUFFER sometimes misbehaves for some input in a large enough buffer Artem Boldarev
2018-07-27 12:45 ` Eli Zaretskii
2018-07-28  0:00   ` Artem Boldarev
2018-07-29 14:09     ` Artem Boldarev [this message]
2018-07-29 17:33       ` Eli Zaretskii
2018-07-30  6:22       ` martin rudalics
2018-07-30 10:00         ` Artem Boldarev
2018-07-27 16:00 ` Agustin Martin
2018-07-28  0:00   ` Artem Boldarev
2018-07-30 13:20     ` Agustin Martin
2018-07-30 16:29       ` Artem Boldarev
2018-07-30 16:43         ` Agustin Martin
2018-07-30 18:12           ` Artem Boldarev
2018-08-04 10:43             ` Eli Zaretskii
2018-08-07 10:56               ` Artem Boldarev
2018-08-07 15:37                 ` Eli Zaretskii
2018-07-28  0:23   ` Artem Boldarev
2018-07-28  7:02     ` Eli Zaretskii
2018-07-29 14:15       ` Artem Boldarev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a6727881-fe39-cf2a-fcf7-20722e9960e8@gmail.com \
    --to=artem.boldarev@gmail.com \
    --cc=32280@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).