HParse()Convert user shortcuts to autohotkey hotkeys reliably, securely, fastly.
AHK Topic Link
- The function handles spelling errors from users and tries to return the correct ahk hotkey for the corresponding shortcut as far as possible.
- It can differentiate between Autohotkey hotkey (^!x) and shortcuts (Ctrl+Alt+x) and returns the correct value always.
- It can manage totally invalid user shortcuts sent to it simply by eliminating the invalid part of the shortcut
- You can enable/disable [RemoveInvaild] param if you want. Enabling (default) manages invalid parts by removing them, Disabling makes the return value blank when an invalid part in shortcut is occured. This blank return can be checked and used further to perform required measures.
- If possible the returned hotkey is tried to be kept in the standard without "ampersand" (&) format. If not possible it is returned in the correct (&) format. See the EXAMPLES below for more details.
- Standard User Shortcuts are by default meant to be separated by either the plus '+' or the dash '-' . eg -- Control + Alt + S , Control - S will work.
- User shortcut(s) such as (X + Control) will be converted to (^x) and not (x^) via the [ManageOrder] Param which is enabled by default
- Shortcuts endings in modifiers are auto-detected and returned accordingly. eg -> (Control + Alt) gives ^Alt and not ^!
- No RegEx, so faster .
- Keys are arranged a/c popularity for maximum speed of the function.
- Supports all Autohotkey keys including Joystick Keys.
RecommendedKey names in correspondence with the standard Autohotkey key list should be feeded inside the fucntion.
An example - A user should use the word 'LeftMouseButton' instead of 'LeftClick'.
-->See at Github