Core LibrarystableAPI Reference

Choose documentation 3

stable

Current version

stable
English

Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

Python API

method libtmux stable

Pane.from_env

Return the pane this process is running inside of.

Source and package
Qualified name
libtmux.Pane.from_env
Module
libtmux
Declared in
Pane
Package
libtmux
Source
src/libtmux/pane.py
from_env ( cls, env: t.Mapping[str, str] | None = None ) → Pane

Description#

Reads $TMUX for the server's socket and $TMUX_PANE for the pane id, then asks tmux for the rest. The stale session id inside $TMUX is never consulted, so the answer stays correct after the pane's window has been moved or linked elsewhere.

Examples#

>>> socket_path = server.cmd(
... "display-message", "-p", "-t", pane.pane_id, "#{socket_path}"
... ).stdout[0]
>>> env = {"TMUX": f"{socket_path},1,0", "TMUX_PANE": pane.pane_id}
>>> Pane.from_env(env)
Pane(%1 Window(@1 1:..., Session($1 ...)))
>>> Pane.from_env(env).pane_id == pane.pane_id
True

Outside a pane there is nothing to resolve:

>>> from libtmux import exc
>>> try:
... Pane.from_env({})
... except exc.NotInsideTmux as e:
... print(e)
Not inside a tmux pane: $TMUX is unset or empty
Parameters
  • env (t.Mapping[str, str] | None) # – Environment to read. Defaults to os.environ , which is what a process running inside a pane wants; pass an explicit mapping to resolve on behalf of another pane.

Returns

Pane

Raises

Discussed in Environment

Esc

Type to search.

Reference preview Open reference