diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 53578ba35..d334540fb 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -148,7 +148,7 @@ user1823 <92206575+user1823@users.noreply.github.com> Gustaf Carefall virinci snowtimeglass -brishtibheja +brishtibheja <136738526+brishtibheja@users.noreply.github.com> Ben Olson Akash Reddy Lucio Sauer diff --git a/rslib/src/notetype/styling.css b/rslib/src/notetype/styling.css index 3872575fb..b14c63653 100644 --- a/rslib/src/notetype/styling.css +++ b/rslib/src/notetype/styling.css @@ -1,6 +1,7 @@ .card { font-family: arial; font-size: 20px; + line-height: 1.5; text-align: center; color: black; background-color: white; diff --git a/rslib/src/scheduler/reviews.rs b/rslib/src/scheduler/reviews.rs index 53802fb9a..0a7f32032 100644 --- a/rslib/src/scheduler/reviews.rs +++ b/rslib/src/scheduler/reviews.rs @@ -34,11 +34,12 @@ impl Card { let new_due = (today + days_from_today) as i32; let fsrs_enabled = self.memory_state.is_some(); let new_interval = if fsrs_enabled { - self.interval.saturating_add_signed(new_due - self.due) - } else if force_reset || !matches!(self.ctype, CardType::Review | CardType::Relearn) { - days_from_today - } else { self.interval + .saturating_add_signed(new_due - self.original_or_current_due()) + } else if force_reset || !matches!(self.ctype, CardType::Review | CardType::Relearn) { + days_from_today.max(1) + } else { + self.interval.max(1) }; let ease_factor = (ease_factor * 1000.0).round() as u16; @@ -48,7 +49,7 @@ impl Card { fn schedule_as_review(&mut self, interval: u32, due: i32, ease_factor: u16) { self.original_position = self.last_position(); self.remove_from_filtered_deck_before_reschedule(); - self.interval = interval.max(1); + self.interval = interval; self.due = due; self.ctype = CardType::Review; self.queue = CardQueue::Review; diff --git a/rslib/src/scheduler/states/review.rs b/rslib/src/scheduler/states/review.rs index e7591bb25..853cdf0a6 100644 --- a/rslib/src/scheduler/states/review.rs +++ b/rslib/src/scheduler/states/review.rs @@ -83,7 +83,7 @@ impl ReviewState { } else { let (minimum, maximum) = ctx.min_and_max_review_intervals(ctx.minimum_lapse_interval); let interval = ctx.with_review_fuzz( - (self.scheduled_days as f32) * ctx.lapse_multiplier, + (self.scheduled_days as f32).max(1.0) * ctx.lapse_multiplier, minimum, maximum, ); @@ -211,7 +211,7 @@ impl ReviewState { } fn passing_nonearly_review_intervals(self, ctx: &StateContext) -> (u32, u32, u32) { - let current_interval = self.scheduled_days as f32; + let current_interval = (self.scheduled_days as f32).max(1.0); let days_late = self.days_late().max(0) as f32; // hard @@ -251,8 +251,8 @@ impl ReviewState { /// FIXME: this needs reworking in the future; it overly penalizes reviews /// done shortly before the due date. fn passing_early_review_intervals(self, ctx: &StateContext) -> (u32, u32, u32) { - let scheduled = self.scheduled_days as f32; - let elapsed = (self.scheduled_days as f32) + (self.days_late() as f32); + let scheduled = (self.scheduled_days as f32).max(1.0); + let elapsed = self.elapsed_days as f32; let hard_interval = { let factor = ctx.hard_multiplier; diff --git a/ts/reviewer/reviewer.scss b/ts/reviewer/reviewer.scss index 1248836ae..019cf1a81 100644 --- a/ts/reviewer/reviewer.scss +++ b/ts/reviewer/reviewer.scss @@ -6,6 +6,7 @@ hr { background-color: vars.palette(darkgray, 0); + margin: 1em 0; } body {