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

[DRAFT] Make Dvorak number row aware, and add press and hold symbols #756

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

FynnFreyer
Copy link

@FynnFreyer FynnFreyer commented Jan 29, 2023

Dvorak Improvements

This is a draft for dealing with issue #712

I tried it out with English (US + UK), German and Spanish (does not solve #394 though, because that requires additional keys).

This works more or less, but as it stands, there are two problems/discussion points with this draft. Since I don't know how to approach that, I'm opening this, in case someone has a useful pointer for me, and to discuss, whether these problems are dealbreakers.

Hard Coded Currency Symbol

The currency symbol on the 'e' is set to the '€' sign, because that's what I need for my German layout, but it should be a '$' on the US keyboard (and probably a '£' sign on the UK keyboard). The symbol layer is unaffected by this. QWERTY variant keyboards (cf. US/UK) also don't account for that on the first layer as far as I can see, so maybe just putting a '$' as default and calling it a day would be good enough, but that's not for me to decide.
In case it is not, I don't think it would be feasible to define multiple Dvorak variants because of the additional maintenance burden, but I don't know if there's a way to use a placeholder value instead of the symbol.

There is currencyKeyStyle, but I think it can't be used as a value for keyHintLabel or additionalMoreKeys.

Another thing I considered was adding a separate file for the 'e' key and including that.
In there, one could switch on the selected language, but I don't know whether that is even possible, and if so it still seems very unclean.

Design

The switching 'logic' is based off of the way the QWERTY and QWERTZ keyboards are doing it, but because Dvorak is a little special with the first three symbol keys on the upper row (defined in res/xml(sw600dp)?/keys_dvorak_123.xml) those get a little unwieldy with nested switches.

A cleaner way might be to just add new files (e.g. keys_dvorak_123_numrow.xml and keys_dvorak_123_no_numrow.xml) and including those in keys_dvorak_123.xml based on a switch.

If requested, I can make this change.


As an addendum:
The QWERTZ keyboard is splitting left and right row halves, I don't know whether this is for limiting the unwieldiness of the files, or some split functionality, that I haven't discovered yet, but if that is a more suitable way to organize these files, I can certainly do that as well.

@FynnFreyer FynnFreyer marked this pull request as ready for review January 31, 2023 13:05
@FynnFreyer FynnFreyer marked this pull request as draft January 31, 2023 13:06
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

Successfully merging this pull request may close these issues.

None yet

1 participant