You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(lyrics): make L work at any width and surface it in the status bar
Below 80 columns the lyrics drawer declined to open, because the station
list will not render under 28 columns beside an 18 column sidebar. The only
feedback was one dim status-bar line, so pressing L on a narrow terminal
looked like a dead key.
The sheet now has two surfaces. At 80 columns or wider it stays a drawer
beside the station list; below that it takes over the content area as a
full-width overlay. Resizing moves an open sheet between the two instead of
making it vanish, and the width refusal is gone entirely.
The status bar also carries [L] Lyrics and [A] Art on every station tab.
Previously the keys appeared only in the which-key overlay, so nothing in
the default view hinted the feature existed. The legend is clipped to the
terminal width, so its order is now a priority list and the two new entries
sit near the front; y/Yank and a/Add move to the widest tier only.
Verified against the real binary in a pty at 70 columns: L opens the
overlay and the legend shows both keys.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: README.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -331,7 +331,8 @@ Modern terminals grew real graphics capabilities, so `halpradio` uses them. Pres
331
331
-**Auto-Scrolling Karaoke View**: When timestamped `.lrc` data exists, the drawer highlights the line being sung, fades the surrounding lines, and draws a progress gauge across the active line.
332
332
-**Manual Scroll For Plain Text**: Unsynced lyrics render as a formatted sheet you scroll with `j` / `k`.
333
333
-**Sync Nudge**: Internet radio exposes no seek position, so the lyric clock starts when the station announces a new title. Press `,` and `.` to shift the sync in 0.5 second steps when a station announces late or early.
334
-
-**Never Blocks The UI**: Every lookup runs as a Bubble Tea command off the update loop, so the TUI stays responsive on slow connections, and the drawer takes its own columns rather than overlapping the station list.
334
+
-**Never Blocks The UI**: Every lookup runs as a Bubble Tea command off the update loop, so the TUI stays responsive on slow connections.
335
+
-**Fits Any Terminal**: At 80 columns or wider the drawer takes its own columns rather than overlapping the station list; below that the sheet becomes a full-width overlay, and resizing moves it between the two without closing it.
335
336
-**Disk & Memory Cache**: Sheets are memoised in RAM and cached under `~/.cache/halpradio/lyrics/`, and stations with no match are negative-cached so the APIs are not hammered every track.
0 commit comments