Session.list_windows
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 (function)Python Lua TypeScriptRustGoJavaC#C++SwiftKotlinScalaF# (function)
- def list_windows: ( ?timeout: ::Numeric, ?cancel: untyped ) -> ::Array[::Lib
Tmux:: ]Window -
Description#
Behavior contract: Live acquisition.
Examples#
List all server windows and the windows belonging to one session. 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_windows.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"])work.new_window(name: "logs", command: ["/bin/cat"])server.new_session(name: "other", command: ["/bin/cat"])puts "server windows: #{server.list_windows.length}"puts "work windows: #{work.list_windows.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_windows.rbExpected output:
server windows: 3work windows: 2tmux command
list-windowsIn other ports List a session's windows
- PowerShell
LibTmux\Get-TmuxWindowUse the
-Sessionparameter set to acquire placements in one session. - Julia
LibTmux.windowswindowswith a capturedSessionSnapshotreads distinct physical windows in that session. Usewindowlinksfor placements. - Python
- Lua No source-verified Lua equivalent is recorded for this operation.
- TypeScript
- Rust
- Go
- Java
- C#
- C++
- Swift
- Kotlin
- Scala
- F#
LibTmux.FSharp.Session.windowsBuilds a deferred window query from one
LibTmux.Sessionand its server.Query.listacquires placements scoped to that session ID.
- PowerShell