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

Random Lesson Order #201

Open Phrim1 opened 5 years ago

Phrim1 commented 5 years ago

It would be nice to be able to sort Lessons by random instead of some combination of Radical/Kanji/Vocab. This is implemented on the web with the option "Lesson Ordering: Shuffled".

zebala commented 4 years ago

+1 to this. Recently I've come to hate the order in which WK gives the items, since it groups vocab using the same kanji together. This backfires in reviews as you may fail one but then remember the other ones even though you didn't. IMO it's better to sprinkle them. Also makes reviews and lessons a bit more interesting, and you don't get lots of similar items together.

UInt2048 commented 4 years ago

I was thinking we could do something like the below image, and have the cells be able to move between the two sections. Obviously, shuffling just vocabulary would do nothing, but the idea is that the cells would be able to move between both.

UI Mockup ![UI Mockup](https://user-images.githubusercontent.com/46784000/75450389-535d0d00-5934-11ea-96d9-bc0c3e7fd34c.png)

If you're curious, to create this image, I created a demo commit: https://github.com/turtlemaster19/tsurukame/commit/0d6e878d7de8d3fca17dc5965ad4d45ccbb4da6f Actually attempting to run that would fail, though, since it would mess up the code expecting three cells in one section, so I have no idea...

zebala commented 4 years ago

Looks pretty nice! Wouldn't the vocab shuffling still change the order of the vocab items? Assuming we don't have any pending radicals or kanji.

UInt2048 commented 4 years ago

@zebala That might actually be a good idea if that were implemented. We would then just completely randomise anything in the shuffle group, and keep our current order outside of it...

Phrim1 commented 4 years ago

That looks awesome!

zebala commented 4 years ago

I wonder if I wanted to do some vocab lessons from the previous level shuffled could be handled. Like in WK "Ascending level then shuffled". Basically if there is vocab spanning multiple levels.

UInt2048 commented 4 years ago

@zebala Good point. I think if we implement shuffling, level should be taken care of first. For example, if prioritize current level is on, that would take precedence over the other shuffling things.