Files
oh-my-pi/packages
roboomp d61a7aad7e fix(tui): respect OSC 8 hyperlinks under tmux >= 3.4
The capability gate hard-disabled OSC 8 whenever a multiplexer was
detected (TMUX env or TERM starting with tmux/screen), which pre-dates
tmux 3.4's OSC 8 support and has no override. Inside tmux that leaves
URLs as plain text; when one wraps at the pane edge the outer
terminal's regex link detector cannot join the hard-wrapped rows and
the URL becomes unclickable with a newline embedded in the copy.

Add two pure helpers next to the sync-output ones:

- hyperlinksUserOverride(env): PI_FORCE_HYPERLINKS=1 / PI_NO_HYPERLINKS=1.
  Opt-out beats force-on.
- shouldEnableHyperlinksByDefault(env, terminalId): user override >
  static per-terminal flag > screen-always-off > tmux gate
  (>= 3.4 via TERM_PROGRAM_VERSION which tmux self-sets since 3.2a)
  > static flag.

GNU screen never gained OSC 8, so it stays off unless explicitly
forced. Older tmux without a reported version also stays off, since
we can not distinguish 3.3 from 3.5.

Outer terminals not configured for hyperlinks see tmux drop the
sequence — identical to today's behavior — so the upgrade is safe.

Fixes #2403
2026-06-12 16:32:28 +00:00
..
2026-06-12 18:13:09 +02:00
2026-06-12 18:13:09 +02:00
2026-06-12 18:13:09 +02:00
2026-06-12 17:03:05 +02:00
2026-06-12 18:13:09 +02:00
2026-06-12 18:13:09 +02:00
2026-06-12 18:13:09 +02:00
2026-06-12 18:13:09 +02:00
2026-06-12 18:13:09 +02:00
2026-06-12 18:13:09 +02:00