aboutsummaryrefslogtreecommitdiff
path: root/helix-term/src/ui/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'helix-term/src/ui/mod.rs')
-rw-r--r--helix-term/src/ui/mod.rs10
1 files changed, 4 insertions, 6 deletions
diff --git a/helix-term/src/ui/mod.rs b/helix-term/src/ui/mod.rs
index 0e38e598..47c75d2f 100644
--- a/helix-term/src/ui/mod.rs
+++ b/helix-term/src/ui/mod.rs
@@ -79,10 +79,9 @@ pub fn regex_prompt(
)
}
-pub fn file_picker(root: &str) -> Picker<PathBuf> {
+pub fn file_picker(root: PathBuf) -> Picker<PathBuf> {
use ignore::Walk;
- // TODO: determine root based on git root
- let files = Walk::new(root).filter_map(|entry| match entry {
+ let files = Walk::new(root.clone()).filter_map(|entry| match entry {
Ok(entry) => {
// filter dirs, but we might need special handling for symlinks!
if !entry.file_type().unwrap().is_dir() {
@@ -96,12 +95,11 @@ pub fn file_picker(root: &str) -> Picker<PathBuf> {
const MAX: usize = 1024;
- use helix_view::Editor;
Picker::new(
files.take(MAX).collect(),
- |path: &PathBuf| {
+ move |path: &PathBuf| {
// format_fn
- path.strip_prefix("./").unwrap().to_str().unwrap().into()
+ path.strip_prefix(&root).unwrap().to_str().unwrap().into()
},
move |editor: &mut Editor, path: &PathBuf, action| {
let document_id = editor