Subject: bug#64075: 28.2; ispell broken on uncolored terminals

From: Al Petrofsky <[email-masked]>
Date: Wed, 14 Jun 2023 19:48:37 -0400

Ah, I see Eli fixed ispell-highlight-spelling-error-generic last year.
http://git.savannah.gnu.org/cgit/emacs.git/commit/lisp/textmodes/ispell.el?id=f3b876fa75042a1c00886e07d8491ac11824a892

Still, this anachronistic kludge should really be nuked entirely.
Even with the current fix, it fails to use ispell-highlight-face,
instead always using inverse-video.

By "nuked entirely" I mean:
   (1) delete ispell-highlight-spelling-error
   (2) delete ispell-highlight-spelling-error-generic
   (3) rename ispell-highlight-spelling-error-overlay
           to ispell-highlight-spelling-error

On Wed, Jun 14, 2023 at 7:25 PM Gregory Heytings <[email-masked]>
wrote:

>
> >
> > emacs-28.2 -Q -nw --color=no
> > s t o n k s M-$ 1
> >
> > At this point, I expect to see the word "stonks" replaced with "stocks",
> > but it is instead replaced with "stockstonks".
> >
> > The problem seems to be in ispell-highlight-spelling-error-generic, a
> > 20th-century kludge from before face support for ttys was added in
> > emacs-21 in 2001.  It's been unnecessary since then, and it looks like
> > it's been breaking ispell on colorless ttys since at least emacs-23.
> >
>
> This recipe can be reproduced with Emacs 25, 26, 27 and 28... but not with
> Emacs 29, in which "stonks" is indeed replaced with "stocks".
>