diff options
author | a-kenji <aks.kenji@protonmail.com> | 2021-11-11 18:27:55 +0100 |
---|---|---|
committer | a-kenji <aks.kenji@protonmail.com> | 2021-11-11 18:27:55 +0100 |
commit | be692fd6b01ec81425ea892958980b016e3e70a0 (patch) | |
tree | c1782847c51226b375c870d23b7b62e5b15ebfd9 /src | |
parent | 59ca0babafdc86b5cb945a8da623f0eca40857ae (diff) | |
parent | 00b47b3058b6adc6f4e17651ea6b73f81435b8b6 (diff) |
Merge branch 'suggestion-for-similar-session-name' of https://github.com/ken-matsui/zellij into ken-matsui-suggestion-for-similar-session-name
Diffstat (limited to 'src')
-rw-r--r-- | src/sessions.rs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/sessions.rs b/src/sessions.rs index a13c6c7c1..0cc870a7e 100644 --- a/src/sessions.rs +++ b/src/sessions.rs @@ -1,6 +1,7 @@ use std::os::unix::fs::FileTypeExt; use std::time::SystemTime; use std::{fs, io, process}; +use suggestion::Suggest; use zellij_utils::{ consts::ZELLIJ_SOCK_DIR, envs, @@ -149,9 +150,19 @@ pub(crate) fn session_exists(name: &str) -> Result<bool, io::ErrorKind> { pub(crate) fn assert_session(name: &str) { match session_exists(name) { - Ok(result) if result => return, - Ok(_) => println!("No session named {:?} found.", name), - Err(e) => eprintln!("Error occurred: {:?}", e), + Ok(result) => { + if result { + return; + } else { + println!("No session named {:?} found.", name); + if let Some(sugg) = get_sessions().unwrap().suggest(name) { + println!(" help: Did you mean `{}`?", sugg); + } + } + } + Err(e) => { + eprintln!("Error occurred: {:?}", e); + } }; process::exit(1); } |