After fixing ispell
to work on a new machine running macOS (see previous question), I was surprised to see it listed as one of my processes, see the image:
As text:
Process. PID. Status. Buffer. TTY. Thread
ispell 8262 run -- -- Main /opt/homebrew/bin/aspell -a -m -B --encoding=utf-8
ispell
seems to be related to flyspell
and I thought would be a "simple" mode. "Simply" storing a dictionary with the appropriate spelling and parsing text to find matches and misfits (indicating suggestions for the latter). I have no idea why it generates a process.
Other commands and modes do not gerate processes. I know stuff like CIDER does to watch live projects. I can't see the reason here.
Why do I have an ispell
process running? Why is it necessary?
aspell
application is used (idle timer) because I don't want anaspell
process running 24/7. I found certain sections in the code already set up for this; e.g.,ispell-async-processp
.... When I made a feature request to the Emacs team, Eli Z. explained that there is overhead each timeaspell
is launched and that it learns as it goes; e.g., words to ignore, etc. Eli Z. explained the efficiencies of having it run 24/7 and that the section of code I had zeroed in on was for systems unable to support it.ispell.el
calls an external program to do the checking. It looks sequentially foraspell
,ispell
,hunspell
andenchant-2
. Seeispell-init-process
andispell-start-process
for details.