completing-help.el by YujiMinejima extends minibuffer input display-completion-list to show a description or help string with each completion choice. Get it from the author at (Japanese) (English)

For example after enabling with M-x turn-on-completing-help-mode if you type “M-x z ?” the docstring of each “z” command is shown, as well the names.

There’s a few help displays builtin. On alist tables (STRING . STRING) the value part is shown, which is good for various general-purpose tables. In an elisp package you can extend completing-help-groups to build help strings for particular tables. If you use a table function then this is necessary to show help text.

As of completing-help.el version 3.13, Emacs 22 style symbols as the alist keys are not recognised by the general mechanism. You may prefer (STRING . STRING) rather than (SYMBOL . STRING) anyway since the former will work in Emacs 21 as well as Emacs 22.

See also: