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

Einhandmodus #34

Closed
Rojetto opened this issue May 3, 2021 · 3 comments
Closed

Einhandmodus #34

Rojetto opened this issue May 3, 2021 · 3 comments
Labels
enhancement New feature or request

Comments

@Rojetto
Copy link
Owner

Rojetto commented May 3, 2021

Scheinbar besteht doch gelegentlich Bedarf für den Einhandmodus aus NeoVars. Wenn man die Scancode-Spiegelung vor den Rest des Hooks schaltet greift das hoffentlich nicht all zu tief ein.

Potentielle Verbesserungen: Der Modus in NeoVars geht nur rechts einhändig (Spiegelung in die andere Richtung ist aber schwer, wegen ß und y. Man könnte y auf Capslock legen und ß auf Tab). Außerdem funktioniert das beidhändige Tippen schlecht, weil ständig Leertasten geschluckt werden, solange noch nicht alle Buchstaben losgelassen wurden (wobei man da auch einfach den Modus deaktivieren kann, falls das technische Gründe hat).

Was passiert im Erweiterungsmodus? Wäre sinnvoll, wenn dort dann automatisch der Standalone mit dem entsprechenden Layout angeht.

@Rojetto Rojetto added the enhancement New feature or request label May 3, 2021
@vansoest
Copy link

+1

Gerade der Einhand Modus für die linke Hand finde ich super interessant.

Beispiel: Wenn ich mit Blender arbeite und mal schnell die Autovervollständigung nutzen muss oder ich habe in der rechten Hand eine Tasse Tee und möchte mal kurz was schreiben.

ß und y auf Capslock und Tab kann sinnvoll sein – allerdings nicht für jeden Tastaturtyp, aber sowas kann jede Person dann ja ganz einfach in einer JSON Datei ummappen.

Rojetto added a commit that referenced this issue Sep 21, 2021
Zustandsmaschine ist etwas ausgefuchster als in NeoVars und sollte auch
beidhändiges Tippen bei aktiviertem Modus ohne große Frustration
ermöglichen.

Analog zu anderen Features gibt es einen Eintrag im Tray-Menü, einen
konfigurierbaren Hotkey sowie den traditionellen Hotkey M3+F10 aus
NeoVars.

Wie genau die Spiegelung aussieht und mit welcher Taste sie aktiviert
wird lässt sich ebenfalls einstellen. Auf einer Standardtastatur kann man
sowohl rechts als auch links einhändig tippen, wobei rechts aufgrund der
Tastaturgeometrie etwas angenehmer ist.

Closes #34
@qwertfisch
Copy link
Contributor

Wirklich recht ausgefuchst, gut durchdacht und konfigurierbar. Der eigentliche Code ist dann gar nicht kompliziert und vor allem Dingen in einem 70-Zeilen-Bereich am Stück. 👍 Die vier unterschiedlichen Fälle wären mir so gar nicht alle bewusst gewesen, und beim ersten Austesten hab ich mich erst gefragt, warum die gespiegelte Tastatur so langsam reagiert.

Begründung ist klar, das Zeichen wird erst beim Release ausgegeben, und das wiederum kommt daher, weil der Mirrorkey (bspw. die Leertaste) vielleicht noch nicht losgelassen ist, bevor man die nächste Taste drückt. Die Frage ist aber, will man das so haben? Was ist wichtiger, Verhinderung von falsch gespiegelten Tasten, oder direkte Darstellung von Zeichen? (Zudem werden auch Tastenwiederholungen verhindert.)
Also es ist jetzt schon exakt, nur etwas … gefühlt langsam. Mir fällt gerade aber auch keine bessere Lösung ein.

@Rojetto
Copy link
Owner Author

Rojetto commented Sep 24, 2021

@qwertfisch Freut mich, dass es dir gefällt :)

Was ist wichtiger, Verhinderung von falsch gespiegelten Tasten, oder direkte Darstellung von Zeichen?

Für mich ganz klar Verhinderung falsch gespiegelter Tasten (offensichtlich). Die Alternative ist, dass man beim schnellen Tippen permanent aufpassen muss. Kann mir nicht vorstellen, dass das besser ist. Das gleiche Problem hätten übrigens auch Mod-Tap-Tasten, die ich nach jetzigem Stand ähnlich implementiert hätte.

Zudem werden auch Tastenwiederholungen verhindert

Jupp, die aktuelle Implementierung macht Wiederholung gespiegelter Tasten nicht mit. Das ist aber nicht prinzipbedingt; bin der Meinung das sollte sich ergänzen lassen. Nach kurzer Abschätzung hatte ich aber entschieden das ist die Verkomplizierung der Zustandsmaschine nicht wert bis sich jemand beschwert.

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

No branches or pull requests

3 participants