Server.if_shell
Execute a tmux command conditionally via $ tmux if-shell.
Source and package
- Qualified name
-
libtmux.Server. if _shell - Module
- libtmux
- Declared in
Server- Package
- libtmux
- Source
- src/libtmux/server.py
- Other languages
- Perl Erlang PowerShell Julia Elixir Haskell Common Lisp Ruby Lua TypeScript Rust GoJavaC# C++ Swift Kotlin Scala OCaml F# Clojure
- if_shell ( self, shell_command: str, tmux_command: str, else_command: str | None = None, background: bool | None = None, target_pane: str | None = None, ) None
-
Examples#
>>> server.if_shell('true', 'set -g @if_test yes')>>> server.cmd('show-options', '-gv', '@if_test').stdout[0]'yes'- Parameters
-
-
shell_command(str) # – Shell command whose exit status determines which tmux command runs. -
tmux_command(str) # – Tmux command to run if shell_command succeeds (exit 0). -
else_command(str | None) # – Tmux command to run if shell_command fails (non-zero exit). -
background(bool | None) # – Run the shell command in the background (-bflag). -
target_pane(str | None) # – Target pane for format expansion (-tflag).
-
tmux command#
The tmux commands behind if_shell.
tmux C API#
The C declarations in tmux that implement these commands.
In other ports#
Run one tmux command or another, on a shell test
| Language | Equivalent |
|---|---|
| Haskell | No public Haskell equivalent is implemented; the current modules expose scalar values and version parsing. |
| TypeScript | server |
| Rust | no equivalent on Server |
| Go | tmux |
| Java | io |
| C# | Lib |
| C++ | no equivalent on Server |
| Swift | no equivalent on Server |
| OCaml | No direct public OCaml equivalent is recorded for this operation. |
| Perl | No dedicated equivalent in the selected Perl surface. Explicit Server::cmd remains available for native tmux commands. |
No equivalent is recorded in Ruby, Lua, PowerShell, Julia, Erlang, Elixir, Common Lisp, Clojure, Kotlin, Scala or F#.