Session.list_panes
LibTmux Behavior: Live acquisition.
Source and package
- Module
- LibTmux
- Declared in
- Session
- Package
- libtmux
- Source
- gems/libtmux/lib/libtmux/entity.rb
- Other languages
- PowerShell (cmdlet) Julia Python Lua TypeScriptRustGo Java C#C++Swift Kotlin Scala F# (function)
- def list_panes: ( ?timeout: ::Numeric, ?cancel: untyped ) -> ::Array[::Lib
Tmux:: ]Pane -
Description#
Behavior contract: Live acquisition.
Examples#
List panes across the server, within one session, and within one window. Use Ruby 4.0.7, Bundler, Git and tmux 3.2a or newer on Unix, with /bin/cat and /bin/sh available. In an empty directory, fetch the documented library revision:
Terminal window $ git clone https://github.com/libtmux/libtmux-ruby.git libtmux-source && \git -C libtmux-source checkout dcc9f8b5a6970144a9e7d80cd5f381d8f6198372Save this dependency file as Gemfile:
source "https://rubygems.org"gem "libtmux", path: "libtmux-source/gems/libtmux"Save this complete program as list_panes.rb. Its Server.start block owns a private tmux server and stops it on exit, including after an error. View source
# frozen_string_literal: truerequire "libtmux"beginLibTmux::Server.start do |server|work = server.new_session(name: "work", command: ["/bin/cat"], receipt: true)work.pane.split(direction: :horizontal, command: ["/bin/cat"])server.new_session(name: "other", command: ["/bin/cat"])puts "server panes: #{server.list_panes.length}"puts "work panes: #{work.entity.list_panes.length}"puts "window panes: #{work.window.list_panes.length}"endrescue StandardError => errorwarn "#{error.class}: #{error.message}"exit 1endInstall the runtime dependencies and run the saved program. An operation or cleanup error makes it exit unsuccessfully:
Terminal window $ bundle config set --local path vendor/bundle && \bundle install --jobs 2 && \bundle exec ruby list_panes.rbExpected output:
server panes: 3work panes: 2window panes: 2tmux command
list-panesIn other ports List a session's panes
- PowerShell
LibTmux\Get-TmuxPaneUse the
-Sessionparameter set to acquire panes across that session’s windows. - Julia Traverse
windows(session)andpanes(window)in the captured snapshot.panes(snapshot)has server-wide scope. - Python
- Lua No source-verified Lua equivalent is recorded for this operation.
- TypeScript
- Rust
- Go
- Java no direct accessor; traverse Session.windows and Window.panes
- C#
- C++
- Swift
- Kotlin No source-verified Kotlin equivalent is recorded for this operation.
- Scala No source-verified Scala equivalent is recorded for this operation.
- F#
LibTmux.FSharp.Session.panesBuilds a deferred pane query from one
LibTmux.Sessionand its server.Query.listacquires panes across that session’s windows.
- PowerShell