Subject: Re: bug#17742: Acknowledgement (Support for enchant?)

From: Eli Zaretskii <[email-masked]>
Date: Tue, 20 Dec 2016 17:38:51 +0200

> From: Reuben Thomas <[email-masked]>
> Date: Mon, 19 Dec 2016 21:27:18 +0000
> Cc: [email-masked]
> 
>     Also, there is no easy way to know which particular spellchecking engine is
>     being used. Enchant uses $(datadir)/enchant and ~/.enchant config files to
>     define preferences, but I see no way to make enchant tell which one is being
>     used. So, it is not easy to parse dictionary info.
> 
> ​enchant-lsmod lists the engine used for each dictionary, so this is certainly possible, as I said earlier. However, it's not a good idea, I think, to directly search for dictionary files and parse them, because this breaks the abstraction of using the binary and/or library

Emacs should cater to user expectations before it caters to
abstractions, IMO.  It is good to use abstractions, but if an
abstraction cannot support some useful feature, it should take a back
seat, and we should implement the feature based on lower-level
infrastructure.

In this case, using enchant-lsmod to figure out the engine, and then
using the existing code in ispell.el that supports that engine is an
okay solution when Enchant itself cannot provide the information we
need.

Of course, if/when Enchant provides the means to get at the
information we need, we should switch to using those means.