diff options
| author | user <user@clank> | 2026-09-29 14:26:06 +0200 |
|---|---|---|
| committer | user <user@clank> | 2026-09-29 14:26:06 +0200 |
| commit | e779c1fafa556330752b2c5f43c56415f655ff24 (patch) | |
| tree | b87d335587fbfb68696569c5a41d912435d67140 /contrib/terminfo | |
| parent | mouse: encode pixel reports against the cell size we advertise (diff) | |
| download | slosh-e779c1fafa556330752b2c5f43c56415f655ff24.tar.gz slosh-e779c1fafa556330752b2c5f43c56415f655ff24.tar.xz slosh-e779c1fafa556330752b2c5f43c56415f655ff24.zip | |
panes: $SLOSH_PANE, so a program knows which pane it is in
A program in a pane could name every pane but its own. `panes` says which
one is *focused*, and focus belongs to the human, so anything that inferred
"where do I live" from it did its work in whichever tab somebody else
happened to be looking at -- and lost a race with anybody else asking the
same question.
So export the id into the child, the way tmux has $TMUX_PANE and zellij
$ZELLIJ_PANE_ID. The id is taken before the pane is made, because pane_new
spawns the program and assigning it afterwards is one instruction too late;
it lives on the pane rather than the layout, so a rerun keeps it -- an
identity that changed under a rerun would be no identity at all. Unset, not
zero, when there is none: a stale value inherited from an outer session
would read as this one's.
`panes` also reports each pane's pid now, which is the same question
answered for anything that cannot read its own environment: walk your
parents up until one of them is on that list.
Diffstat (limited to 'contrib/terminfo')
0 files changed, 0 insertions, 0 deletions
