-
Notifications
You must be signed in to change notification settings - Fork 16
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
Added keyUp
events & CapsLock
synchronization; refactored handling of events
#24
Conversation
…canCodes to most events
…tation for 4 spaces
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have tested it without problems. The changes look very good to me. Thank you for your contribution!
@@ -2,8 +2,8 @@ | |||
# Layout: neo, adnw, adnwzjf, bone, koy, kou, vou, qwertz | |||
layout=neo | |||
|
|||
# use quote/� as right level 3 modifier | |||
# �-Taste als rechten Ebene3-Modifier verwenden | |||
# use quote/ä as right level 3 modifier |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What have you changed here? I don't see any difference. Is it the file encoding?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
da war glaub echt was anders am file encoding. So wies jetzt ist, stimmt es glaub
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it showed �
for all the umlaute for me, so I just added the Umlaute again by keyboard (and something changed, I guess 🤷)
@@ -142,6 +148,45 @@ void mapLevels_2_5_6(TCHAR * mappingTableOutput, TCHAR * newChars) | |||
} | |||
} | |||
|
|||
void initLevel4SpecialCases() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Initializing this makes sense definitely!
@@ -383,29 +467,28 @@ bool handleLayer3SpecialCases(KBDLLHOOKSTRUCT keyInfo) | |||
return true; | |||
case 20: | |||
sendChar(L'^', keyInfo); | |||
keybd_event(VK_SPACE, 0x39, 0, 0); | |||
commitDeadKey(keyInfo); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a side note: I just noticed that I only get spaces instead of ^ in Neovim (same for backticks). But this also occurs with the official release. So not caused by your changes.
I had a go at fixing the things that didn't work properly and bothered me (and others, it seems) and actually managed to do so. These are the changes summarized:
keyUp
events (and combined it withkeyDown
)scanCode
to manually sent key eventsShiftLock
andCapsLock
with windowsCapsLock
state.CapsLock
keypress when togglingShiftLock
orCapsLock
bypassMode
, so whenbypassMode=true
andCapsLock
is pressed, it will also be enabled when switching back tobypassMode=false
initLayout
I have been using this for 2 weeks now and haven't noticed any problems in daily use (though while gaming I always had it disabled because the modifier keys don't behave how they'd need to for those programs - for me at least).