diff --git a/helix-term/src/ui/mod.rs b/helix-term/src/ui/mod.rs index dc2b020f5..fe88f422b 100644 --- a/helix-term/src/ui/mod.rs +++ b/helix-term/src/ui/mod.rs @@ -16,7 +16,7 @@ mod text_decorations; use crate::compositor::{Compositor, Context}; use crate::job::{self, Callback}; -use crate::{ctrl, filter_picker_entry}; +use crate::{alt, ctrl, filter_picker_entry}; pub use completion::Completion; pub use editor::EditorView; use helix_core::hashmap; @@ -299,8 +299,17 @@ pub fn file_explorer(root: PathBuf, editor: &Editor) -> Result = Box::new(|cx: &mut Context| { - log::error!("1"); + let delete: Box = Box::new(|cx: &mut Context| { + log::error!("delete file"); + }); + let create: Box = Box::new(|cx: &mut Context| { + log::error!("create file"); + }); + let rename: Box = Box::new(|cx: &mut Context| { + log::error!("rename file"); + }); + let copy: Box = Box::new(|cx: &mut Context| { + log::error!("copy file"); }); let picker = Picker::new( @@ -332,7 +341,12 @@ pub fn file_explorer(root: PathBuf, editor: &Editor) -> Result delete_file)); + .with_key_handler(HashMap::from([ + (alt!('c'), create), + (alt!('d'), delete), + (alt!('y'), copy), + (alt!('r'), rename), + ])); Ok(picker) }