summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--helix-term/src/ui/mod.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/helix-term/src/ui/mod.rs b/helix-term/src/ui/mod.rs
index 9e096311..9bf88840 100644
--- a/helix-term/src/ui/mod.rs
+++ b/helix-term/src/ui/mod.rs
@@ -313,7 +313,7 @@ pub mod completers {
return None;
}
- //let is_dir = entry.file_type().map_or(false, |entry| entry.is_dir());
+ let is_dir = entry.file_type().map_or(false, |entry| entry.is_dir());
let path = entry.path();
let mut path = if is_tilde {
@@ -331,7 +331,12 @@ pub mod completers {
path.push("");
}
- let path = path.to_str().unwrap().to_owned();
+ let path = if cfg!(windows) && is_dir {
+ // Convert Windows style path separator to Unix style
+ path.to_str().unwrap().replace("\\", "/")
+ } else {
+ path.to_str().unwrap().to_owned()
+ };
Some((end.clone(), Cow::from(path)))
})
}) // TODO: unwrap or skip