https://github.com/microsoft/PowerToys/wiki/Keyboard-Manager#18--solutions-or-expectations
To me, this implies the ability to have keyboard-specific hotkeys - for example if I have a separate USB numpad and wish to remap the keys on it whilst suppressing the native functionality of the key, but not to affect the native functionality of the same key on my main keyboard.
eg Remap Numpad1 on the second numpad keyboard to MediaPlayPause, but not affect the functionality of Numpad1 on my main keyboard.
None of the software that I am aware of supports this. HID can differentiate devices but cannot suppress input. Hooks can suppress input but cannot differentiate devices.
The only solution that I am aware of to do this is the Interception keyboard filter driver - I have written an AHK wrapper for this, but it is not natively supported by AHK
Can you please clarify whether this is what is meant by the term, and if you plan to support some way of doing this in PowerToys?
If you read farther down, they describe it pretty well. Section 2.1 Priority 7 States "Multiple keyboard support. Example: Surface Laptop and Surface keyboard have different layout and a remap maybe needed."
Section 4.3/4.4 show the ability to select individual keyboards and how the user would edit individual shortcuts on each keyboard
yup, goal is to allow different keyboards and have them remapped accordingly. We're unsure this is possible but that is the goal. We're going to close this out as it is being tracked in via the spec
just as an update, this is currently not available to do with public APIs, and we're working to change that. as a result of prioritization of key features and the work this would take, we're pushing this back and it will not be part of our V1. still working on it though!
I am also interested in this functionality.
I have found these links, which say that using RawInput, we are able to differentiate the keyboards:
Would this help with implementing multiple keyboards support?
RI can differentiate between keyboards, but has no blocking, so cannot suppress the native functionality of the key from the second keyboard
There's an interesting article here about combining hooks and rawinput though to achieve that goal
@crutkas
we should add this information in the wiki, since users keep asking for this feature.
@enricogior done
https://github.com/microsoft/PowerToys/wiki/Keyboard-Manager-Overview#5-multi-keyboard-support
Most helpful comment
RI can differentiate between keyboards, but has no blocking, so cannot suppress the native functionality of the key from the second keyboard
There's an interesting article here about combining hooks and rawinput though to achieve that goal