aboutsummaryrefslogtreecommitdiff
path: root/src/cwd.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/cwd.rs')
-rw-r--r--src/cwd.rs9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/cwd.rs b/src/cwd.rs
index 95b6659..157858c 100644
--- a/src/cwd.rs
+++ b/src/cwd.rs
@@ -2,8 +2,9 @@ use std::env;
2use tico::tico; 2use tico::tico;
3use colored::*; 3use colored::*;
4 4
5pub fn cwd() -> colored::ColoredString { 5pub fn cwd() -> Option<colored::ColoredString> {
6 let mut path = format!("{}", env::current_dir().unwrap_or("".into()).display()); 6 let path_env = env::current_dir().ok()?;
7 let mut path = format!("{}", path_env.display());
7 let home = env::var("HOME").unwrap(); 8 let home = env::var("HOME").unwrap();
8 let tilde_expand = env::var("EXPAND_TILDE").unwrap_or("0".into()); 9 let tilde_expand = env::var("EXPAND_TILDE").unwrap_or("0".into());
9 10
@@ -19,8 +20,8 @@ pub fn cwd() -> colored::ColoredString {
19 let cwd_shorten = env::var("SHORTEN_CWD").unwrap_or("1".into()); 20 let cwd_shorten = env::var("SHORTEN_CWD").unwrap_or("1".into());
20 let cwd_color = env::var("CWD_COLOR").unwrap_or("white".into()); 21 let cwd_color = env::var("CWD_COLOR").unwrap_or("white".into());
21 match cwd_shorten.as_ref() { 22 match cwd_shorten.as_ref() {
22 "0" => return path.color(cwd_color), 23 "0" => return Some(path.color(cwd_color)),
23 _ => return tico(&path[..]).color(cwd_color) 24 _ => return Some(tico(&path[..]).color(cwd_color))
24 } 25 }
25 26
26} 27}