KeymashGame / game-tracker

Official Bugtracking Repository for all Keyma.sh issues
6 stars 0 forks source link

French language, typing a letter with a "chapeaux" will affect your accuracy. #80

Closed DefinitelyNotJah closed 3 years ago

DefinitelyNotJah commented 3 years ago

Describe the bug && Steps to Reproduce In French language (using default keyboard layout for typing French, AZERTY), in order to type a letter with a chapeaux (â, ê, î, û, ô, etc...), you have to type ^ (Well, it's not exactly ^, but a ^ with a line under it, check accompanied image. To recreate, tap the letter right beside P once in AZERTY) then followed by the letter you want to add the chapeaux to (for example A). Video example : https://user-images.githubusercontent.com/63221794/127390307-18961cf8-9b31-4bc9-9948-5e9a9bf8e47a.mp4

Expected behavior The chapeaux ^ (not the regular ^) should not count as a mistake in order for the player to have an accurate representation of accuracy & mistake count. Although there is alternative methods to type letters with chapeaux (â, ê, î, û, ô, etc...), most of those methods are not standard and involve using the AZERTY ISO, LATIN-9 layout which is not commonly used by French typists. 2021-07-28_21-27

Screenshots 2021-07-28_21-09

Desktop (please complete the following information):

CameronCT commented 3 years ago

I have gathered some information on this and why I can't really do too much about this for the moment.

  1. There is a specific keycode that is considered "dead". Which apparently most "dead keys" are considered keyCode 207
  2. Keycode 207 is also registered for all keypresses on Android

https://github.com/Miodec/monkeytype/issues/450

This kind of cycles through the same issues, I'd have to convert everything to be Keycode based and right now it's not a high priority. However even with Keycodes, this could potentially break Android so I'm left with a double-edged sword on what I can and can't do with this issue.

If you know of any public solutions I'm all ears.

DefinitelyNotJah commented 3 years ago

I would simply ignore "keystroke":"gouve^" in wpm/error calculation in French dictionary/quotes/matches unless it is typed twice consecutively in order to avoid the letter ^ (do not mistake it for this) not counting as a mistake. Also, I don't know if this helps but ^'s keycode is 219 not 207. (if I interpreted your meaning wrong, then I'm sorry for saying something useless lol) 2021-07-28_21-58

CameronCT commented 3 years ago

You can't really ignore "gouve" since it pulls the last character into its validation. Not quite too sure on an approach for this yet.

CameronCT commented 3 years ago

Inactive issue - it's hard to create support for these keyboards. One day I will look into making a proper solution, but it's hard to find a solution that is appropriate for all devices including tablets, mobile devices (including Androids)