Subject: RE: bug#20870: 24.5; [PATCH] Options presented in ispell *Choices* should be accessible via keyboard

From: Jürgen Hartmann <[email-masked]>
Date: Sat, 27 Jun 2015 12:36:13 +0200

The attached patch tries to offer a workaround for this bug and to provide a
feature that was asked for by Emanuel Berg in

   http://lists.gnu.org/archive/html/help-gnu-emacs/2015-06/msg00363.html

i.e. that Ispell uses certain keys in a certain order for the offers in its
*Choices* buffer.

Therefore, the idea is to use a customizable variable to hold a vector of key
specifications that are used by ispell-command-loop in the given order to
assemble its options.

The patch alters ispell-command-loop accordingly introducing
ispell-option-keys as that customizable variable. Its default value is chosen
such, that the first keys in the vector are digits and lowercase letters,
since these are directly accessible on most keyboards without using any
modifiers.

As a minor detail the patch defines the inline function ispell-insert-choices
to hold some code that is used repetitively in ispell-command-loop.

The patch applies to the version of ispell.el that was shipped with the Emacs
24.4 release. And that is also the Emacs version the patch was tested on.

Juergen