This is in the treaves branch. The system works, and all plugins - as well as the main app - have been converted to use it. I think it's a very nice system, although a bit basic at the moment. It shows all key bindings, and will highlight duplicates. It allows for default key bindings, reseting to defaults, editing, and saving the bindings. Please take a look at this. I feel it is simple enough, effective enough, that it should be in the next public release; I think that's 0.10.5?
There are several additional features I'd like to add, but do not plan on spending any more time on it until it's been approved, and merged to trunk. At that time, I'll add support to the plugin interface to support rebinding at run-time (right now, you must restart after editing them), a few GUI improvements, the ability to capture the keystroke (right now you must type the text, as you do in the code itself), instant feedback on it that binding is in use (it will currently instantly highlight it yellow), and the ability to have more than one key binding per action (right now it's one; I only had to change the find action for this, so no big deal).
I've been on IRC for the past couple of days, hoping others would notice the commits. Oh well. I'll be on over the next few days too, so provide feedback here or there.
|