Subject: bug#25766: aspell problem in LaTeX mode

From: Bob Alice <[email-masked]>
Date: Sat, 18 Feb 2017 10:27:49 +0000

ispell-filter is empty. Here's the partial output (I used
ispell-print-if-debug to get the messages in the same buffer):
.....
ispell-region: string pos (22->28), eol: 28, [in-comment]: [%],
[add-comment]: [%], [string]: [^%fred}}
]
DEBUG-ISPELL-FILTER: ()
ispell-region: string pos (28->28), eol: 37, [in-comment]: [nil],
[add-comment]: [nil], [string]: [nil]
ispell-region: string pos (29->37), eol: 37, [in-comment]: [nil],
[add-comment]: [nil], [string]: [^envolope
]
DEBUG-ISPELL-FILTER: ()

I notice that it is sending two queries (one of which is nil) before it
attempts to read the output. Perhaps this is the problem?

Somebody else sent me a mail saying this isn't a problem in the latest
emacs. I'm happy to continue trying to debug if you think it's useful
otherwise should I just upgrade and stop here?

On 17 February 2017 at 16:37, Eli Zaretskii <[email-masked]> wrote:

> > From: Bob Alice <[email-masked]>
> > Date: Fri, 17 Feb 2017 16:21:11 +0000
> > Cc: [email-masked]
> >
> > Note: I removed \autoref{alice}. It wasn't necessary. New file is:
> >
> > \caption{5\% \label{_fred}}
> > envolope
> >
> > Debugger gives:
> > ispell-region: string pos (29->37), eol: 37, [in-comment]: [nil],
> [add-comment]: [nil], [string]: [^envolope
> >
> > Running:
> > /usr/bin/aspell -a -m -d en --encoding=utf-8
> >
> > Inputting:
> > ^envolope
> >
> > Output:
> > & envolope 7 1: envelope, enveloper, envelop, enveloped, envelopes,
> envelops, envelope's
> >
> > This output looks sensible, but the spelling options do not appear in
> the emacs buffer.
>
> Strange.  I guess the next step is to look at what Emacs receives from
> aspell.  I think if you display the value of ispell-filter in
> ispell-process-line, it will show that.  Here's the relevant part of
> ispell-process-line:
>
>     ;; send string to spell process and get input.
>     (ispell-send-string string)
>     (while (progn
>              (ispell-accept-output)
>              ;; Last item of output contains a blank line. <<<<<<<<<<<<
>              (not (string= "" (car ispell-filter)))))
>
> Insert
>
>     (message "%s" ispell-filter)
>
> before the marked line, then load ispell.el manually, and repeat the
> experiment.  The results should be in the *Messages* buffer.  Maybe if
> we see what Emacs gets back from aspell, we will see the light.
>
> Thanks.
>