I'm actually in the process of reworking it so that the keybinds can be fully remapped via a GUI. In fact, LibreScroll is my first step experimenting with multi-process delegation that will enable that functionality, since the current way of having to edit the code directly in scattered locations is very much not ergonomic.
In the meantime, for the current version of TPMouse on the dev branch, to change the remapping of arrows and mouse buttons, you need to edit `keybinds.au3` in three spots:
1. the virtual-key constant at the static array at the top
2. the hotkey string at the static array at the top
3. (this is really poor UX I know) in the static struct declaration inside the respective callback function, change the referenced virtual-key constant.
The list of virtual key codes can be found in `vkeys.au3`:
https://github.com/EsportToys/TPMouse/blob/dev/vkeys.au3
So for example, to remap mouse1 from F to A, I need to do the following:
Line 10:
<<< before >>>
$mb1 = [ $VK_F , '{f}' , callback_f ] , _
<<< after >>>
$mb1 = [ $VK_A , '{a}' , callback_f ] , _
Lin 68:
<<< before >>>
Local Static $struct = DllStructCreate('ushort MakeCode;ushort Flags;ushort VKey;'), $vkey = DllStructSetData($struct,'VKey',$VK_F)
<<< after >>>
Local Static $struct = DllStructCreate('ushort MakeCode;ushort Flags;ushort VKey;'), $vkey = DllStructSetData($struct,'VKey',$VK_A)
As for changing the activation hotkeys, if you wish to use a different modifier other than CapsLk, change the vkey code on line 74, 90, and line 107 of TPMouse.au3; for example, to change it from CapsLk to Alt:
Line 74:
<<< before >>>
Case $VK_CAPS
<<< after >>>
Case $VK_ALT
Line 90:
<<< before >>>
If $VK_Q = $struct.VKey And Not ( $sks($VK_CAPS) Or ($sks($VK_LSHIFT) And $sks($VK_RSHIFT)) ) Then Return
<<< after >>>
If $VK_Q = $struct.VKey And Not ( $sks($VK_ALT) Or ($sks($VK_LSHIFT) And $sks($VK_RSHIFT)) ) Then Return
Line 107:
<<< before >>>
If $sks($VK_CAPS) Or ($sks($VK_LSHIFT) And $sks($VK_RSHIFT)) Then
<<< after >>>
If $sks($VK_ALT) Or ($sks($VK_LSHIFT) And $sks($VK_RSHIFT)) Then