Almost everyone uses keyboard shortcuts. Not everyone uses them for editing. Those who do are looking for (or already have) a logical arrangement. It’s practical to have a connection between the key and the action (“e” → exposure).
This last point in particular gave me a bit of a headache; it’s perfectly logical, since it makes the shortcut so easy to remember.
I’d like to present an “alternative” approach here.
Sorry for the German images, but I think the principle is still clear.
Blue represents all the keys related to the basic modules, and I’ve assigned the characters from top to bottom.
I just cleaned up my shortcuts, only to find that after restarting DT, all the unnecessary shortcuts were back.
Here’s the solution from the manual.
Even though I don’t understand why this is necessary, perhaps someone can explain it to me.
deleting default shortcuts
When you delete a shortcut that has been created by darktable by default, that shortcut is moved to a separate “disabled defaults” category, in order to prevent it from being reloaded the next time darktable is launched. To reinstate a deleted shortcut, simply delete the shortcut from that category. You will be prompted if reinstating this shortcut overwrites another one that has been created in the meantime.
Alternatively, you may disable preferences > miscellaneous > interface > load default shortcuts at startup to prevent default shortcuts from being loaded on startup. While this option is disabled, darktable will only load user-defined shortcuts and any defaults that you have not subsequently deleted or overridden.
I had asked the same question a few days ago, and the answer has been along the lines of “nobody remembers or cares to elaborate, so if you really want to know check related PRs in github”.
I certainly find this default setting very puzzling.
I had a similar question recently, about where to find the default shortcuts in GitHub.
It’s a real shame; on the one hand, DT offers so many great features, and on the other hand, there are many things that look like makeshift solutions and don’t integrate logically into the UI.
Unless the actual developer who made the change is here and sees your question, you’re basically asking someone to search for you. Once you learn how to use the search you never need to ask again.
The thing is, new default shortcuts get added regularly. If you don’t have them in your shortcutsrc, it could be that you removed them or that they didn’t exist yet last time you ran dt. No way for the program to know. So it keeps track of what you deleted, but of course it can’t do that when you edit the file directly. Sorry.
Now if you do use the ui to edit your settings, you might still delete a sc by accident. Or they may be overridden by a different assignment you made, maybe even before the default was introduced. So the disabled shortcuts are shown and you can easily restore them.
Before this tracking was added, you could just disable initialising the defaults and only use what was in the file. In order not to clutter the shortcuts dialog more, this settings just ended up where auto-generated settings go.