Subject: bug#32471: 26.1; ispell throwing wrong-type-argument stringp nil on Windows 10, with emacs 26.1 and hunspell

From: Eli Zaretskii <[email-masked]>
Date: Sat, 18 Aug 2018 21:35:11 +0300

> From: Didier <[email-masked]>
> Date: Sat, 18 Aug 2018 00:11:17 -0700
> 
> I'm trying to get ispell working on Windows 10, with Emacs 26.1. Aspell 
> 0.60 is now required, and there are no Windows 10 release for it yet. I
> thus switched to hunspell. But, it seems ispell is not able to find the
> dictionaries for hunspell, and throws an error:
>  
> (wrong-type-argument stringp nil)
>  
> This is caused by spell-parse-hunspell-affix-file(nil) getting a nil
> dict input which in turn is caused by
> ispell-hunspell-fill-dictionary-entry not properly parsing my hunspell
> dicts.

No, it's because your Hunspell dictionaries seem to be misconfigured.

> To help with the issue, here's the result of the call to hunspell to get
> the dict path:
>  
> ("JKLRCH PATH:"
> ".;;C:\\Hunspell\\;C:\\Users\\didibus\\.openoffice.org\\3\\user\\wordbook;c:\\Users\\didibus\\hunspell\\bin\\..\\share\\hunspell;C:\\Program
> files\\OpenOffice.org 2.4\\share\\dict\\ooo\\;C:\\Program files\\OpenOffice.org
> 2.3\\share\\dict\\ooo\\;C:\\Program files\\OpenOffice.org 2.2\\share\\dict\\ooo\\;C:\\Program
> files\\OpenOffice.org 2.1\\share\\dict\\ooo\\;C:\\Program files\\OpenOffice.org 2.0\\share\\dict\\ooo\\"
> "AVAILABLE DICTIONARIES (path is not mandatory for -d option):"
> "c:\\Users\\didibus\\hunspell\\bin\\..\\share\\hunspell\\default"
> "c:\\Users\\didibus\\hunspell\\bin\\..\\share\\hunspell\\en_GB"
> "c:\\Users\\didibus\\hunspell\\bin\\..\\share\\hunspell\\en_US" "Can't open affix or dictionary files for dictionary
> named \"ENU\".")

This list doesn't include a single .aff file, and Emacs needs that to
initialize the dictionaries properly.

What does Hunspell display if you invoke it from the shell prompt with
the -D switch?

And where did you download this port of Hunspell from?