On this page
window.Window.rotate
- Module
- window
- Declared in
- Window
- Package
- libtmux
- Source
- crates/libtmux/src/window.rs
-
Move the window's panes round one position, keeping the layout.
The panes swap places within the arrangement rather than the arrangement changing, so a rotation of a three-pane window three times returns it to where it started.
Errors
Returns an error when tmux cannot be reached or refuses the rotation.
Examples
use libtmux::{Rotation, SplitDirection, SplitOptions}; let guard = libtmux::test::TestServer::new().await?; let session = guard.server().new_session("turning").await?; let mut window = session.active_window().await?.expect("a window"); window.split(SplitOptions::new(SplitDirection::Below)).await?; let before: Vec<_> = window.panes().await?.iter().map(|p| p.id().clone()).collect(); window.rotate(Rotation::Up).await?; let after: Vec<_> = window.panes().await?.iter().map(|p| p.id().clone()).collect(); assert_ne!(before, after, "the panes moved"); window.rotate(Rotation::Down).await?; let back: Vec<_> = window.panes().await?.iter().map(|p| p.id().clone()).collect(); assert_eq!(before, back, "and the other way undoes it"); guard.shutdown().await?;
0 declared, 0 inherited