Skip to content
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

ModTap auf 'ö' funktioniert nicht #54

Closed
step4 opened this issue Sep 24, 2022 · 9 comments
Closed

ModTap auf 'ö' funktioniert nicht #54

step4 opened this issue Sep 24, 2022 · 9 comments

Comments

@step4
Copy link

step4 commented Sep 24, 2022

Hi,
ich wollte mal das VOU Layout ausprobieren und bin dabei auf diesen Treiber gestoßen.

Mir gefällt die Idee mit den ModTap tasten sehr gut und habe mal die Einstellungen in der settings.ini auskommentiert:

a=ModTap(mod3)
s=ModTap(shift)
d=ModTap(ctrl)
f=ModTap(mod4)
x=ModTap(alt)

,=ModTap(alt)
j=ModTap(mod4)
k=ModTap(ctrl)
l=ModTap(shift)
ö=ModTap(mod3)
;=ModTap(mod3)

Zusätzlich hab ich das ';' reingenommen, weil ich standardmäßig das US qwerty Layout in Windows aktiviert hab und nicht wusste ob das wichtig ist.

Mein Problem ist nur, dass alle ModTap Zuweisungen funktionieren, außer die auf der 'ö'-Taste.

Hier mal ein Auschnitt aus dem Debugfenster:

 Layout: vou
 customLayout:
 symmetricalLevel3Modifiers: 1
 returnKeyAsMod3R: 0
 tabKeyAsMod4L: 0
 capsLockEnabled: 1
 shiftLockEnabled: 0
 level4LockEnabled: 0
 qwertzForShortcuts: 0
 swapLeftCtrlAndLeftAlt: 0
 swapLeftCtrlLeftAltAndLeftWin: 0
 supportLevels5and6: 0
 capsLockAsEscape: 0
 mod3RAsReturn: 0
 mod4LAsTab: 0
 modTapTimeout: 0
 preferDeadKeyPlusSpace: 0
 capsLockAndQuoteAsShift: 0
 debugWindow: 1

a=ModTap(mod3)
s=ModTap(shift)
d=ModTap(ctrl)
f=ModTap(mod4)
x=ModTap(alt)
,=ModTap(alt)
j=ModTap(mod4)
k=ModTap(ctrl)
l=ModTap(shift)
ö=ModTap(mod3)
;=ModTap(mod3)
LEVEL 1
key down      | sc:036 vk:0x4A flags:0x00 extra:0 (J)
Append key 'J|MOD4' to queue at index 0 (1 key is pressed)
key up        | sc:036 vk:0x4A flags:0x80 extra:0 (J)
 mapped       | sc:036 J->t [0x0074] (level 1)
injected down | sc:036 vk:0x54 flags:0x10 extra:0 (T)
 mapped       | sc:036 J->t [0x0074] (level 1)
injected up   | sc:036 vk:0x54 flags:0x90 extra:0 (T)
Remove key 'J|MOD4' from queue at index 0

LEVEL 1
key down      | sc:037 vk:0x4B flags:0x00 extra:0 (K)
Append key 'K|CTRL' to queue at index 0 (1 key is pressed)
key up        | sc:037 vk:0x4B flags:0x80 extra:0 (K)
 mapped       | sc:037 K->r [0x0072] (level 1)
injected down | sc:037 vk:0x52 flags:0x10 extra:0 (R)
 mapped       | sc:037 K->r [0x0072] (level 1)
injected up   | sc:037 vk:0x52 flags:0x90 extra:0 (R)
Remove key 'K|CTRL' from queue at index 0

LEVEL 1
key down      | sc:038 vk:0x4C flags:0x00 extra:0 (L)
Append key 'L|SHIFT' to queue at index 0 (1 key is pressed)
key up        | sc:038 vk:0x4C flags:0x80 extra:0 (L)
 mapped       | sc:038 L->n [0x006E] (level 1)
injected down | sc:038 vk:0x4E flags:0x10 extra:0 (N)
 mapped       | sc:038 L->n [0x006E] (level 1)
injected up   | sc:038 vk:0x4E flags:0x90 extra:0 (N)
Remove key 'L|SHIFT' from queue at index 0

LEVEL 1
key down      | sc:039 vk:0xBA flags:0x00 extra:0
 mapped       | sc:039 ;->s [0x0073] (level 1)
injected down | sc:039 vk:0x53 flags:0x10 extra:0 (S)
key up        | sc:039 vk:0xBA flags:0x80 extra:0
 mapped       | sc:039 ;->s [0x0073] (level 1)
injected up   | sc:039 vk:0x53 flags:0x90 extra:0 (S)

Hier sieht man, dass das ';' wohl gemapped ist.

Ändere ich mein Windows Layout zu qwertz, kriege ich folgenden output für die 'ö' Taste:

LEVEL 1
key down      | sc:039 vk:0xC0 flags:0x00 extra:0
 mapped       | sc:039  ->s [0x0073] (level 1)
injected down | sc:039 vk:0x53 flags:0x10 extra:0 (S)
key up        | sc:039 vk:0xC0 flags:0x80 extra:0
 mapped       | sc:039  ->s [0x0073] (level 1)
injected up   | sc:039 vk:0x53 flags:0x90 extra:0 (S)

Hier wird kein Charakter angezeigt.

Jemand eine Ahnung woran das liegt?

@MaxGyver83
Copy link
Owner

Hi @step4,

ich bin gerade nicht in Windows, um das zu reproduzieren. Aber schon mal vorweg:

  • Prinzipiell ist das Programm auf ein deutschen Basis-Layout ausgelegt. Keine Garantie, dass es auch mit einem US-Layout funktioniert.
  • Ich glaube, es ist wichtig, welches Layout aktiv ist, wenn du neo-llkh.exe startest. Hast du neo-llkh.exe neugestartet, nachdem du das Windows-Layout auf QWERTZ umgestellt hast?
  • Vermutlich wird die Zeile ;=ModTap(mod3) gar nicht ausgewertet, weil in INI-Dateien Zeilen, die mit ; beginnen, als Kommentare betrachtet werden. (Dieses Problem hat man nicht, wenn man von einem QWERTZ-Layout ausgeht, weil es da keine ;-Taste gibt).

@step4
Copy link
Author

step4 commented Sep 24, 2022

Hey

ja ich hatte neo-llkh.exe extra neu gestartet nach dem switch auf das deutsche qwertz Layout.

Die Zeile ;=ModTap(mod3) hab ich jetzt mal raus genommen.

Das Ergbnis des Debug logs ist immernoch das selbe wie oben.

Evtl. noch hilfreich zu erwähnen ist, dass ich auf Windows 11 bin und meine Systemsprache auf Englisch.

@MaxGyver83
Copy link
Owner

Ich hab es jetzt mal in Windows getestet. Bei mir funktioniert die ö-Taste sowohl als s als auch als Mod3-Taste, auch mit dem US-Layout in Windows. Mir ist aber aufgefallen, dass bei mir im Debug-Fenster zwei Zeilen mehr zu sehen sind als bei dir:

"Append key..." und "Remove key..."

LEVEL 1
key down      | sc:039 vk:0xBA flags:0x00 extra:0
Append key ';|MOD3' to queue at index 0 (1 key is pressed)
key up        | sc:039 vk:0xBA flags:0x80 extra:0
 mapped       | sc:039 ;->s [0x0073] (level 1)
injected down | sc:039 vk:0x53 flags:0x10 extra:0 (S)
 mapped       | sc:039 ;->s [0x0073] (level 1)
injected up   | sc:039 vk:0x53 flags:0x90 extra:0 (S)
Remove key ';|MOD3' from queue at index 0

Ich vermute, dass die Taste immer noch nicht als ModTap-Taste erkannt wurde.

Vielleicht liegt es an der Formatierung der settings.ini? Wenn ich mich richtig erinnere, darf die nicht als UTF-8 kodiert sein.

@MaxGyver83
Copy link
Owner

Noch eine Frage: Benutzt du Release 0.6.4 oder master? Auf master gab es nämlich noch einen Commit, bei dem es um ö als ModTap-Taste ging.
(Ich hab eben mit Release 0.6.4 getestet.)

@step4
Copy link
Author

step4 commented Sep 24, 2022

Hab das Release 0.6.4 genutzt.
Welche Kodierung anstelle von UTF-8 sollte es denn sein?

@step4
Copy link
Author

step4 commented Sep 24, 2022

Mit der Kodierung windows1252 klappt es :)
Ich werde morgen mal den master branch testen

@MaxGyver83
Copy link
Owner

Ja, genau. Prinzipiell funktioniert es mit allen Kodierungen, die ö an Stelle 0xf6 sitzen haben, also zum Beispiel:

  • Latin-1 (ISO-8859-1: Western European)
  • Latin-2 (ISO-8859-2: Central European)
  • Latin-3 (ISO-8859-3: South European and Esperanto)
  • Latin-9 (ISO-8859-15: Revised Western European)
  • Codepage 1252 (Microsoft Windows Western European)
  • Codepage 1254 (Microsoft Windows Turkish)
  • Codepage 1257 (Microsoft Windows Baltic)
  • Codepage 1258 (Microsoft Windows Vietnamese)
  • ...

Mit dem letzten Commit auf master sollte auch UTF-8 funktionieren.

@step4
Copy link
Author

step4 commented Sep 25, 2022

Da es mit der anderen Kodierungen funktioniert schließe ich mal das Issue, da ich keine Zeit hab auf Windows mit den Build Tools etc. zu kämpfen 😄

Danke für die Hilfe :)

@step4 step4 closed this as completed Sep 25, 2022
@MaxGyver83
Copy link
Owner

Ich hab gerade Version 0.6.5 veröffentlicht. Da ist der Bugfix für die UTF-8-kodierte settings.ini enthalten.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants