HotKeys vs .KeyDown

Panorama X lacks support for the .KeyDown procedure, while HotKeys has its limitations.
The .KeyDown procedure does not affect text editors such as data cells, TESOs, and procedure editors, nor does it affect editing forms.
It is only effective when no editor is open and not in graphics mode.
In contrast, HotKeys is available everywhere, making editing almost impossible if numerous HotKeys are used.
It would be great if the .KeyDown procedure were restored or if HotKeys did not interfere with editing.
Hope I have overlooked any important features of HotKeys.

It sounds like you have implemented single letter hotkeys, for example “a” or “x”, and done so in either global or database scope. So yeah, that’s going to interfere with the use of those keys for their normal purpose, for example typing. That’s why the help for hotkeys suggests that you use a comgination with a modifier key, rather than a single key by itself.

Usually you will want to use a combination of a regular key with one or more modifier keys, for example FUNCTION-X or COMMAND-G .

If you insist on using single letter hotkeys, I would only do so in a form scope. Also, I would use form event procedures to dynamically enable and disable the hotkeys. Enable the hotkeys when formOPEN or formDATAMODE is triggered, and disable the hotkeys when formGRAPHICSMODE is triggered (or you could switch to a completely different set of hotkeys that performed graphical functions). (If you use form scope, you don’t need to explicitly disable the hotkeys when the form is closed, Panorama will do that for you.)

However, even with this technique the hotkeys will be active when a data cell or TESO is being edited. There is no way around that.