summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authora-kenji <aks.kenji@protonmail.com>2021-11-11 18:27:55 +0100
committera-kenji <aks.kenji@protonmail.com>2021-11-11 18:27:55 +0100
commitbe692fd6b01ec81425ea892958980b016e3e70a0 (patch)
treec1782847c51226b375c870d23b7b62e5b15ebfd9 /src
parent59ca0babafdc86b5cb945a8da623f0eca40857ae (diff)
parent00b47b3058b6adc6f4e17651ea6b73f81435b8b6 (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.rs17
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);
}