Subject: bug#25107: Acknowledgement (Patches to clean up ispell.el)

From: Reuben Thomas <[email-masked]>
Date: Tue, 6 Dec 2016 16:20:24 +0000

On 6 December 2016 at 15:51, Eli Zaretskii <[email-masked]> wrote:

>
> Why is it useful to remove this information?  The documentation of the
> spell-checkers themselves leaves a lot to be desired, so asking the
> users to go consult it might not be appreciated.  I'd rather add here
> the missing info about the other spellers.
>

​Emacs is enough for us to document without trying to document third-party
software. Since all the software involved is free, better to fix it
directly, and benefit all its users, rather than take on the burden of
documenting it in order only to benefit Emacs users.

If you can point out specific deficiencies in spellcheckers, I'm quite
happy to file suitable documentation patches with them.​ For example, the
man page for hunspell seems clear enough:

The default dictionary depends on the locale settings. The following
environment variables are searched: LC_ALL, LC_MESSAGES, and LANG. If none
are set then the default personal dictionary is $HOME/.hunspell_default.
Setting -d or  the DICTIONARY environmental variable, personal dictionary
will be $HOME/.hunspell_dicname

I find the documentation for GNU aspell a little less obvious, as it
requires the user to understand:

The personal dictionary generally has a filename of the form:

     .aspell.LANG.pws

and put this together with the "home-dir" setting to realise that the
default is "~/.aspell.LANG.pws".

The documentation for ispell is a bit clearer:

If neither the -p switch nor the WORDLIST environment variable is given,
ispell will search for a personal dictionary in both the current directory
and $HOME, creating one in $HOME if none is found. The preferred name is
constructed by appending ".ispell_" to the base name of the hash file.

In summary, it seems that a patch to the man page for aspell (as being the
first place users are likely to look) would be helpful. If you have other
suggestions, I can look into them.

> * lisp/textmodes/ispell.el (ispell-version): Since ispell.el is now
> > firmly part of Emacs, and the version hasn’t changed since 2003, and
> > isn’t used anywhere, remove it.  3rd-party code can better use the
> > Emacs version, or feature or function checks.
>
> I agree, but instead of removing the information, how about replacing
> it with the Emacs version?  Something like "ispell.el from Emacs %s".
>

The context is an interactive call to ispell-check-version, which reports
what version of the spell-checker is being used. If the user wishes to know
what version of Emacs they are running, they can check emacs-version. When
ispell.el was third-party code, knowing the version of ispell.el separately
made sense, e.g. for bug reports. Now, one would use report-emacs-bug,
which already includes the Emacs version; ispell-check-version, used
interactively, is now primarily useful for diagnosing problems with the
external spell-checker. (In general, having a diagnostic report the Emacs
version seems redundant unless there's a good reason: for example, if the
information is being transmitted outside Emacs, as is the case with
report-emacs-bug.)

​As you ask (and in light of the recent emacs-devel discussion you copied
to me), I'll give others the opportunity to respond before installing
anything.

-- 
http://rrt.sc3d.org