-
-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Question] Mapping Question. #154
Comments
@TaivasJumala In win-vind, the low-level mapping performs when the external mapping is key-to-key or key-to-keyset. win-vind has two-type mappings internal and external. Since the low-level mapping connects to target keys without sending any messages for trigger-key pressing to other applications, so is always external mapping, which affects the other applications. To perform low-level mapping, the mapping should be solved at one time. imap <capslock> {<ctrl>} " one to one
imap <capslock> {<ctrl-s>} " one to two The next mapping generates key messages sequentially, not low-level. imap <capslock> {<ctrl>abc} " sequential output keys
imap <alt-h> {<ctrl>} " sequential input keys Therefore, if you call some function with low-level, you can use the next techniques. imap <capslock> {<f20>}
imap <f20> <to_gui_normal> This tips the capslock maps to the other key low-level at once, and the desired mapping is called with the mapped key. I hope this is helpful. |
I tried your method, and More over, I found logs in my
But I'm actually using Windows 11, I don't know if it's Microsoft's problem because they differ 11 with 10 by judging whether the Build Numbers is greater than 22000 or not in many places as I know. And when I put my eye on |
@TaivasJumala For debugging, we should watch key message flags in the low-level hook. win-vind/src/core/inputgate.cpp Lines 137 to 182 in ad094dc
Therefore, I plan to try to reproduce this issue in the same environment as yours, including even the build number. |
I would love to do so, to clarify, use as same environment as possible and not disturbed by other applications, I will reproduce it on Windows Sandbox. winver
winget install Microsoft.PowerToys --source winget
winget install win-vind A. PowerToys is now running(with keyboard manager enabled like what I set before) and win-vind is not running or in resident mode. Because the PowerToys' Keyboard Manager, the physical ESC now work as CapsLock and physical CapsLock is ESC. I use notepad to test that it actually did its job (to let me type capitalized characters and do what ESC do). B. Launch win-vind. (now both PowerToys and win-vind are working) C. now I still have to use physical ESC to change win-vind's different mode. At the same time, because PowerToys, windows recognized a CapsLocks was pressed too. So every time I use ESC to change modes, status of CapsLock changed too. Meanwhile CapsLock done nothing. Neither work like ESC to change win-vind mode or change status of CapsLock.
D.
This is not working whatever PowerToys is running.
This trick don't works too. And when PowerToys is running, I can't change mode of win-vind with physical ESC. |
@TaivasJumala |
@TaivasJumala imap <capslock> {<esc>} " sandwich in {} brackets |
Unfortunately, this doesn't seem to work. Did you ever find a solution @TaivasJumala? |
@Kayzels Have NOT test it if ok as a workaround. If you have extra time, you may want to test it. |
Question
I use PowerToys' keyborad manager to switch with , so they change function with each.
Now that I try to use win-vind, what confused me is that I press in the keyboard to change mode at the same time the status of Capslock changed either. But when I press , it seems that it's not equiv ant to as what I set in PowerToys. Nothing changed.
Is it because win-vind listen to the low level of keyboard, but PowerToys done his job in a higher level?
The text was updated successfully, but these errors were encountered: