davidsansome / tsurukame

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

Feature suggestion: show all readings in kanji #230

Closed timmy-lee closed 4 years ago

timmy-lee commented 4 years ago

Something like this when looking up kanji: image

It looks like this only appears when looking up specific kanji and not in the lessons. So as far as this request is concerned, having that feature parity would be nice, but having it appear in the lessons would be even nicer.

timmy-lee commented 4 years ago

@davidsansome If this sounds like a feature that you think would be a nice addition, I'd be happy to try tackling it, familiarize myself with this project, and help with future contributions. 😄

UInt2048 commented 4 years ago

While I am not him, I was contemplating this while opening #218. Hopefully this actually is implemented, (but maybe not in Lessons) as this is standard WK (and AlliCrab) behavior

davidsansome commented 4 years ago

WaniKani marks these non-primary Kanji readings as wrong, which is why they're not shown during lessons so you don't learn incorrect answers. I'd be happy to show these other readings outside of lessons. We could maybe show them during lessons as well if we made it very clear which one is the "correct" Kanji reading, and that the other one is only being shown for information purposes and not as part of the lesson.

The code that hides non-primary readings is here: https://github.com/davidsansome/tsurukame/blob/master/ios/SubjectDetailsView.swift#L74 and https://github.com/davidsansome/tsurukame/blob/master/ios/SubjectDetailsView.swift#L142. You'd probably need to add a showNonPrimaryReadings bool to SubjectDetailsViewController (https://github.com/davidsansome/tsurukame/blob/master/ios/SubjectDetailsViewController.m#L43) which we can set to false in lessons and true elsewhere.

Do you want to have a go at implementing that? I can answer any more questions if you have them!

timmy-lee commented 4 years ago

By enabling the primary readings in the way you mentioned, I get something like this: image

But I was thinking more of something like this (the readings themselves haven't been sorted yet): image While having the non-primary reading(s) in light gray text or having the primary reading in bold text. These changes will affect vocabularies too, but if I'm not mistaken, we can easily tell them apart using TKMReading's type attribute. What do you think @davidsansome?

sciencemanx commented 4 years ago

another important note onyomi should be katakana and kunyomi + nanori should be in hiragana. Probably the "suggested" reading should be at the top

sciencemanx commented 4 years ago

another thing to consider is how much vertical space is consumed from having a section for each reading

UInt2048 commented 4 years ago

I think that non-primary readings should still be shown in a different shade to tell them apart.