GNU bug report logs - #31034
Disappeared support for Ukrainian spelling check

Previous Next

Package: emacs;

Reported by: jamesjames <theism.tex <at> gmail.com>

Date: Mon, 2 Apr 2018 23:18:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #14 received at 31034 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: jamesjames <theism.tex <at> gmail.com>
Cc: 31034 <at> debbugs.gnu.org
Subject: Re: bug#31034: Disappeared support for Ukrainian spelling check
Date: Tue, 03 Apr 2018 13:01:11 +0300
[PLEASE PLEASE keep the bug address on the CC list!]

> From: jamesjames <theism.tex <at> gmail.com>
> Date: Tue, 3 Apr 2018 12:29:25 +0300
> 
> 03.04.2018 11:30, Eli Zaretskii пишет:
> > [Please keep the bug address on the CC list.]

Yes, PLEASE!

> > With Aspell and Hunspell, the available dictionaries are not taken
> > from ispell.el, they are dynamically detected by asking the
> > spell-checker to report what dictionaries are installed.  What does
> > the following command display, if invoked from the shell prompt?
> > 
> >   $ aspell dicts
> > 
> > also, what does the following command display?
> > 
> >   $ aspell -vv
> > 
> 
> aspell dicts
> en
> en-variant_0
> en-variant_1
> en-variant_2
> en-w_accents
> en-wo_accents
> en_AU
> en_AU-variant_0
> en_AU-variant_1
> en_AU-w_accents
> en_AU-wo_accents
> en_CA
> en_CA-variant_0
> en_CA-variant_1
> en_CA-w_accents
> en_CA-wo_accents
> en_GB
> en_GB-ise
> en_GB-ise-w_accents
> en_GB-ise-wo_accents
> en_GB-ize
> en_GB-ize-w_accents
> en_GB-ize-wo_accents
> en_GB-variant_0
> en_GB-variant_1
> en_GB-w_accents
> en_GB-wo_accents
> en_US
> en_US-variant_0
> en_US-variant_1
> en_US-w_accents
> en_US-wo_accents
> ru
> ru-ye
> ru-yeyo
> ru-yo
> uk

OK, "uk" is available.

> aspell -vv
> @(#) International Ispell Version 3.1.20 (but really Aspell 0.60.7-rc1)
                                                              ^^^^^^^^^^
That's the problem: Emacs 25 had a bug which prevented it from
accepting Aspell versions that ended in "-rcN".  Emacs 26 fixes this.
You can apply the patch below to ispell.el and recompile ispell.el,
then it should work again.  (Alternatively, you could up- or
down-grade to a version of Aspell whose number doesn't end in "-rcN".)

> eix app-text/aspell
> Installed versions:  0.60.7_rc1(01:40:47 03/29/18)(nls unicode L10N="ru
> uk -af -be -bg -br -ca -cs -cy -da -de -de-1901 -el -en -eo -es -et -fi
> -fo -fr -ga -gl -he -hr -hu -hy -is -it -la -lt -nl -no -pl -pt -pt-BR
> -ro -sk -sl -sr -sv -vi")
> 
> 
> equery files app-dicts/aspell-uk
>  * Searching for aspell-uk in app-dicts ...
>  * Contents of app-dicts/aspell-uk-1.4.0.0:
> /usr
> /usr/lib
> /usr/lib/aspell-0.60
> /usr/lib/aspell-0.60/koi8-u-nl.cmap
> /usr/lib/aspell-0.60/koi8-u-nl.cset
> /usr/lib/aspell-0.60/uk.dat
> /usr/lib/aspell-0.60/uk.multi
> /usr/lib/aspell-0.60/uk.rws
> /usr/lib/aspell-0.60/uk_affix.dat
> /usr/lib/aspell-0.60/ukrainian.alias
> /usr/lib/aspell-0.60/ukrainian.kbd
> /usr/share
> /usr/share/doc
> /usr/share/doc/aspell-uk-1.4.0.0
> /usr/share/doc/aspell-uk-1.4.0.0/README.bz2
> /usr/share/doc/aspell-uk-1.4.0.0/info.bz2
> 
> 
> ispell-change-dictionary displays the selection of languages that are
> not actually present in the system.

This is normal.  What is NOT normal is that the dictionaries present
on your system are not included in the list.  And that happens because
Emacs failed to recognize your Aspell as such.

> The same situation on another computer (gentoo).
> Earlier (06.06.2013), the choice of ukrainian there was still present,
> and .emacs automatically loaded it.
> 
> Perhaps it is required to specify the choice of ukrainian spelling in
> ispell.el?

No, not with Aspell and Hunspell.

Here's a patch that should fix your use case:

--- ispell.el.~1~	2017-04-14 18:02:47.000000000 +0300
+++ ispell.el	2018-04-03 12:57:52.375000000 +0300
@@ -893,11 +893,11 @@
 	(goto-char (point-min))
 	(or (setq ispell-really-aspell
 		  (and (search-forward-regexp
-			"(but really Aspell \\([0-9]+\\.[0-9\\.-]+\\)?)" nil t)
+			"(but really Aspell \\([0-9]+\\.[0-9.]+\\([-._+ ]?[a-zA-Z0-9]+\\)?\\)?)" nil t)
 		       (match-string 1)))
 	    (setq ispell-really-hunspell
 		  (and (search-forward-regexp
-			"(but really Hunspell \\([0-9]+\\.[0-9\\.-]+\\)?)"
+			"(but really Hunspell \\([0-9]+\\.[0-9.]+\\([-._+ ]?[a-zA-Z0-9]+\\)?\\)?)"
                         nil t)
 		       (match-string 1)))))
 




This bug report was last modified 7 years and 46 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.