Subject: bug#42248: 27.0.91; With enchant-2.2.8 from Guix, Flyspell errors out or gives lots of false positives

From: Eli Zaretskii <[email-masked]>
Date: Thu, 20 Aug 2020 21:26:14 +0300

> From: Jorge P. de Morais Neto <[email-masked]>
> Cc: [email-masked], [email-masked]
> Date: Thu, 20 Aug 2020 14:49:01 -0300
> 
> >> Also, the list for "en_US" specifies "" for OTHERCHARS, but, IIUC, it
> >> ought to be "[']" instead.
> >
> > This means something is wrong with the initialization, as the data is
> > set up correctly in ispell.el.  Does the above happen in "emacs -Q"?
> 
> I have just tried on emacs -Q on Debian testing and OTHERCHARS got yet
> another result, which also seems wrong because it omits the apostrophe.
> 
> This was on an updated Debian bullseye with enchant 2.2.8 from APT.
> 
> Recipe:
> 0. emacs -q
> 1. Evaluate
>     (progn
>                  (setq ispell-program-name "enchant-2")
>                  (ispell-change-dictionary "en_US")
>                  (insert "doesn't 2015")
>                  (ispell-buffer))
> 
> 2. Check ispell-dictionary-alist.  The value:
> --8<---------------cut here---------------start------------->8---
> ((nil "[[:alpha:]]" "[^[:alpha:]]" "[0123456789]" t nil nil utf-8)
>  ("en_GB" #1="[[:alpha:]]" #2="[^[:alpha:]]" "[0123456789]" t nil nil utf-8)
>  ("en_CA" #1# #2# "[0123456789]" t nil nil utf-8)
>  ("en_US" #1# #2# "[0123456789]" t nil nil utf-8)

I have two comments about this:

  (a) isn't this because Enchant invocation fails as you've
      established, due to the -B switch?

  (b) are you sure the above at all matters? e.g., with Hunspell
      (which is what I have here) it doesn't

Bottom line: someone who has Enchant installed will have to step
through the code which invokes it and sets up spell-checking, and see
what goes wrong with that version of Enchant that uses Aspell.