davidsansome / tsurukame

Tsurukame is an unofficial WaniKani app for iOS. It helps you learn Japanese Kanji.
https://tsurukame.app
Apache License 2.0
264 stars 63 forks source link

[Bug] Keyboard not switching when speech-to-text #747

Open YuriDevAT opened 3 months ago

YuriDevAT commented 3 months ago

Description

As a user, I would like the speech input to switch automatically depending on the language the app expects my response in. Additionally, I would also like my Japanese answers to be generated in hiragana and not kanji so that they are accepted as correct by the app.

Problem

Currently I have to switch keyboards with my hands to make speech-to-text work. Besides, when using speech-to-text for the Japanese answer, it automatically gets generated in Kanji which is neither accepted by the app not the expected output. Spoken text should be generated in hiragana.

Expected behaviour

As a user, I expect the same behavior as I experience when using the keyboard. If the answer is to be in English, the keyboard behaves accordingly without the user having to take any additional steps. If the answer is to be in Japanese, the input is generated in Hiragana without further ado. The fewer steps the user has to take with their hands when using voice input, the better.

Screenshots

Below you can see three screenshots. The first is the Qwertz keyboard when the answer should be the meaning of the vocabulary, the second one is the vocabulary reading, where a hiragana input is expected, and the third the expected input behaviour in Japanese when writing the answer.

1. QWERTZ Keyboard

The blue icons for voice input show both the voice recording and the language that is expected. Although it is set to “DE” (I assume this is because of my location), English answers are accepted without any problems. The input field expects English, as non-users can see from the placeholder text, and the app is also only in English (the user will know this as soon as they download the app).

qwertz keyboard

2. Japanese Romaji Keyboard

The blue symbols when switching to voice input indicate the recording and the language that is expected. In this case, however, we want Japanese, which is made clear by the placeholder text. This works perfectly when only the keyboard is used, as can be seen in the third screenshot.

So this is where the problem occurs: When I speak Japanese, the input is set to a word that is very similar to English. I have to switch the keyboard manually by clicking on the world icon at the bottom left, selecting the Japanese Romaji keyboard and then the answers are displayed in Japanese. Unfortunately, the Kanji version is then immediately used instead of the Hiragana version, which is neither accepted by the app nor desired by the user.

Romaji keyboard

3. Correct Japanese Input when writing

Without using the speech-to-text function, the input is immediately set to Japanese Hiragana. The input and the switch from English to Japanese therefore works perfectly for keyboard users.

Correct Japanese Input when writing

Additional information

Being able to use the app via Apples Voice Control would be awesome of course, but we can achieve a lot already by taking small steps into the right direction.

This issues is related to #655 but goes into a lot more detail.

UInt2048 commented 3 months ago

Unfortunately, the Kanji version is then immediately used instead of the Hiragana version, which is neither accepted by the app nor desired by the user.

iOS does not offer a hiragana text to speech natively.

zjgoodman commented 3 months ago

For what it's worth, there's a review setting called switch to japanese keyboard that you can enable to fully switch to a japanese keyboard when the app expects japanese answers, and that keyboard WILL allow japanese voice input.

image

image

However this doesn't solve your problem of voice input becoming kanji instead of kana. So really this just becomes a problem of whether or not iOS offers such a feature.