Arrow keyboard bindings possible?

I’ve been roaming through the key bindings python code in an attempt to set up a system for multiple users to have independent keyboard bindings based upon their Windows login user.

Although I know that some of the hotkeys in Silhouette use the cursor ‘arrow keys’ on the keyboard (for nudging points, etc), I’d like to change those keys to be used for things such as forward/backward a frame as is more common for our users. I cannot find the bindings for those default key/functions that use the keyboard arrow keys.

Where would I find them, or without that, what is the identifier for the arrow keys that I would use to bind them to function, i.e. “LEFTARROW”, “UPARROW”, etc…?)

Unfortunately, the only python I know is the kind that slivers across the ground. Will get you an answer for this tomorrow.

Hah! Thank you, Marco.

I wish I had a better answer for you, but as flexible as the keybind system is, the arrow keys are currently internally bound. It’s been that way for 15 years I’m afraid!

I’ll get this changed for our next release so you can override the arrow keys. Keep a look our for #SI-1503.

Thank you, Paul.

I suspected they might not be in some type of enumeration list since I couldn’t find any references to it in the python bindings. Perhaps all keyboard buttons could be subject to review in case they’re missing, i.e. F-keys from F10-F20, Page Up/Downs, etc that get overlooked on older systems.

These come in handy with external keyboards such as Tangent Panels (and others).

Perhaps it would also be possible to include having a function bound to more than a single Key? Why, you ask? It’s nice to leave the default keys bound to a function, and hide secondary bound keys for things like external keyboards/panels away in things like SHIFT-ALT-CTRL-1 that will not be accidentally hit during normal operations. Currently, it looks like a key binding overwrites a previous key binding for a function.

Yes indeed I have a much bigger plan for extensive binding to external panels so this is good timing. Cheers Sam!