This PR addresses issue #10 and seems to be a fix for the languages that I am using: English, Swedish and German.
Support for Swedish has been fixed with PR !2 (merged) and !3 (merged), but the particular German aspell dictionary I am using contains affixes. This PR adds support for this kind of dictionary where typical entries look like this:
The part behind the slash indicates how this word should be expanded to cover all use cases in the particular grammar. For the example above, that would be:
überließ überließen überließt überließest überließe
The code uses aspell's own mechanism for the expansion (
aspell -l LANG expand). Here,
LANG refers to the language. The language is derived via a helper function
spell-fu--lang-from-dict which relies on
ispell-find-aspell-dictionaries. This approach can resolve the language even when the dictionary is given as alias (e.g. "german" instead of "de_DE").
I have tested this on Emacs 27.1 with aspell 0.60.8 on Ubuntu 20.04 for the above stated languages. But as I am rather new to Elisp and this is my largest contribution to a package yet, I would appreciate feedback and comments on style, approach and any issues you might find.