I am implementing a keyboard shortcut manager in which the user can assign shortcut keys to global (or contextual) commands in a Windows desktop application. Note that the application has load of shortcuts (+75). So the shortcuts need to be structured and searchable. I am looking for the ideal keyboard shortcut assignation UI pattern.
The one I personally prefer are:
Easy to assign shortcuts
List all commands by categories
Easily identify conflicts while assigning
Do you know any desktop application that have a good keyboard shortcut manager?
Take a look at Eclipse. It has filter, conflict detection, and also context of usage (same key could mean different things depends of where you are — do not copy that feature). Filter could search by shortcut or command name, so you type “Ctrl + T” and find command that is bound to it.
It also allows for the whole key binding scheme be switched at once, however I do not see that you could create your own.
I understand you are looking for something to implement for Windows, but here are a few Mac applications that I particularly like their implementation, very clean looking, and perhaps you could take their interaction cues from:
The standard interaction is you click the X icon in the textbox for the keyboard shortcut that you want to replace. Your cursor moves there, and the next key press(es) will go into the assignment for that action.
The bug tracking system Jira could provide a different approach. They have a number of explicit keyboard shortcuts (J & K to navigate backwards and forwards), but then they have the Operations window which you pull up by pressing the period key.
In the operations window you can type out what action it is you want to take eg 'Assign to me'. From personal experience and watching others in our team this is actually a far more intuitive and easier system than trying to remember explicit keyboard shortcuts. It also gives the user the chance to edit and change their mind on what operation or activity they actually want to undertake.
Photoshop too gives this feature, i believe photoshop can be a good study point. Reason, Photoshop is complicated image editing/creating software but still there different combination of key which makes user job fast and efficient.
I personally don't like the Photoshop shortcut editor. I almost always have to go through a lot of headers before I find what I am searching for. Why not make it more graphical - for example: you press a button that shows the shortcuts for visual tools on them, like a tooltip but editable. They may just be visible when hovering if it's to little space. This would also directly show what other shortcut that's using the same keys by marking it red. It can be tricky for menu shortcuts but I think that would be solvable, just by making the menus work as before, it's just that the hovering shows up when the menu is opened.