on master help sign in
Add command for picking files from CWD (#1600)
562874agavynriebau
helix-term/src/commands.rs+7
@@ -259,6 +259,7 @@ impl MappableCommand {
259 append_mode, "Insert after selection (append)",
259 append_mode, "Insert after selection (append)",
260 command_mode, "Enter command mode",
260 command_mode, "Enter command mode",
261 file_picker, "Open file picker",
261 file_picker, "Open file picker",
262+ file_picker_in_current_directory, "Open file picker at current working directory",
262 code_action, "Perform code action",
263 code_action, "Perform code action",
263 buffer_picker, "Open buffer picker",
264 buffer_picker, "Open buffer picker",
264 symbol_picker, "Open symbol picker",
265 symbol_picker, "Open symbol picker",
@@ -2047,6 +2048,12 @@ fn file_picker(cx: &mut Context) {
2047 cx.push_layer(Box::new(overlayed(picker)));
2048 cx.push_layer(Box::new(overlayed(picker)));
2048}
2049}
2049
2050
2051+fn file_picker_in_current_directory(cx: &mut Context) {
2052+ let cwd = std::env::current_dir().unwrap_or_else(|_| PathBuf::from("./"));
2053+ let picker = ui::file_picker(cwd, &cx.editor.config());
2054+ cx.push_layer(Box::new(picker));
2055+}
2056+
2050fn buffer_picker(cx: &mut Context) {
2057fn buffer_picker(cx: &mut Context) {
2051 let current = view!(cx.editor).doc;
2058 let current = view!(cx.editor).doc;
2052
2059
helix-term/src/keymap/default.rs+1
@@ -196,6 +196,7 @@ pub fn default() -> HashMap<Mode, Keymap> {
196
196
197 "space" => { "Space"
197 "space" => { "Space"
198 "f" => file_picker,
198 "f" => file_picker,
199+ "F" => file_picker_in_current_directory,
199 "b" => buffer_picker,
200 "b" => buffer_picker,
200 "s" => symbol_picker,
201 "s" => symbol_picker,
201 "S" => workspace_symbol_picker,
202 "S" => workspace_symbol_picker,