Implement show_current_directory command

This commit is contained in:
Lionel Flandrin 2021-06-21 16:49:21 +01:00 committed by Benoît Cortier
parent b56174d738
commit 16883e7543

View file

@ -1386,6 +1386,15 @@ mod cmd {
} }
} }
fn show_current_directory(editor: &mut Editor, args: &[&str], _: PromptEvent) {
match std::env::current_dir() {
Ok(cwd) => editor.set_status(format!("Current working directory is {}", cwd.display())),
Err(e) => {
editor.set_error(format!("Couldn't get the current working directory: {}", e))
}
}
}
pub const TYPABLE_COMMAND_LIST: &[TypableCommand] = &[ pub const TYPABLE_COMMAND_LIST: &[TypableCommand] = &[
TypableCommand { TypableCommand {
name: "quit", name: "quit",
@ -1562,6 +1571,13 @@ mod cmd {
fun: change_current_directory, fun: change_current_directory,
completer: Some(completers::directory), completer: Some(completers::directory),
}, },
TypableCommand {
name: "show-directory",
alias: Some("pwd"),
doc: "Show the current working directory.",
fun: show_current_directory,
completer: None,
},
]; ];
pub static COMMANDS: Lazy<HashMap<&'static str, &'static TypableCommand>> = Lazy::new(|| { pub static COMMANDS: Lazy<HashMap<&'static str, &'static TypableCommand>> = Lazy::new(|| {