From d5185d67587aebbfad8ef9491f52c984c93f01ce Mon Sep 17 00:00:00 2001 From: pawank06 Date: Fri, 9 Jan 2026 20:14:55 +0530 Subject: [PATCH 1/2] feat(cd): add relative path navigtation --- src/main.rs | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/src/main.rs b/src/main.rs index 17f5491..8c08549 100644 --- a/src/main.rs +++ b/src/main.rs @@ -82,25 +82,18 @@ fn main() { } let query = parts[1]; + let args = &parts[1..]; + let full_path = args.join(" "); - if query.starts_with("/") { - let args = &parts[1..]; - let full_path = args.join(" "); - - let path = Path::new(&full_path); - if !path.exists() { - println!("cd: {}: No such file or directory", full_path); - } else if !path.is_dir() { - println!("cd: {}: Not a directory", full_path); - } else { - if let Err(e) = env::set_current_dir(&full_path) { - eprintln!("cd: {} {}", path.display(), e); - } - } - } else { - let args = &parts[1..]; - let full_path = args.join(" "); + let path = Path::new(&full_path); + if !path.exists() { println!("cd: {}: No such file or directory", full_path); + } else if !path.is_dir() { + println!("cd: {}: Not a directory", full_path); + } else { + if let Err(e) = env::set_current_dir(&full_path) { + eprintln!("cd: {} {}", path.display(), e); + } } } _ => { From ab447221959240161e54742c0b7eef06e6029f1f Mon Sep 17 00:00:00 2001 From: pawank06 Date: Fri, 9 Jan 2026 20:24:18 +0530 Subject: [PATCH 2/2] fix(cd): remove unused variable query --- src/main.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index 8c08549..3eee9eb 100644 --- a/src/main.rs +++ b/src/main.rs @@ -81,7 +81,6 @@ fn main() { continue; } - let query = parts[1]; let args = &parts[1..]; let full_path = args.join(" ");