Releases: binlecode/ting
Releases · binlecode/ting
Release list
v0.25.0
What's New in v0.25.0
- Multi-Workspace Non-Destructive Stage (
w1–w5,Ctrl+n/Ctrl+p): Seamlessly switch between 5 independent top-level workspaces (Search, Feeds, Queue, Playlists, History) with full memory preservation of queries, cursors, and filters. - Responsive Multi-Pane Workbench (
internal/tui/layout): Three geometric breakpoints (Compact <85, Standard 85–124, Wide ≥125). In wide terminals, dynamically renders a 3-column fluid workbench (Navigation sidebar + Stage list + Inspector & synced lyrics) isolated by whitespace gutters (layout.JoinColumns). - Persistent Player Dock & Clock SSOT (
dockModel): Unified 250ms monotonic clock extrapolation with 1/8 sub-cell smooth progress bar (▏▎▍▌▋▊▉█) and chapter span markers. - Stage Karaoke Mode (
Fkey): One-key full-screen immersive centered karaoke stage with flowing synced lyrics, exiting back to the exact workbench context viaEsc/F/q.
v0.24.3
What's New in v0.24.3
- Direct Arrow Key &
j/kPlaylist Selection: PressingB(orb) now immediately highlights the first playlist with a distinct❯cursor. Navigate directly using↑/↓ork/jand pressEnterto expand—zero manual digit typing required! - 8-Row Bounded Scrollable Window: Long playlist libraries (like 22+ playlists) are now windowed to at most 8 rows with smooth scrolling and
(current/total)progress indicators, preventing terminal height overflow on compact 24-row windows.
v0.24.2
What's New in v0.24.2
- Full 22-Playlist YouTube Extraction: Fixed an issue where
yt-dlpdropped custom playlists from YouTube'sfeed/playlistsgrid. Now extracts all 22 custom playlists (music,classic_music,violin,coding_music, etc.) directly from page data with zero loss. - Direct
binlecodeAccount Binding:TING_COOKIE_ACCOUNT=binlecodedirectly resolves to the YouTube multi-account session index where all 22 playlists live.
v0.24.1
What's New in v0.24.1
- Multi-Account Cookie Preference (
TING_COOKIE_ACCOUNT&--account): Support specifying the preferred Google/YouTube account when multiple accounts are signed into the browser. Accepts account email address (e.g.bin.le.code@gmail.com) orauthuserinteger index (0, 1, ...). Automatically resolves and scopes home feed, online playlists (B key), Liked videos, Watch later, history, and subscriptions to the chosen account. - Enriched Auth Introspection:
ting-play --auth -jnow reportscookie_accountand resolvedauthuserindex. - Hardened Visual Hierarchy & Row Sources: Aligned row source documentation to eight reversible sources and tightened test assertions.
v0.24.0
What's New in v0.24.0
- Online Playlists Traversal (B Key): Dedicated uppercase
Bkey to browse remote online playlists directly under your source account (e.g. YouTube Liked Videos, Watch Later, and custom playlists) via numbered picker; select to expand container tracks; pressBagain to cleanly restore the home/search list. - Agent CLI Contract for Online Playlists: Added
ting-play --playlists [--engine E] [-n N] [-j]public verb with deterministic JSON envelope and strict 4-tier exit code semantics. - Visual Hierarchy Refactoring: Tiered contrast system separating Foreground (accent), Secondary (metadata/duration/progress in soft gray), and Muted (structural lines, scrollbar tracks, low-noise micro-keycaps), eliminating bottom-bar zebra contrast noise.
- Contract & Test Suite Hardening: Enhanced boundary test coverage, elimination of private boundary calls, and 100% clean-tests compliance across all contracts.
v0.23.0
New Features
- Personalized Recommendation Feeds: Launch
tingwithout query arguments to directly enter your YouTube account's Home Feed recommendations. Supported via CLI withting-play --feed home -j -n 20. - Single-Hop Related Tracks Traversal: Press
gon any track to instantly expand related video recommendations (Up Next) via official lightweight Innertube endpoint; pressgagain to cleanly restore the original search results without extra network trips. Supported via CLI withting-play --related -j -n 10 -- <ID|URL>. - Account Containers Support: First-class support for Watch Later (
WL), Liked Videos (LL), Subscriptions (feed:subs), and Watch History (feed:history) viating-play --items -j -- <container>. - Comprehensive Documentation: Complete overhaul of
USER_MANUAL.md,ARCH-cli-contract.md,ARCH-tui.md, andARCH-engine.mdreflecting the discovery paradigm.
v0.11.3
v0.11.2
Release v0.11.2
- Fix cover image preview for pasted URLs: query raw metadata with
--info -Jto extract thumbnail, pic, and picUrl for YouTube, Bilibili, and NetEase - Synthesize YouTube thumbnail fallback in
JQ_TEXT_DEFSandbuild_playlist_rows
v0.11.1
Release v0.11.1
- Fix Kitty graphics protocol chunking in
image_emitso final data chunks carrym=0without corrupting Base64 padding stream - Add fast terminal detection in
init_imagefor Ghostty, WezTerm, and Kitty to avoid probe timeouts - Lower height threshold from 10 to 4 rows so cover art previews render in standard 24-row terminals
- Synthesize thumbnail metadata for pasted YouTube tracks
v0.11.0
Release v0.11.0
- Robust clipboard pasting across all terminal emulators (macOS Terminal.app, iTerm2, Alacritty, Kitty, WezTerm, etc.)
- Unbracketed paste tail detection with non-blocking POSIX termios burst protection
- Native system clipboard access via
p(Vim paste) andCtrl+V - In-place URL resolution and direct passthrough in
/live filter mode andnsearch prompt - Automatic cleanup of mobile share text wrappers (Bilibili/NetEase)
- Added URL auto-sniffing for player and
--viz-colorsupport