[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#69703: Ispell process restarted too often
From: |
Eli Zaretskii |
Subject: |
bug#69703: Ispell process restarted too often |
Date: |
Tue, 12 Mar 2024 16:44:26 +0200 |
> From: Juri Linkov <juri@linkov.net>
> Cc: 69703@debbugs.gnu.org
> Date: Tue, 12 Mar 2024 09:45:14 +0200
>
> >> The nature of the problem is the inability of ispell.el to maintain
> >> multiple processes with different dictionaries simultaneously
> >> that is required by flyspell-mode.
> >>
> >> What is needed here is a hash of processes where the key is
> >> the ispell program name and its dictionary arguments.
> >
> > Feel free to submit patches for that, and thanks. (But didn't you
> > just complain about one speller process per buffer?)
>
> Since implementing this is not urgent, here is a design outline
> for possible future improvements:
>
> 1. Create a pool of Ispell processes.
>
> 2. Instead of killing Ispell processes
> just get the process from the pool
> by the ispell program name and its dictionary arguments.
This assumes that the number of different personal dictionaries is
much smaller than the number of buffers under flyspell-mode. Since I
don't quite understand why you need so many personal dictionaries
(presumably for the same language?), I cannot say whether this
assumption is reasonable or scalable. In general, if we want to
support buffer-local speller processes, we could have hundreds of
speller processes running on the system, which is not very nice, I
think.
The current design is generally based on the following assumptions:
. a speller process is mostly needed in a single buffer at a time,
the buffer where the user is typing
. a speller process needs to be restarted only if you change the
dictionary, which is done when you need to spell-check a different
language
. the number of languages for which the user needs spell-checking is
small (or even spell-checked by a single speller, if that is
Hunspell)