neovars: modifier locks can be turned off

- Introduce two new Neo2.ini-keys "Mod2LockOff" and "Mod4LockOff",
  in analogy to the existing "NumLockOff" option
- Both options disable modifier-locking internally, but may not fix issues
  caused by failure to send correct sequences of shift events (#243 ?)
- Lower-case'd UseMod4Light -> useMod4Light
This commit is contained in:
ferdinym 2020-10-15 00:36:51 +02:00
parent 04bc40a93c
commit 543c7b96a4
3 changed files with 16 additions and 8 deletions

View File

@ -63,8 +63,9 @@ CharProc___EH1() {
; Modify Space
ED1("space","P__EHSd")
ED("EHSpace",0,"U000020","U000020","U000020","S__N__0","U0000A0","U00202F")
; Modify Tab
ED("tab" ,0,"U000009","U000009","S__Comp","U000009","P__M2LT","U000009")
; Modify Tab for caps-lock
if (!Mod2LockOff)
ED("tab" ,0,"U000009","U000009","S__Comp","U000009","P__M2LT","U000009")
}
CharProc___EH0() {
@ -105,7 +106,8 @@ CharProc___EH0() {
TKEH_VKBESC034 := "" ; .
TKEH_VKBDSC035 := "" ; j
ED("space",0,"U000020","U000020","U000020","S__N__0","U0000A0","U00202F")
ED("tab" ,0,"U000009","U000009","S__Comp","U000009","U000009","U000009")
if (!Mod2LockOff)
ED("tab" ,0,"U000009","U000009","S__Comp","U000009","U000009","U000009")
RemoveTransformEinhand() ; make sure we remove trafo
}

View File

@ -23,11 +23,13 @@ ini := ApplicationFolder . "\Neo2.ini"
IniRead,zeigeLockBox,%ini%,Global,zeigeLockBox,1
IniRead,zeigeModusBox,%ini%,Global,zeigeModusBox,1
IniRead,UseMod4Light,%ini%,Global,UseMod4Light,1
IniRead,UseMod4LightCaps,%ini%,Global,UseMod4LightCaps,0
IniRead,useMod4Light,%ini%,Global,useMod4Light,1
IniRead,useMod4LightCaps,%ini%,Global,useMod4LightCaps,0
IniRead,striktesMod2Lock,%ini%,Global,striktesMod2Lock,0
IniRead,dynamischesCompose,%ini%,Global,dynamischesCompose,0
IniRead,NumLockOff,%ini%,Global,NumLockOff,0
IniRead,Mod2LockOff,%ini%,Global,Mod2LockOff,1
IniRead,Mod4LockOff,%ini%,Global,Mod4LockOff,1
IniRead,customLayout,%ini%,Global,customLayout,%A_Space%
IniRead,Mod3RAufAe,%ini%,Global,Mod3RAufAe,0

View File

@ -60,12 +60,14 @@ IsMod4Active() {
ToggleMod2Lock() {
global
if (Mod2LockOff)
return
if (isMod2Locked)
isMod2Locked := 0
else
isMod2Locked := 1
; LEDs
if (not (UseMod4LightCaps and isMod4Locked)) {
if (not (useMod4LightCaps and isMod4Locked)) {
NEOCapsLockLEDState := isMod2Locked ? "On" : "Off"
UpdateNEOLEDS()
}
@ -73,6 +75,8 @@ ToggleMod2Lock() {
ToggleMod4Lock() {
global
if (Mod4LockOff)
return
if (isMod4Locked) {
isMod4Locked := 0
if (zeigeLockBox)
@ -84,11 +88,11 @@ ToggleMod4Lock() {
}
; LEDs
local LEDChange := 0
if (UseMod4Light) {
if (useMod4Light) {
NEOScrollLockLEDState := isMod4Locked ? "On" : "Off"
LEDChange := 1
}
if (UseMod4LightCaps and not isMod2Locked) {
if (useMod4LightCaps and not isMod2Locked) {
NEOCapsLockLEDState := isMod4Locked ? "On" : "Off"
LEDChange := 1
}