From cf18fb386750b7e17c063d5944f82c1f1c8303f5 Mon Sep 17 00:00:00 2001 From: har7an <99636919+har7an@users.noreply.github.com> Date: Thu, 4 Apr 2024 13:26:42 +0000 Subject: utils/cli: Add `move-tab` action (#3244) * utils/cli: Add `move-tab` action which was previously only exposed through keybindings. * CHANGELOG: Add PR 3244. --- CHANGELOG.md | 1 + zellij-utils/src/cli.rs | 4 ++++ zellij-utils/src/input/actions.rs | 1 + 3 files changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8581eb8e5..17fcd88a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) * fix(plugins): properly serialize remote urls (https://github.com/zellij-org/zellij/pull/3224) * feat(plugins): add close_self API to allow plugins to close their own instance (https://github.com/zellij-org/zellij/pull/3228) * feat(plugins): allow plugins to specify `zellij:OWN_URL` as a pipe destination (https://github.com/zellij-org/zellij/pull/3232) +* feat(cli): Add `move-tab` action (https://github.com/zellij-org/zellij/pull/3244) ## [0.39.2] - 2023-11-29 * fix(cli): typo in cli help (https://github.com/zellij-org/zellij/pull/2906) diff --git a/zellij-utils/src/cli.rs b/zellij-utils/src/cli.rs index f224b5ef1..0388e5999 100644 --- a/zellij-utils/src/cli.rs +++ b/zellij-utils/src/cli.rs @@ -617,6 +617,10 @@ pub enum CliAction { #[clap(short, long, value_parser, requires("layout"))] cwd: Option, }, + /// Move the focused tab in the specified direction. [right|left] + MoveTab { + direction: Direction, + }, PreviousSwapLayout, NextSwapLayout, /// Query all tab names diff --git a/zellij-utils/src/input/actions.rs b/zellij-utils/src/input/actions.rs index e72b6b64c..61a789d1f 100644 --- a/zellij-utils/src/input/actions.rs +++ b/zellij-utils/src/input/actions.rs @@ -325,6 +325,7 @@ impl Action { CliAction::MoveFocusOrTab { direction } => Ok(vec![Action::MoveFocusOrTab(direction)]), CliAction::MovePane { direction } => Ok(vec![Action::MovePane(direction)]), CliAction::MovePaneBackwards => Ok(vec![Action::MovePaneBackwards]), + CliAction::MoveTab { direction } => Ok(vec![Action::MoveTab(direction)]), CliAction::Clear => Ok(vec![Action::ClearScreen]), CliAction::DumpScreen { path, full } => Ok(vec![Action::DumpScreen( path.as_os_str().to_string_lossy().into(), -- cgit v1.2.3