# LibTmux::Model::Session.window-links

- **Module:** LibTmux::Model
- **Package:** LibTmux
- **Language:** Raku
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-raku/blob/0b5dd3d32e20f83a0069874e33eab0eb48f55962/lib/LibTmux/Model.rakumod#L912
- **Page:** https://libtmux.org/en/raku/latest/reference/libtmux-model-session-window-links/

```
method window-links(--> WindowLinkSelection:D)
```

Captured session/index associations, including repeated links to one physical window.

Captured session/index associations, including repeated links to one physical window.

## In other ports

List a session's windows

| Language | Equivalent |
| --- | --- |
| Python | [`libtmux.Session.windows`](/en/py/latest/reference/libtmux-session-windows/) (property) |
| Ruby | [`LibTmux::Session#list_windows`](/en/ruby/latest/reference/libtmux-session-list_windows/) (method) |
| PowerShell | [`LibTmux\Get-TmuxWindow`](/en/powershell/latest/reference/libtmux-get-tmuxwindow/) (cmdlet). Use the [`-Session`](/en/powershell/latest/reference/libtmux-get-tmuxwindow/#LibTmux%5CGet-TmuxWindow.parameter.Session) parameter set to acquire placements in one session. |
| Julia | [`LibTmux.windows`](/en/julia/latest/reference/libtmux-windows/) (function). `windows` with a captured `SessionSnapshot` reads distinct physical windows in that session. Use `windowlinks` for placements. |
| Erlang | [`tmux_snapshot:related/3`](/en/erlang/latest/reference/tmux_snapshot-related-3/) (function). Pass `windows`, a captured session and its snapshot for a local relationship read. |
| Haskell | No public Haskell equivalent is implemented; the current modules expose scalar values and version parsing. |
| Common Lisp | [`libtmux:windows`](/en/lisp/latest/reference/libtmux-windows/) (function). `windows` traverses a captured session. Repeated links preserve their physical-window multiplicity. |
| TypeScript | [`session.Session.windows`](/en/ts/latest/reference/session-session-windows/) (method) |
| Rust | [`session.Session.windows`](/en/rs/latest/reference/session-session-windows/) (method) |
| Go | [`tmux.Session.Windows`](/en/go/latest/reference/tmux-session-windows/) (method) |
| Java | [`io.github.libtmux.Session.windows`](/en/java/latest/reference/io-github-libtmux-session-session-windows/) (method) |
| Clojure | [`libtmux.data/windows`](/en/clojure/latest/reference/libtmux-data-windows/) (function). Traverses one capture locally. It does not issue a list-windows command. |
| Kotlin | [`io.github.libtmux.kotlin.Session.windows`](/en/kotlin/latest/reference/io-github-libtmux-kotlin-session-windows/) (property) |
| Scala | [`io.github.libtmux.scaladsl.Session.windows`](/en/scala/latest/reference/io-github-libtmux-scaladsl-session-windows/) (method) |
| C# | [`LibTmux.Session.Windows`](/en/csharp/latest/reference/libtmux-session-windows/) (property) |
| F# | [`LibTmux.FSharp.Session.windows`](/en/fsharp/latest/reference/libtmux-fsharp-session-windows/) (function). Builds a deferred window query from one `LibTmux.Session` and its server. `Query.list` acquires placements scoped to that session ID. |
| C++ | [`libtmux::Session::windows`](/en/cxx/latest/reference/libtmux-session-windows/) (method) |
| Swift | [`Snapshot.windows(of:)`](/en/swift/latest/reference/snapshot-windows(of-)/) (method) |
| OCaml | [`Libtmux.Session.windows`](/en/ocaml/latest/reference/libtmux-session-windows/) (function). Reads distinct captured global windows in this session. window_links preserves individual indexed placements. |
| Perl | Traverse Session::window_links and resolve each link’s window, preserving explicit session placement and multiplicity. |

No equivalent is recorded in Lua or Elixir.
