I understand that it is "by design" that TC does not show the internal command name under Configuration - Misc - Redefine hotkeys. The real bug is that TC always shows "Default command (no remapping)", even when no shortcut is defined at all. In expression, it is not clear if a key combination is in use or not. TC offers no help for the user to find unused keyboard shortcuts besides KEYBOARD.TXT, which isn't even sorted by key names.
Worse, there is no text or help file listing all the pre-defined keyboard shortcuts along WITH the asscociated internal commands. KEYBOARD.TXT only list the shortcuts, not the command names or IDs. It is left to the user to figure this out somehow, the user is left on his own.
When an user inadvertently redefines an internal keyboard shortcut, TC should at least throw a warning message (strongly recommended).
Silent re-definition of internal commands' shortcuts
Moderators: Hacker, petermad, Stefan2, white
- buzzlightyear
- Junior Member
- Posts: 42
- Joined: 2004-10-01, 10:46 UTC
- ghisler(Author)
- Site Admin
- Posts: 50541
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Sorry, there is no table of internal commands, it's handled in multiple large "Switch/case" blocks. If I moved it to a table, many hotkeys which are currently working but are not documented would stop working. For example, TC now ignores the state of certain keys (e.g. Shift). These are often useful, e.g. both Alt+F1 and Alt+Shift+F1 open the left drive list. Since Alt+F1 cannot be used on Linux since it's a system-wide hotkey, one can still use Alt+Shift+F1.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
- sqa_wizard
- Power Member
- Posts: 3893
- Joined: 2003-02-06, 11:41 UTC
- Location: Germany
- buzzlightyear
- Junior Member
- Posts: 42
- Joined: 2004-10-01, 10:46 UTC
Christian, from your answer I get the impression that there likely will be no change in program behaviour. I still don't understand what prevents you from writing better documentation.
If your were really to change something here, you could do it like this:
a) create a table with four columns (id, cm_name, keyb shortcut, description)
b) save that table as csv file or array directly in your code
c) in the function that sets new keyboard shortcuts, check the user-selected shortcut against that table/array and throw a warning message "Do you really want to ... this key is currently defined to ...") [OK] [CANCEL]
I've invested some time and could help out with an Excel file for a) which will have all documented cm commands in it (but is missing those shortcuts that I questioned in another posting)
If your were really to change something here, you could do it like this:
a) create a table with four columns (id, cm_name, keyb shortcut, description)
b) save that table as csv file or array directly in your code
c) in the function that sets new keyboard shortcuts, check the user-selected shortcut against that table/array and throw a warning message "Do you really want to ... this key is currently defined to ...") [OK] [CANCEL]
I've invested some time and could help out with an Excel file for a) which will have all documented cm commands in it (but is missing those shortcuts that I questioned in another posting)
- ghisler(Author)
- Site Admin
- Posts: 50541
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Sorry, but there are many redundant key combinations like the above. I don't want to remove them just for the sake of documentation.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com