group alt options

This commit is contained in:
yggverse 2025-06-25 12:52:03 +03:00
parent 9b8485c494
commit 44a1f7bdec
2 changed files with 34 additions and 22 deletions

View file

@ -166,16 +166,16 @@ impl Storage {
r.push({
let mut l = format!("=> {}/", encode(&dir.name)); // link
let mut a = Vec::new(); // alt
if dc.is_count {
if dc.alt.is_count {
a.push(dir.count.to_string());
}
if dc.time.is_accessed {
if dc.alt.time.is_accessed {
a.push(self.t(dir.meta.atime()))
}
if dc.time.is_created {
if dc.alt.time.is_created {
a.push(self.t(dir.meta.ctime()))
}
if dc.time.is_modified {
if dc.alt.time.is_modified {
a.push(self.t(dir.meta.mtime()))
}
// @TODO modified, accessed, created etc.
@ -207,16 +207,16 @@ impl Storage {
r.push({
let mut l = format!("=> {}", encode(&file.name)); // link
let mut a = Vec::new(); // alt
if fc.is_size {
if fc.alt.is_size {
a.push(b(file.meta.size()))
}
if fc.time.is_accessed {
if fc.alt.time.is_accessed {
a.push(self.t(file.meta.atime()))
}
if fc.time.is_created {
if fc.alt.time.is_created {
a.push(self.t(file.meta.ctime()))
}
if fc.time.is_modified {
if fc.alt.time.is_modified {
a.push(self.t(file.meta.mtime()))
}
if !a.is_empty() {

View file

@ -4,27 +4,35 @@ pub struct Time {
pub is_modified: bool,
}
pub struct DirAlt {
pub time: Time,
pub is_count: bool,
}
pub struct DirSort {
pub time: Time,
pub is_count: bool,
}
pub struct FileAlt {
pub time: Time,
pub is_size: bool,
}
pub struct FileSort {
pub time: Time,
pub is_size: bool,
}
pub struct Dir {
pub is_count: bool,
pub alt: DirAlt,
pub is_reverse: bool,
pub sort: DirSort,
pub time: Time,
}
pub struct File {
pub alt: FileAlt,
pub is_reverse: bool,
pub is_size: bool,
pub sort: FileSort,
pub time: Time,
}
pub struct ListConfig {
@ -63,12 +71,14 @@ impl ListConfig {
}
Ok(Self {
dir: Dir {
time: Time {
is_accessed: config.list_dir_accessed,
is_created: config.list_dir_created,
is_modified: config.list_dir_modified,
alt: DirAlt {
time: Time {
is_accessed: config.list_dir_accessed,
is_created: config.list_dir_created,
is_modified: config.list_dir_modified,
},
is_count: config.list_dir_count,
},
is_count: config.list_dir_count,
is_reverse: config.list_dir_reverse,
sort: DirSort {
time: Time {
@ -80,13 +90,15 @@ impl ListConfig {
},
},
file: File {
time: Time {
is_accessed: config.list_file_accessed,
is_created: config.list_file_created,
is_modified: config.list_file_modified,
alt: FileAlt {
time: Time {
is_accessed: config.list_file_accessed,
is_created: config.list_file_created,
is_modified: config.list_file_modified,
},
is_size: config.list_file_size,
},
is_reverse: config.list_file_reverse,
is_size: config.list_file_size,
sort: FileSort {
time: Time {
is_accessed: config.list_file_sort_accessed,