[Userscript] WaniKani Lesson Filter

I much prefer Lesson Filter, but if anyone else needs a “quick fix” workaround, check out these scripts (it’s actually 2, one each for kanji and vocab) for cherry-picking lessons and kanji to add to your reviews directly from their item page:
[Userscript] WK lesson cherry-picker

Caveat is that using those scripts it actually skips the “lesson” altogether and adds the item directly to your review pile.

But if you’re like me and just need a quick way to add a few kanji to your reviews to alternate with your giant pile of vocab and don’t mind just studying them from the item page instead of having a “lesson” first it’s a decent workaround.


Those with a chromebook or android can use flaming durtles for a workaround.

Go to settings…“enable advanced settings”…“lesson advanced setting”…“priority”…“current level radicals and kanji first”


Another script with some of the Lesson filter functionality is Reorder Omega. Not as fast and intuitive, but you can set your priorities for each bach, and prioritize whatever you want. Don’t give up just yet ^^


i’ve looked at Reorder Omega, just tried it out as a replacement for Sonarius’ Reorder Buttons, which it does without any issues

for Lesson Filtering, it was not at all obvious to me how to configure it. i don’t see it replacing seanblue’s Lesson Filter for me

1 Like

It can’t be configured. But by switching between Speed Demon / None / and Sort by tipe, shouldn’t it be possible to make apper first what you want?

The only issue I can imagine is that radicals will always apper before kanjis? But radicals marathons are not that bad…

I must admit that I only have vocab lessons right now, and maybe I am thinking about the pre-update behaviour. I really hope it works as I remember, or my workflow will go in smoke in a couple of days

Omega could “easily” be configured to give you a certain number of items of each type. Although, if you don’t have enough of a certain type, then the batch will be smaller. Also, you would get the items in type order, but that might not be so bad.

For example, if you want to do 1 Radical, then 2 Kanji, then 3 Vocab, you could set up a preset with these actions

  1. Filter Type = Radical
  2. Filter First = 1
  3. Freeze & Restore
  4. Filter Type = Kanji
  5. Filter First = 2
  6. Freeze & Restore
  7. Filter Type = Vocab
  8. Filter First = 3

If Sean doesn’t end up updating this script I wouldn’t mind adding some extra features to provide the additional functionality you need


Thank you for correcting me! That’s indeed good news for Lesson Filter hardcore users ^^

I have never explored advanced functionalities, as I could get what I wanted with the basic sorts, or by filtering. So I went to check and… as soon as I start a lesson, I can see the “script menu” gear. But it disappears immediately after, leaving me unable to change any setting.

Incredible to what extent something that I didn’t know existed until 5 minutes ago can bother me… I love this update


Ah yes, I need to look at that now that WKOF has been updated. Thank you for mentioning it. For the time being you can also access the settings from the dashboard in the regular menu


Thank you all so much for providing me with workarounds!! I will play around with these today to see if i can get myself into a similar workflow. ありがとうございます :sob::sob::sob::pray::pray::pray:


Okay, so I think I got the filtering and shuffling (plus a new reset option) working. However, the UI is a complete mess and will require rework nearly from scratch. So for now the functionality is only available via the dev console. I will not be publishing the update officially until I have it fully working in the UI, but if you’re desperate to use it now you can access the code here. Instructions for how to use the dev console are in the OP.

EDIT: Scratch that. It works for a single batch, but I forgot to reapply the filter after completing the lesson quiz. :sweat_smile:


Best news this weekend. Can confirm the script works with console. Many thanks.

Console trick doesn’t work for me on Firefox. Nothing happens at all.

Are there errors in the console or just nothing happens?

Alright, as far as I can tell I got it working now. You can get the new unofficial console-only version here. Please let me know if you run into any issues. At this point I’ll be pivoting to the UI to try to get that working again, and once that is working I release the update officially to everyone. (It’s possible that won’t be for a bit since I don’t plan to work on this every day.)


Sorry mate, it was pilot error because I misinterpreted what a “null” value did. I just tried it again with 1.9.1 and I can confirm it does in fact work. Thanks for getting a fix out so quickly, I can now get back to my normal routine :grinning:


Looking for more feedback!

As already mentioned, I do have the core functionality of Lesson Filter working again. However, there are some compatibility issues if you use other scripts that change the queue, such as Reorder Omega. In Omega’s case, this happens just by it being installed, even if you don’t have it set to do anything during lessons. It’s possible that I can integrate with Reorder Omega by using the same library that Omega uses for manipulating the lesson queue, but some Lesson Filter behavior would have to change to accommodate that. So I wanted to poll a few more things to see if that’s desirable.

First I want to see how important compatibility with other scripts like Reorder Omega is by finding out how many people have a script like that installed or use it.

Do you use another script for lesson filtering or reordering? (e.g. Reorder Omega)
  • Yes, during the lesson learning portion (the part Lesson Filter is available in)
  • Yes, but only during the lesson quiz portion
  • No, but I use one for reviews / self-study / something else that’s not lesson-related
  • No, I do not have a script like this installed

0 voters

Next I want to know if people use Lesson Filter to make changes after completing at least one batch of lessons.

Do you Filter or Shuffle after having already completed the quiz for at least one lesson batch (without page refresh)?
  • Yes, sometimes I filter again after completing a batch
  • Yes, sometimes I shuffle again after completing a batch
  • No

0 voters

Related to this, right now if you filter multiple times (in a row or again after the quiz) the filters apply on top of each other. For example, if you first do radicals=0, kanji=5, vocab=20 and then do radicals=3, kanji=7, vocab=12, you actually end up with radicals=0, kanji=5, vocab=12. I want to know if this is desirable behavior or if it would be better to “throw out” the first filter and then apply the second filter to the whole/original set of lessons.

How do you want filtering multiple times with different values to work?
  • Apply the filters cumulatively (how it works today) as explained above
  • Throw away previous filters and apply the new filter to the whole queue
  • No preference / I won’t use filter more than once anyway

0 voters

Adding compatibility with Reorder Omega would require some changes (as alluded to in the above polls), but ultimately I don’t know which is more important.

Which of these is more important?
  • Lesson Filter and Reorder Omega work together
  • Filtering more than once applies cumulatively (option #1 above)
  • No preference / I don’t care about either of these things

0 voters

I’ll leave these polls open for the rest of the week and decide what to do this coming weekend.


i use a script to sort reviews by srs level, and one to sort lessons (to give me a mix of kanji and vocab, rather that 30 kanji followed by 120 vocab). as these are really quite different tasks, i reckon they are best left to separate scripts.

I very rarely filter more than once. It might happen if I change my mind at the last minute about the mix of items I want, so it would only happen before a quiz rather than after.

However, if I did filter more than once, I think it would be confusing if the effect of the filters were cumulative, if I’m understanding this correctly. Seems to me that this is not something users would expect to happen.

If multiple filters are cumulative, the user would need a way to back out of the process, or be stuck with (for example) zero of one category with no way to increase it after the initial filter.

1 Like

To be clear I’m not planning to add functionality beyond what Lesson Filter already does. It’s just that right now Reorder Omega breaks Lesson Filter if it’s enabled on the lesson page.

1 Like

Right, the fact that no one has complained about this in the past (since this is how it worked before the recent WaniKani update) indicates that it’s probably not common to filter more than once.

Well up until now the “reset” was to refresh the page. :slight_smile: But yes I agree with your point on the whole. I was thinking of making a new Reset button to allow this (exposing the method I already added behind the scenes). But just changing Filter to start from scratch would probably achieve the same goal while keeping things simpler.