diff options
Diffstat (limited to 'src/config/option/new_tab_option.rs')
-rw-r--r-- | src/config/option/new_tab_option.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/config/option/new_tab_option.rs b/src/config/option/new_tab_option.rs new file mode 100644 index 0000000..ffb15ca --- /dev/null +++ b/src/config/option/new_tab_option.rs @@ -0,0 +1,19 @@ +#[derive(Clone, Debug, Default, PartialEq, Eq)] +pub enum NewTabMode { + #[default] + Default, + CurrentTabDir, + CursorDir, + Directory(String), +} + +impl NewTabMode { + pub fn from_str(arg: &str) -> NewTabMode { + match arg.trim() { + "" => NewTabMode::Default, + "--current" => NewTabMode::CurrentTabDir, + "--cursor" => NewTabMode::CursorDir, + dir => NewTabMode::Directory(String::from(dir)), + } + } +} |