GNU bug report logs - #20870
24.5; Options presented in ispell *Choices* should be accessible via keyboard

Previous Next

Package: emacs;

Reported by: Jürgen Hartmann <juergen_hartmann_ <at> hotmail.com>

Date: Mon, 22 Jun 2015 09:17:01 UTC

Severity: minor

Tags: wontfix

Found in version 24.5

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


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

From: Jürgen Hartmann <juergen_hartmann_ <at> hotmail.com>
To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org>
Subject: 24.5; Options presented in ispell *Choices* should be accessible
 via keyboard
Date: Mon, 22 Jun 2015 11:08:12 +0200
When ispell offers more than 67 options in its buffer *Choices*, it uses keys
like ^? or \200 that are hard (or impossible) to enter via keyboard. Here is
an example of the *Choices* content in such a case, where Hunspell and a
German alternate dictionary was used to complete the word "Abf":

-----------------------------------------------------------------------------
(0) Abfälle  (1) Abfällen  (2) Abfahrt  (3) Abfahrten  (4) Abfahrtshänge
(5) Abfahrtshängen  (6) Abfahrtshang  (7) Abfahrtsläufer
(8) Abfahrtsläuferin  (9) Abfahrtsläuferinnen  (:) Abfahrtsläufern
(;) Abfahrtsrennen  (<) Abfahrtsstelle  (=) Abfahrtsstellen
(>) Abfahrtsstrecke  (@) Abfahrtsstrecken  (B) Abfall  (C) Abfalls
(D) Abfallaufbereitung  (E) Abfalleimer  (F) Abfalleimern
(G) Abfallgraben  (H) Abfallkurve  (I) Abfallkurven  (J) Abfallpapier
(K) Abfallpapiers  (L) Abfallprodukt  (M) Abfallprodukten
(N) Abfallprodukts  (O) Abfallproduktes  (P) Abfallstoffe
(Q) Abfallstoffen  (S) Abfangjäger  (T) Abfangjägern  (U) Abfangjägers
(V) Abfangrakete  (W) Abfangraketen  (Y) Abfassung  (Z) Abfassungen
([) Abfertigung  (\) Abfertigungen  (]) Abfertigungsschalter
(^) Abfertigungsschaltern  (_) Abfertigungsschalters
(`) Abfertigungsstelle  (b) Abfertigungsstellen  (c) Abfindung
(d) Abfindungen  (e) Abflachung  (f) Abflachungen  (g) Abflüge
(h) Abflügen  (j) Abflüsse  (k) Abflüssen  (n) Abflug  (o) Abflugs
(p) Abflugflughafen  (s) Abflugland  (t) Abfluß  (v) Abflusses
(w) Abfördermenge  (y) Abfördermengen  (z) Abfolge  ({) Abfolgen
(|) Abfragesprache  (}) Abfragesprachen  (~) Abführmittel
(^?) Abführmitteln  (\200) Abführmittels  (\201) Abführung
(\202) Abfüllanlage  (\203) Abfüllanlagen  (\204) Abfüllfiliale
(\205) Abfüllfilialen  (\206) Abfüllstation  (\207) Abfüllstationen
(\210) Abfuhr  (\211) Abfuhren
-----------------------------------------------------------------------------

It is not straight forward to reproduce this example, since it depends on
the chosen dictionary. But we can do it in laboratory conditions, if we
generate an artificial dictionary.

For that, just redirect the output of the following shell script to a file
that we call /tmp/dict:

-----------------------------------------------------------------------------
#!/bin/sh

letters="a b c d e f g h i"

for i in $letters; do
    for j in $letters; do
    echo "aaa$i$j"
    done
done
-----------------------------------------------------------------------------

With that we can go to Emacs:

* Open Emacs 24.5 via

     LC_ALL=C ./emacs -Q

* Load the ispell library: M-x load-library RET ispell RET

* Open customization buffer for variable ispell-alternate-dictionary:
  M-x customize-variable RET ispell-alternate-dictionary RET

* Enter /tmp/dict as the variable's value and accept it for the current
  session. (Remember: /tmp/dict is the dictionary that we just generated.)

* Make a new Buffer and call it "text": C-x b RET text RET

* Change major mode of this buffer to text-mode.

* Enter "aaa" (without quotes) in the first line of the buffer text.

* With point immediately after the third letter a, start ispell-complete-word
  by C-M-i.

This should bring you a *Choices* buffer with a contents like that:

------------------------------------------------------------
(0) aaaaa  (1) aaaab  (2) aaaac  (3) aaaad  (4) aaaae
(5) aaaaf  (6) aaaag  (7) aaaah  (8) aaaai  (9) aaaba
(:) aaabb  (;) aaabc  (<) aaabd  (=) aaabe  (>) aaabf
(@) aaabg  (B) aaabh  (C) aaabi  (D) aaaca  (E) aaacb
(F) aaacc  (G) aaacd  (H) aaace  (I) aaacf  (J) aaacg
(K) aaach  (L) aaaci  (M) aaada  (N) aaadb  (O) aaadc
(P) aaadd  (Q) aaade  (S) aaadf  (T) aaadg  (U) aaadh
(V) aaadi  (W) aaaea  (Y) aaaeb  (Z) aaaec  ([) aaaed
(\) aaaee  (]) aaaef  (^) aaaeg  (_) aaaeh  (`) aaaei
(b) aaafa  (c) aaafb  (d) aaafc  (e) aaafd  (f) aaafe
(g) aaaff  (h) aaafg  (j) aaafh  (k) aaafi  (n) aaaga
(o) aaagb  (p) aaagc  (s) aaagd  (t) aaage  (v) aaagf
(w) aaagg  (y) aaagh  (z) aaagi  ({) aaaha  (|) aaahb
(}) aaahc  (~) aaahd  (^?) aaahe  (\200) aaahf  (\201) aaahg
(\202) aaahh  (\203) aaahi  (\204) aaaia  (\205) aaaib
(\206) aaaic  (\207) aaaid  (\210) aaaie  (\211) aaaif
(\212) aaaig  (\213) aaaih  (\214) aaaii
------------------------------------------------------------

which shows the problem.

Juergen

 		 	   		  



This bug report was last modified 4 years and 274 days ago.

Previous Next


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