Session.hooks
Read every hook set at this session.
Source and package
- Qualified name
-
libtmux::session:: Session:: hooks - Module
- session
- Declared in
Session- Package
- libtmux
- Source
- crates/libtmux/src/session/settings.rs
- Other languages
- Perlmethod Erlang PowerShell Julia Elixir Haskell Common Lisp PythonRubyLuaTypeScriptGoJavaC#C++Swift Kotlin Scala OCamlfunction F# Clojure
-
Description#
Only hooks holding something are reported: tmux lists every hook name it knows, and the ones holding nothing are absent here rather than present and empty.
Errors
Returns an error when tmux cannot be reached or refuses the listing.
Examples#
let guard = libtmux::test::TestServer::new().await?;let session = guard.server().new_session("hooked").await?;session.set_hook("alert-bell", "display-message rang").await?;let hooks = session.hooks().await?;assert!(hooks.contains_key("alert-bell"));guard.shutdown().await?;
tmux hooks#
Events that run tmux commands, with the scope each hook belongs to and where tmux fires it.
In other ports#
Read a session's hooks
| Language | Equivalent |
|---|---|
| Python | libtmux |
| Ruby | Lib |
| Lua | libtmux |
| Haskell | No public Haskell equivalent is implemented; the current modules expose scalar values and version parsing. |
| TypeScript | session |
| Go | tmux |
| Java | io |
| C# | Lib |
| C++ | libtmux:: |
| Swift | Server |
| OCaml | Libtmux Pass the corresponding explicit Options scope; captured tables preserve their source and inheritance policy. |
| Perl | Lib Use an explicit session target ID; raw bytes preserve sparse hook indexes and tmux quoting. |
No equivalent is recorded in PowerShell, Julia, Erlang, Elixir, Common Lisp, Clojure, Kotlin, Scala or F#.