This script feels a bit like cheating and yet like absolutely the right thing to use I dread kanji-only reviews and always questioned a bit the benefit of reviewing basically just part of a word, so I appreciate you making this very much - thank you!
I have set to show only unlocked vocabulary, though, because I think for the first few reviews at least it’s better to focus on actual shape recognition but have long term retention work with context.
Possible feature requests (no clue how difficult those are to implement):
don’t show list for kun’yomi reviews → I should recognize this kanji on its own
hide list by default and toggle list via button and/or hotkey → making it an optional hint system
only show list when either reading or meaning is asked? → might be interesting for those who do 1x1 reviews, not sure
For this one, I’m not certain if there’s a way for the script itself to know if it’s an kun or on review. Maybe there is, as I don’t know too much about what information is available to scripts.
I’m not certain offhand about implementing hotkeys. I’d have to figure out how to be sure it’s not a hotkey used by something else at the very least. But I can add an option that blurs the text until you move the mouse over the vocabulary bar.
I don’t know the best way to know if it’s asking meaning or reading, but I’ve found a usable method to implement.
I’m unable to reproduce this. Do you know if you were on the latest version of the script at the time? (I figure you probably were.) The worst bugs are the ones I can’t reproduce to determine the source of the issue.
Isn’t there already a userscript that gives you a hint when you got no idea? @ChristopherFritz Maybe a combination could be useful, where the vocab only show’s up, after you toggle it or something when you got no idea on your own.
EDIT: just read the update that you already did that. Maybe I should finish reading a thread before I reply. ^^’
Remembering kanji by vocabulary is something I’m doing quite often on my own, which is why the combination of kanji/vocab from WK works so well for me. But as @rfindley said, I’d also be worried for myself, that I’d start having trouble recognizing the kanji by themselves and therefore in any new kanji-combinations from vocab I don’t yet know.
The new option to blur until mouse-over is in this direction, so there is that.
This is definitely an understandable concern.
For me, I’m not able to learn the kanji in isolation very well. But if it’s in words that I see when reading, it’s a lot easier for me. From there, I start to notice the same kanji used in other words.
Results will definitely vary between different types of learners.
I do recall seeing mention of that script. I’ll have to check it out sometime to see what they’re using.
At the very learn, I expect the API makes it clear what answers are valid, as well as which answers on on, kun, etc. So checking to see which list the expected answer is in may also be a viable implementation if there isn’t something better available.
The current item in $.jStorage.get('currentItem') has a .emph propery. I’m not sure what its intended purpose is, but it seems to always say either kunyomi or onyomi for kanji
It’s the reading category that WK emphasizes for that kanji. So, any of the readings in the corresponding category (on, kun, or nanori) will be accepted in the kanji review.
Here, 細い and 細かい are not displayed because they don’t use the さい reading. Only vocabulary using the reading さい or rendaku’d ざい are shown.
If you prefer that all words show regardless of reading, you can turn this feature off (change the setting to false):
// Only show vocabulary with a reading matching the readings WaniKani is asking for (kunyomi, onyomi, or nanori).
const MATCH_VOCABULARY_READING_TO_KANJI_ANSWER = true
Note: Due to implementation, if a vocabulary word uses the expected reading as part of the word other than the kanji being reviewed, it will still show.
Reading Review: Hide Vocabulary Based on Answer’s Reading Type
You can now exclude the list for kanji based on the reading type of the answer. Do so by changing the appropriate setting to false.
// Show vocabulary words for kanji based on reading WaniKani is asking for. Must be true or false.
const SHOW_FOR_KUNYOMI = true
const SHOW_FOR_ONYOMI = true
const SHOW_FOR_NANORI = true
Disclaimer
Once again, all options are in the source code, so updating wipes out any you’ve changed.
I’ve been using this for a while now and I love the idea, but I’m having problems with missing inputs when it tries to load the vocabularies for the next reviews. I think it would be way better if it loaded everything before answering the first review. Maybe take inspirations from @skatefriday’s code? The concepts seem similar so I don’t know if you could do that [Userscript] Simple Show Context Sentence
This one is difficult for me, as I’m not certain of any way to reliably (or even unreliably) reproduce it, so I don’t know where specifically the issue occurs.
Is it potentially happening on any review, or only after ten reviews? (I’m not familiar with whether WaniKani adds in a new review after one is completed within a session, or if it waits until a set of ten is completed before fetching another set of ten.)
Just for reference, the Open Framework is what displays that pop-up if a server request (on behalf of a script) takes more than 1sec to complete. It’s interesting that it’s happening on the ‘subjects’ info, because that should generally be coming from browser cache after the first time loading from the server. I wonder if your cache is messed up…