Greasy Fork is available in English.

WaniKani Review Audio Tweak

allow audio to be played after review meaning questions, when reading has been previously answered correctly. also includes enable autoplay when incorrect setting (default: off).

// ==UserScript==
// @name          WaniKani Review Audio Tweak
// @namespace     https://www.wanikani.com
// @description   allow audio to be played after review meaning questions, when reading has been previously answered correctly. also includes enable autoplay when incorrect setting (default: off).
// @version       0.1.0
// @include       http*://www.wanikani.com/review/session*
// @run-at        document-end
// @grant         none
// ==/UserScript==

/*global $, console, additionalContent*/

(function () {
    'use strict';
    // SETTINGS //
    var enableAutoPlayWhenIncorrect = false; // change to 'true' to enable
    /////
    function itemStat(item) {
        var itemStatKey = (item.voc ? "v" : item.kan ? "k" : "r") + item.id;
        return ($.jStorage.get(itemStatKey) || {});
    }
    additionalContent.audio = function (audioAutoplay) {
        var buttonElem, liElem, currentItem, questionType, audioElem;
        currentItem = $.jStorage.get("currentItem");
        questionType = $.jStorage.get("questionType");
        $("audio").remove();
        if (currentItem.aud && (questionType === "reading" || itemStat(currentItem).rc >= 1)) {
            liElem = $("#option-audio");
            buttonElem = liElem.find("button");
            if (!enableAutoPlayWhenIncorrect && !$("#answer-form fieldset").hasClass("correct")) {
                audioAutoplay = false;
            }
            buttonElem.removeAttr("disabled");
            audioElem = $("<audio></audio>", { autoplay: audioAutoplay }).appendTo(liElem.removeClass("disabled").children("span"));
            $("<source></source>", {
                src: "https://s3.amazonaws.com/s3.wanikani.com/audio/" + currentItem.aud,
                type: "audio/mpeg"
            }).appendTo(audioElem);
            $("<source></source>", {
                src: "https://s3.amazonaws.com/s3.wanikani.com/audio/" + currentItem.aud.replace(".mp3", ".ogg"),
                type: "audio/ogg"
            }).appendTo(audioElem);
            audioElem[0].addEventListener("play", function () {
                buttonElem.removeClass("audio-idle").addClass("audio-play");
            });
            audioElem[0].addEventListener("ended", function () {
                buttonElem.removeClass("audio-play").addClass("audio-idle");
            });
            buttonElem.off("click");
            buttonElem.on("click", function () {
                audioElem[0].play();
            });
            liElem.off("click");
            liElem.on("click", function () {
                if ($("#user-response").is(":disabled")) {
                    $("audio").trigger("play");
                }
            });
        }
    };
    console.log('WaniKani Review Audio Tweak: script load end');
}());