{"id":15945589,"url":"https://github.com/ig3/anki-patch-nextrevivl","last_synced_at":"2025-05-14T11:15:47.719Z","repository":{"id":77186277,"uuid":"315726635","full_name":"ig3/anki-patch-nextrevivl","owner":"ig3","description":"Anki add-on to patch the V2 schedulre _nextRevIvl function","archived":false,"fork":false,"pushed_at":"2020-11-28T23:46:11.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-12-25T20:24:37.484Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ig3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-11-24T19:01:21.000Z","updated_at":"2020-11-28T23:46:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"4848df1f-e006-4f4e-8107-46aab0f1f291","html_url":"https://github.com/ig3/anki-patch-nextrevivl","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ig3%2Fanki-patch-nextrevivl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ig3%2Fanki-patch-nextrevivl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ig3%2Fanki-patch-nextrevivl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ig3%2Fanki-patch-nextrevivl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ig3","download_url":"https://codeload.github.com/ig3/anki-patch-nextrevivl/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239225764,"owners_count":19603162,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-07T09:04:14.315Z","updated_at":"2025-02-17T02:41:45.491Z","avatar_url":"https://github.com/ig3.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# anki-patch-nextrevivl\n\nFix/improve the calculation of next review interval in the V2 scheduler,\nfor Good and Easy cards.\n\n## Installation\n\n* Download patch-nextrevivl.ankiaddon\n* Start Anki and open Tools -\u003e Add-ons\n* Drag the downloaded .ankiaddon file onto the add-ons list\n* Restart Anki\n\n## Changes\n\nThis add-on monkey patches _nextRevIvl in the V2 scheduler to change the\n'current interval' parameter to _constrainedIvl to be the current interval,\nfor both Good and Easy. By default, for Good it is the new Hard interval\nand for Easy it is the new Good interval.\n\nWith this change, the next interval for a review card is at least 1 day\nlonger than the current interval for all cases except Hard with Hard\nInterval less than 1, in which case the minimum interval is 1 day. This\nchanges the interval for Good and Easy but the interval for Hard is\nunchanged.\n\nThis fixes a fault with Good when Hard Interval is 1 or more, in which case\nthe new interval was at least 2 days greater than the current interval. At\nlarger intervals the difference is insignificant, but at shorter intervals\nwith a low card factor, this leads to intervals increasing in steps of two\ndays, which is quite noticable in the stats graph of intervals, and may be\ntoo much for a just learned card.\n\nThis fixes a fault with Good when Hard Interval is less than 1, with a low\ncard factor and low current interval, in which case the interval becomes\nstuck at 2 days. With the default scheduler, the only way out of this is to\nselect Easy until the interval and card factor increase sufficiently that\nthe next interval for Good is more than 1 day longer than the current\ninterval.\n\n## Motivation\n\nBy default, Hard Interval is greater than 1 and the interval for Good\nincreases by at least 2 days. At short intervals (e.g. 1 or 2 days) the\nincrease really should be only 1 day. My memory is poor and the jump from 1\nday (for a just learned card) to 3 days was too much.\n\nMore significant and the immediate motivation for me making this add-on is\nwhen I changed Hard Interval to 90% so that the interval would gradually\ndecrease for persistently Hard cards. With this change, I ended up\naccumulating cards at interval of 2 days. With interval 2 days, the new\ninterval for Good was also 2 days - no progress. The only way to progress\nwas Easy.\n\nThese problems arise because in the default scheduler, the minimum new\ninterval for Good is one day more than the new interval for Hard (i.e. the\nnew interval for Hard is calculated and this + 1 day is the minimum new\ninterval for Good. The minimum new interval for Hard is 1 day more than the\ncurrent interval if Hard Interval is set to 1 or more. If Hard Interval is\nless than 1, then the minimum interval for Hard is 1 day. In this latter\ncase, the minimum interval for Good is 2 days and with a low card factor\n(minimum is 130%) Good will not increase the interval from 2 days to 3\ndays, so it remains stuck at 2 days.\n\nFor me, this allows me to have Hard Interval a little less than 1 (I like\nabout 90%, so that I see cards that are persistently Hard at progressively\nshorter intervals, rather than longer intervals). For decks with Hard\nInterval greater than 1 (e.g. default configuration), then the increments\nin interval are, initially, a little more gradual.\n\nAlternatives to this are: set Hard Interval to 1 or more and configure\nlearning steps out to several days, so that increments of review intervals\nof 2 days are reasonable; Set Hard Interval less than 1 and use the Easy\nbutton to increase the interval when it is low.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fig3%2Fanki-patch-nextrevivl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fig3%2Fanki-patch-nextrevivl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fig3%2Fanki-patch-nextrevivl/lists"}