lovac42 / ReMemorize

Addon: reschedule current reviewer card and siblings
GNU General Public License v3.0
13 stars 2 forks source link

Repositioning with a negative number in the Browser ⇒ due date in the past #13

Closed aleksejrs closed 5 years ago

aleksejrs commented 5 years ago

A cloze note that has cards:

Due - interval

Repositioning with a negative Start position:

The result is 2019-03-09, 9 days. 9 days is probably because of fuzz_days: true, but that doesn't seem to affect the date.

Now, the README does not say what exactly negative numbers mean. It has:

And a picture with no comment on what the result is: Reschedule Days: -9.

From the textual examples like p-5/15 - change due of previous card to May 15th, I'd think "-3" would change (after the midnight of Mar 11th-12th) to Mar 15th (or 14th), or at least Mar 3rd or Apr 3rd today, not Mar 9th.

lovac42 commented 5 years ago

I'm note sure I understand you. Today is past the 9th, so what day did you test this?

Negative value is for changing due date from today. So -1 would be due tommorrow, -2 is 2 days from today, and so on. This is the same as changing intervals. 1 for 1 day and 1IVL, 2 for 2 day and 2IVL, where as -1 would be tommorrow but keep IVL, and -2 is 2 days but keep IVL.

Fuzz does not affect negative value, it is only used with positive integers when changing interval.

If the document isn't clear, feel free to write a better one in the Wiki.

aleksejrs commented 5 years ago

I tested it just before and while filing this issue. At first the issue was because I didn't understand the result of fuzzing, but in the end only this was left.

I just created a new card in my "tmp" deck, and repositioned it to "-3". It's Due 2019-03-09 now, with ivl of 1 day. Same happens in the "de" deck.

{
    "automatic_mode": false,
    "browser": {
        "replace_brower_reposition": true,
        "replace_brower_reschedule": true,
        "skip_new_card_types_on_reposition": false
    },
    "bury_siblings": false,
    "default_days_on_ask": 7,
    "ef_hotkey": "Ctrl+Shift+M",
    "fg_hotkey": null,
    "forget_siblings": false,
    "fuzz_days": false,
    "hotkey": "Ctrl+M",
    "reschedule_sibling": false,
    "reschedule_siblings_on_again": true,
    "revlog_rescheduled": true,
    "sibling_boundary": 365,
    "sibling_days_max": 20,
    "sibling_days_min": 7
}

I also have add-ons like "PushParadox", "Cardistry", "set minimum ease", "autoLapseNewInterval", "Cloze Overlapper", but I don't think they could do anything on card creation.

lovac42 commented 5 years ago

If it's a new card, ReM runs it through Anki's initialization for new cards. This sets up the ease factor and interval so it avoid problems later on. Can you test this addon by itself first? I'm guessing CO might be the cause, but it can also be ALNI. Which version of anki btw? V1,V2?

aleksejrs commented 5 years ago

Anki Version 2.0.52 Qt 4.8.1 PyQt 4.9.1

ReMemorize: Rescheduler with sibling and logging (v1.1.1) 0.01MB. Updated 2019-02-25. Supports both Anki 2.0.x and 2.1.x.

AddonManager21 (Backported) 0.02MB. Updated 2019-03-10. Supports both Anki 2.0.x and 2.1.x.

  1. Moved addons/, created a new one.
  2. Installed Addon Manager21 (Backported)
  3. Restarted
  4. Installed ReMemorize: Rescheduler with sibling and logging (v1.1.1)
  5. Restarted
  6. Changed only → "replace_brower_reposition": true,
  7. Restarted
  8. Created a card.
  9. Repositioned to "-3" in the Browser.
Added   2019-03-12
First Review    2019-03-12
Latest Review   2019-03-12
Due 2019-03-09
Interval    1d
Ease    250%
Reviews 0
Lapses  0
Average Time    0,0s
Total Time  0,0s
Card Type   Card 1
Note Type   Basic
Deck    Default
Note ID 1552376920297
Card ID 1552376923091
Date    Type    Rating  Interval    Ease    Time
2019-03-12 @ 10:49  Resched 0   1d  250%    0,0s
  1. Deleted that card.
  2. Created a card.
  3. Opened it for review.
  4. Chose Study → reMemorize: Reschedule.
  5. Entered "-3".
Added   2019-03-12
First Review    2019-03-12
Latest Review   2019-03-12
Due 2019-03-15
Interval    1d
Ease    250%
Reviews 0
Lapses  0
Average Time    0,0s
Total Time  0,0s
Card Type   Card 1
Note Type   Basic
Deck    Default
Note ID 1552377200265
Card ID 1552377202497
Date    Type    Rating  Interval    Ease    Time
2019-03-12 @ 10:53  Resched 0   1d  250%    0,0s
lovac42 commented 5 years ago

I see what you are doing, the picture shows the reviewer so I though you mean the reviewer.

Ok, so I assumed Anki capped the input to positive values only when I reused the graphics, I believe it was 2.1??. It didn't occur to me that you could enter a negative values on 2.0. But reposition is for changing due dates only. You do not use negative values for reposition input.

Reviewer: -2, -1, 0 , 1, 2 -int: due date from today 0: forget card 1: new interval (and due date)

Browser: reschedule: (pos int) new interval (and due date) reposition: (pos int) due date from today

aleksejrs commented 5 years ago

OK, thanks.