Skip to main content

yazi_fs/
sorting.rs

1use serde::{Deserialize, Serialize};
2use strum::{EnumString, IntoStaticStr};
3
4// --- by
5#[derive(
6	Clone, Copy, Debug, Default, Deserialize, EnumString, Eq, IntoStaticStr, PartialEq, Serialize,
7)]
8#[serde(rename_all = "kebab-case")]
9#[strum(serialize_all = "kebab-case")]
10pub enum SortBy {
11	#[default]
12	None,
13	Mtime,
14	Btime,
15	Extension,
16	Alphabetical,
17	Natural,
18	Size,
19	Random,
20}
21
22// --- fallback
23#[derive(
24	Clone, Copy, Debug, Default, Deserialize, EnumString, Eq, IntoStaticStr, PartialEq, Serialize,
25)]
26#[serde(rename_all = "kebab-case")]
27#[strum(serialize_all = "kebab-case")]
28pub enum SortFallback {
29	#[default]
30	Alphabetical,
31	Natural,
32}