Recursive
This commit is contained in:
20
src/main.rs
20
src/main.rs
@@ -1,9 +1,8 @@
|
||||
use clap::Parser;
|
||||
use lsplus::{
|
||||
element::Element,
|
||||
out::{default::default, list::list},
|
||||
utils::get_elements_from_path,
|
||||
};
|
||||
use std::fs;
|
||||
|
||||
// Needs to be defined in main
|
||||
#[derive(Parser, Debug)]
|
||||
@@ -17,6 +16,9 @@ pub struct Args {
|
||||
#[arg(short, long, default_value_t = false)]
|
||||
list: bool,
|
||||
|
||||
#[arg(short, long, default_value_t = 0)]
|
||||
recursive: usize,
|
||||
|
||||
/// Path of the directory to list
|
||||
#[arg(default_value_t = String::from("."))]
|
||||
path: String,
|
||||
@@ -25,17 +27,17 @@ pub struct Args {
|
||||
fn main() {
|
||||
let args = Args::parse();
|
||||
|
||||
let paths = fs::read_dir(args.path).unwrap();
|
||||
let elements = get_elements_from_path(args.path, args.all);
|
||||
|
||||
let _max_width = 50;
|
||||
// let paths = fs::read_dir(args.path).unwrap();
|
||||
|
||||
let elements: Vec<Element> = paths
|
||||
.map(|e| Element::new(e.unwrap().path().to_str().unwrap()))
|
||||
.filter(|element| args.all || !element.get_name().starts_with('.'))
|
||||
.collect();
|
||||
// let elements: Vec<Element> = paths
|
||||
// .map(|e| Element::new(e.unwrap().path().to_str().unwrap()))
|
||||
// .filter(|element| args.all || !element.get_name().starts_with('.'))
|
||||
// .collect();
|
||||
|
||||
if args.list {
|
||||
list(elements);
|
||||
list(elements, args.recursive);
|
||||
} else {
|
||||
default(elements);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user