o: fix tmux session targeting in tui command

Remove = prefix from tmux -t arguments - it doesn't work with
pane specifiers (:0.1). Also changed -g to -t for mouse option.
This commit is contained in:
Levi Neely 2026-10-09 12:24:35 +02:00
parent c30c75cea9
commit aa939b0f84
1 changed files with 12 additions and 13 deletions

View File

@ -400,25 +400,24 @@ cmd_tui() {
# Check for subcommands
if [[ "${1:-}" == "exit" ]]; then
# Use = prefix for exact match (prevents dot interpretation as window.pane)
tmux kill-session -t "=${tmux_session}" 2>/dev/null && echo "[killed ${tmux_session}]" || echo "no tui session: ${tmux_session}"
tmux kill-session -t "${tmux_session}" 2>/dev/null && echo "[killed ${tmux_session}]" || echo "no tui session: ${tmux_session}"
return
fi
tmux kill-session -t "=${tmux_session}" 2>/dev/null || true
tmux kill-session -t "${tmux_session}" 2>/dev/null || true
# Layout: chat (top 80%), prompt (bottom 20%)
# Use colon separator in o commands to handle session names with slashes
local ctx="$s:$a"
tmux new-session -d -s "$tmux_session" -c "$HOME"
tmux set-option -g mouse on
tmux send-keys -t "=${tmux_session}" "o '$ctx' log -n 1000 | grep -v '\\[\\[\\[.*\\]\\]\\]' | grep -v '^\`\`\`'; o '$ctx' read chat" Enter
tmux set-option -t "$tmux_session" mouse on
tmux send-keys -t "$tmux_session" "o '$ctx' log -n 1000 | grep -v '\\[\\[\\[.*\\]\\]\\]' | grep -v '^\`\`\`'; o '$ctx' read chat" Enter
tmux split-window -t "=${tmux_session}" -v -l 20%
tmux send-keys -t "=${tmux_session}" "clear; o '$ctx' prompt" Enter
tmux split-window -t "$tmux_session" -v -l 20%
tmux send-keys -t "$tmux_session" "clear; o '$ctx' prompt" Enter
tmux set-option -t "=${tmux_session}" status-right "starting... | %H:%M"
tmux set-option -t "=${tmux_session}" status-right-length 64
tmux set-option -t "$tmux_session" status-right "starting... | %H:%M"
tmux set-option -t "$tmux_session" status-right-length 64
# Subscribe to state events for this agent only
echo "session.${s}.agent.${a}.state" | ollie-9p rdwrs event 2>/dev/null | while read -r topic state; do
@ -430,15 +429,15 @@ cmd_tui() {
paused) bg="colour245" ;;
*) bg="default" ;;
esac
tmux set-option -t "=${tmux_session}" status-right-style "fg=default,bg=$bg" 2>/dev/null
tmux set-option -t "$tmux_session" status-right-style "fg=default,bg=$bg" 2>/dev/null
status=$(ollie-9p read "${PREFIX}/status" 2>/dev/null | head -n1)
tmux set-option -t "=${tmux_session}" status-right "${status:-$state} | %H:%M" 2>/dev/null
tmux set-option -t "$tmux_session" status-right "${status:-$state} | %H:%M" 2>/dev/null
done &
local bg_pid=$!
trap "kill $bg_pid 2>/dev/null" EXIT
tmux select-pane -t "=${tmux_session}:0.1"
exec tmux attach -t "=${tmux_session}"
tmux select-pane -t "${tmux_session}:0.1"
exec tmux attach -t "$tmux_session"
}
cmd_env() {