Instantly share code, notes, and snippets.

Embed
What would you like to do?
Memrise Turbo advances to the next question as soon as you finish typing the correct answer, without any delays or even the need for you to press Enter. Ever. It enables you to water your items at the speed of your fingers. It works for all types of questions — no more pauses. Based on MemriseTurbo by infofarmer: https://github.com/infofarmer/me…
// ==UserScript==
// @name Memrise Turbo
// @namespace https://gist.github.com/AntonioRigo/a0fef624c672b8e992665204960019a5
// @description Makes Memrise faster
// @match https://www.memrise.com/course/*/garden/*
// @match https://www.memrise.com/garden/water/*
// @match https://www.memrise.com/garden/review/*
// @match https://www.memrise.com/course/*/*/garden/*
// @version 0.2.5
// @updateURL https://gist.github.com/AntonioRigo/a0fef624c672b8e992665204960019a5/raw/443d30d11a12a47b8c0a4d6a883a516ca28bc7c9/memrise-turbo.user.js
// @downloadURL https://gist.github.com/AntonioRigo/a0fef624c672b8e992665204960019a5/raw/443d30d11a12a47b8c0a4d6a883a516ca28bc7c9/memrise-turbo.user.js
// @grant none
// ==/UserScript==
var oldstart = MEMRISE.garden.feedback.start;
MEMRISE.garden.feedback.start = function (){
if (MEMRISE.garden.box.state === 'choosing-mem') {
oldstart(1);
}else{
MEMRISE.garden.box.next_press();
}
};
$('body').on('input', function(e) {
try {
if ($(e.target).is('input')) {
var g = MEMRISE.garden;
var b = g.box;
var s = g.scoring.score_response( b.$input.value(), b.accepted, b.learnable.is_typing_strict );
if (s === 1) {
MEMRISE.garden.box.check();
}
}
} catch (err) {
console.log('error - falling back to default behavior', err);
}
});
// always let audio play in full
MEMRISE.audioPlayer.stop = $.noop;
MEMRISE.audioPlayer.stopAfter = $.noop;
// disable pausing (especially automatic)
MEMRISE.garden.pause = $.noop;
// always disable timer
$("div.garden-timer div.txt").bind("DOMSubtreeModified", function() {
MEMRISE.garden.timer.cancel();
});
// disable alert on exit
MEMRISE.garden.prevent_accidental_unloading = $.noop;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment