Take a look at wxKeyBinder at
<http://wxcode.sourceforge.net/components/keybinder/>. It is written by
one of the primary wxWidgets developers. The last time I tried to build
it, the sample segfaulted on GTK. That was over a year ago so perhaps
this has been fixed. It's design fits in with wxWidgets very well. It
would require a complete redesign of the Kicad hot key implementation.
It is a command event based design like wxAccelleratorEntry rather than
a virtual base class method implementation of the kicad hot keys so I'm
guessing that it would be quite a bit of work to fit this into Kicad.
It would also add another dependency so that may be an issue. However,
it is a fairly complete solution with a built in shortcut key editor,
automatic updating of menu labels, supports multiple short cut profiles,
etc. I thought it might make it into the next version of wxWidgets like
wxProperties did. Maybe it will make it into wxWidgets 3.2.