help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ispell select Emacs dictionary on Debian


From: Felix Dietrich
Subject: Re: ispell select Emacs dictionary on Debian
Date: Mon, 26 Jul 2021 00:37:23 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Emanuel Berg via Users list for the GNU Emacs text editor
<help-gnu-emacs@gnu.org> writes:

>>> Both ‘ispell-local-dictionary’ and ‘ispell-dictionary’ are
>>> nil on my side
>>
>> Do
>>
>>   M-x ispell-change-dictionary RET SPC
>>
>> to see what dictionaries are installed.
>
> Now I start to think it doesn't work for me either!
>
> I did
>
>   $ sudo apt-get --install-suggests install iamerican-insane
>   $ sudo select-default-ispell
>
> and selected american-insane (the UI even mentions Emacs BTW)
>
> but the dictionary wouldn't turn up with
>
>   M-x ispell-change-dictionary RET SPC

Emacs defaults to using aspell for spell-checking.  The package
“iamerican-insane” installs a dictionary for the ispell program.  Both
programs use different, incompatible formats for their dictionaries.  If you
set ‘ispell-program-name’ to “ispell”, Emacs will offer the installed ispell
dictionaries with “M-x ispell-change-dictionary”.  Note, though, that you
also *cannot* share your personal dictionary between these two programs.

You may generate an american-insane dictionary for aspell from the wordlist
distributed in the package “wamerican-insane” using:

    aspell --lang=en --encoding=utf-8 \
        create master /usr/lib/aspell/en_US-insane.rws \
        </usr/share/dict/american-english-insane

I also had to create a file “/usr/lib/aspell/en_US-insane.multi” with the
following content for the dictionary to be picked up by aspell:

    add en_US-insane.rws

Afterwards check whether “en_US-insane” is listed in the output of
“aspell dicts”.  If it is, it should also be selectable in Emacs with
“M-x ispell-change-dictionary” (when ‘ispell-program-name’ is “aspell”).

As an aside: at a quick glance, I think that the insane dictionary contains
some dubious spelling.

> then I did
>
>   $ sudo apt-get --install-suggests install iamerican-\*
>
> and it installed all of it, I did 'ispell-change-dictionary'
> again and all the smaller alternatives were now there, but
> I picked -insane anyway, and what happened is, now "american"
> turns up as an alternative in Emacs.

I could not reproduce that.

> Is this as it should be, i.e. I use the -insane version and it
> is solved under the hood somehow? Or am I using
> just iamerican?

I donʼt know how to directly see which dictionary is used.  Try looking at
the [ia]spell processʼ arguments, either in emacs with “list-processes” or
in the shell with “ps”.  In the shell, you may also look at a list of open
files of the [ia]spell process using “lsof -p IASPELL_PID”.

Debian does some Debian things under the hood to make the installed
dictionaries selectable in Emacs.  They also ship custom versions of
“ispell.el” and “flyspell.el”.  Check the package “dictionaries-common”.

-- 
Felix Dietrich



reply via email to

[Prev in Thread] Current Thread [Next in Thread]