diff options
author | gavynriebau | 2022-04-10 02:30:09 +0000 |
---|---|---|
committer | GitHub | 2022-04-10 02:30:09 +0000 |
commit | 562874a720678a238966c69f413cb3d691f74c66 (patch) | |
tree | 019341999d072065b592e4063d23504689f71978 /helix-term/src | |
parent | 494306ad7ae8ffb45d4d7d906528b64812eee3a5 (diff) |
Add command for picking files from CWD (#1600)
The `file_picker_at_current_directory` command opens the file picker at
the current working directory (CWD). This can be useful when paired with
the built-in `:cd` command which changes the CWD.
It has been mapped to `space F` by default.
Diffstat (limited to 'helix-term/src')
-rw-r--r-- | helix-term/src/commands.rs | 7 | ||||
-rw-r--r-- | helix-term/src/keymap/default.rs | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index 3757912a..886ee62d 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -259,6 +259,7 @@ impl MappableCommand { append_mode, "Insert after selection (append)", command_mode, "Enter command mode", file_picker, "Open file picker", + file_picker_in_current_directory, "Open file picker at current working directory", code_action, "Perform code action", buffer_picker, "Open buffer picker", symbol_picker, "Open symbol picker", @@ -2047,6 +2048,12 @@ fn file_picker(cx: &mut Context) { cx.push_layer(Box::new(overlayed(picker))); } +fn file_picker_in_current_directory(cx: &mut Context) { + let cwd = std::env::current_dir().unwrap_or_else(|_| PathBuf::from("./")); + let picker = ui::file_picker(cwd, &cx.editor.config()); + cx.push_layer(Box::new(picker)); +} + fn buffer_picker(cx: &mut Context) { let current = view!(cx.editor).doc; diff --git a/helix-term/src/keymap/default.rs b/helix-term/src/keymap/default.rs index a8144ebc..18ebbcfe 100644 --- a/helix-term/src/keymap/default.rs +++ b/helix-term/src/keymap/default.rs @@ -196,6 +196,7 @@ pub fn default() -> HashMap<Mode, Keymap> { "space" => { "Space" "f" => file_picker, + "F" => file_picker_in_current_directory, "b" => buffer_picker, "s" => symbol_picker, "S" => workspace_symbol_picker, |