In Icicles you have key completion, which is just about what you described.

You know the help that is offered when you hit a prefix key and then C-h -- e.g. C-x C-h ? Well that's just help, and it works only for certain prefixes.

What this Icicles feature is about is actually completing key sequences: hit C-x , then S-TAB to complete, and every possible completion of prefix key C-x is displayed -- just pick one.

If the candidate you picked is itself a prefix key (e.g. you picked r , so so far you're up to C-x r , which is still incomplete), then you pick another piece of the sequence, and so on, until the key sequence is complete (and its command is invoked).

See also: