window.Window.rotate
- Module
- window
- Declared in
- Window
- Package
- libtmux
- Source
- packages/libtmux/src/window.ts
- Other languages
- Python Ruby Lua RustGoJava.NETC++Swift
-
Rotate the panes within this window.
The layout stays put and the panes move through it, so this reorders what occupies each position rather than trading two panes.
In other ports Rotate panes within a window
- Python
libtmux.Window.rotate - Ruby No source-verified Ruby equivalent is recorded for this operation.
- Lua No source-verified Lua equivalent is recorded for this operation.
- Rust
window.Window.rotate - Go
tmux.Window.Rotate - Java
io.github.libtmux.Window.Window.rotate - .NET
LibTmux.Window.RotateAsync - C++
libtmux::Window::rotate - Swift
Server.rotate(_:upward:)
- Python
Examples
await window.rotate("forward");>>> pane1 = window.active_pane>>> pane2 = window.split()>>> window.rotate()Window(...)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