mirror of
https://github.com/ankitects/anki.git
synced 2025-09-18 22:12:21 -04:00
Add by creation date review sort order (#2957)
* Add by creation date review sort order * Order by template after nid in ReverseAdded of filtered decks too
This commit is contained in:
parent
ee68da51b0
commit
eab5c02251
5 changed files with 18 additions and 1 deletions
|
@ -81,6 +81,8 @@ message DeckConfig {
|
||||||
REVIEW_CARD_ORDER_EASE_DESCENDING = 6;
|
REVIEW_CARD_ORDER_EASE_DESCENDING = 6;
|
||||||
REVIEW_CARD_ORDER_RELATIVE_OVERDUENESS = 7;
|
REVIEW_CARD_ORDER_RELATIVE_OVERDUENESS = 7;
|
||||||
REVIEW_CARD_ORDER_RANDOM = 8;
|
REVIEW_CARD_ORDER_RANDOM = 8;
|
||||||
|
REVIEW_CARD_ORDER_ADDED = 9;
|
||||||
|
REVIEW_CARD_ORDER_REVERSE_ADDED = 10;
|
||||||
}
|
}
|
||||||
enum ReviewMix {
|
enum ReviewMix {
|
||||||
REVIEW_MIX_MIX_WITH_REVIEWS = 0;
|
REVIEW_MIX_MIX_WITH_REVIEWS = 0;
|
||||||
|
|
|
@ -20,7 +20,7 @@ pub(crate) fn order_and_limit_for_search(
|
||||||
FilteredSearchOrder::IntervalsDescending => "ivl desc",
|
FilteredSearchOrder::IntervalsDescending => "ivl desc",
|
||||||
FilteredSearchOrder::Lapses => "lapses desc",
|
FilteredSearchOrder::Lapses => "lapses desc",
|
||||||
FilteredSearchOrder::Added => "n.id, c.ord",
|
FilteredSearchOrder::Added => "n.id, c.ord",
|
||||||
FilteredSearchOrder::ReverseAdded => "n.id desc",
|
FilteredSearchOrder::ReverseAdded => "n.id desc, c.ord asc",
|
||||||
FilteredSearchOrder::Due => {
|
FilteredSearchOrder::Due => {
|
||||||
let current_timestamp = timing.now.0;
|
let current_timestamp = timing.now.0;
|
||||||
temp_string = format!(
|
temp_string = format!(
|
||||||
|
|
|
@ -711,6 +711,8 @@ enum ReviewOrderSubclause {
|
||||||
RelativeOverduenessFsrs {
|
RelativeOverduenessFsrs {
|
||||||
timing: SchedTimingToday,
|
timing: SchedTimingToday,
|
||||||
},
|
},
|
||||||
|
Added,
|
||||||
|
ReverseAdded,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl fmt::Display for ReviewOrderSubclause {
|
impl fmt::Display for ReviewOrderSubclause {
|
||||||
|
@ -737,6 +739,8 @@ impl fmt::Display for ReviewOrderSubclause {
|
||||||
format!("extract_fsrs_relative_overdueness(data, due, {today}, ivl, {next_day_at}) desc");
|
format!("extract_fsrs_relative_overdueness(data, due, {today}, ivl, {next_day_at}) desc");
|
||||||
&temp_string
|
&temp_string
|
||||||
}
|
}
|
||||||
|
ReviewOrderSubclause::Added => "nid asc, ord asc",
|
||||||
|
ReviewOrderSubclause::ReverseAdded => "nid desc, ord asc",
|
||||||
};
|
};
|
||||||
write!(f, "{}", clause)
|
write!(f, "{}", clause)
|
||||||
}
|
}
|
||||||
|
@ -771,6 +775,8 @@ fn review_order_sql(order: ReviewCardOrder, timing: SchedTimingToday, fsrs: bool
|
||||||
}]
|
}]
|
||||||
}
|
}
|
||||||
ReviewCardOrder::Random => vec![],
|
ReviewCardOrder::Random => vec![],
|
||||||
|
ReviewCardOrder::Added => vec![ReviewOrderSubclause::Added],
|
||||||
|
ReviewCardOrder::ReverseAdded => vec![ReviewOrderSubclause::ReverseAdded],
|
||||||
};
|
};
|
||||||
subclauses.push(ReviewOrderSubclause::Random);
|
subclauses.push(ReviewOrderSubclause::Random);
|
||||||
|
|
||||||
|
|
|
@ -105,6 +105,14 @@ export function reviewOrderChoices(fsrs: boolean): Choice<DeckConfig_Config_Revi
|
||||||
label: tr.deckConfigSortOrderRandom(),
|
label: tr.deckConfigSortOrderRandom(),
|
||||||
value: DeckConfig_Config_ReviewCardOrder.RANDOM,
|
value: DeckConfig_Config_ReviewCardOrder.RANDOM,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: tr.decksOrderAdded(),
|
||||||
|
value: DeckConfig_Config_ReviewCardOrder.ADDED,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: tr.decksLatestAddedFirst(),
|
||||||
|
value: DeckConfig_Config_ReviewCardOrder.REVERSE_ADDED,
|
||||||
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,6 +23,7 @@ const i18n = setupI18n({
|
||||||
ModuleName.DECK_CONFIG,
|
ModuleName.DECK_CONFIG,
|
||||||
ModuleName.KEYBOARD,
|
ModuleName.KEYBOARD,
|
||||||
ModuleName.STUDYING,
|
ModuleName.STUDYING,
|
||||||
|
ModuleName.DECKS,
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue