diff options
| author | David Moc <personal@cdatgoose.org> | 2026-04-06 07:30:22 +0200 |
|---|---|---|
| committer | David Moc <personal@cdatgoose.org> | 2026-04-06 07:30:22 +0200 |
| commit | 843510e3acd89622b3dc15dec0630ba7dec94c12 (patch) | |
| tree | e0aab0ee5634596545beffd8f49e152e172e8114 /naviel.el | |
| parent | bb4b6fe1e08941c6a8ba247c44c1a03d4ab3ca94 (diff) | |
More ui fixes.
Signed-off-by: David Moc <personal@cdatgoose.org>
Diffstat (limited to 'naviel.el')
| -rwxr-xr-x | naviel.el | 78 |
1 files changed, 41 insertions, 37 deletions
@@ -693,7 +693,7 @@ (insert (format " vol %s repeat: %s\n" (naviel--volume-bar naviel--volume) (propertize (naviel--repeat-label) 'face 'naviel-repeat-face))) - (insert "\n") (insert sep) (insert "\n\n") + (insert "\n") (insert sep) (insert "\n") ;; ── Lyrics ── (naviel--player-insert-lyrics))) @@ -707,50 +707,54 @@ (defun naviel--player-insert-lyrics () "Insert the lyrics section into the player buffer." - (insert (propertize " Lyrics\n" 'face 'naviel-breadcrumb-face)) (cond ;; Synced lyrics (naviel--lrc-lines - (let* ((elapsed naviel--elapsed) - (idx (or (naviel--lrc-active-index elapsed) -1)) - (lines naviel--lrc-lines) - (total (length lines)) - (prev-entry (when (> idx 0) (nth (1- idx) lines))) - (cur-entry (when (>= idx 0) (nth idx lines))) - (next-entry (when (< (1+ idx) total) (nth (1+ idx) lines)))) - (setq naviel--lrc-current-idx idx) - ;; Previous line (dimmed) - (if prev-entry - (insert (format " %s\n" - (propertize (naviel--trunc (cdr prev-entry) 82) - 'face 'naviel-lyrics-context-face))) - (insert "\n")) - ;; Current line (highlighted) - (if cur-entry - (insert (format " ▸ %s\n" - (propertize (naviel--trunc (cdr cur-entry) 80) - 'face 'naviel-lyrics-current-face))) - (insert (propertize " · · ·\n" 'face 'naviel-lyrics-context-face))) + (progn + (insert (propertize "\n Lyrics\n" 'face 'naviel-breadcrumb-face)) + (let* ((elapsed naviel--elapsed) + (idx (or (naviel--lrc-active-index elapsed) -1)) + (lines naviel--lrc-lines) + (total (length lines)) + (prev-entry (when (> idx 0) (nth (1- idx) lines))) + (cur-entry (when (>= idx 0) (nth idx lines))) + (next-entry (when (< (1+ idx) total) (nth (1+ idx) lines)))) + (setq naviel--lrc-current-idx idx) + ;; Previous line (dimmed) + (if prev-entry + (insert (format " %s\n" + (propertize (naviel--trunc (cdr prev-entry) 82) + 'face 'naviel-lyrics-context-face))) + (insert "\n")) + ;; Current line (highlighted) + (if cur-entry + (insert (format " ▸ %s\n" + (propertize (naviel--trunc (cdr cur-entry) 80) + 'face 'naviel-lyrics-current-face))) + (insert (propertize " · · ·\n" 'face 'naviel-lyrics-context-face))) ;; Next line (dimmed) - (if next-entry - (insert (format " %s\n" + (if next-entry + (insert (format " %s\n" (propertize (naviel--trunc (cdr next-entry) 82) 'face 'naviel-lyrics-context-face))) - (insert "\n")) - (insert "\n") - (insert (propertize " (synced via lrclib.net)\n" 'face 'naviel-footer-face)))) + (insert "\n")) + (insert "\n") + (insert (propertize " (synced via lrclib.net)\n" 'face 'naviel-footer-face))))) ;; Plain / unsynced lyrics (naviel--lrc-raw - (insert (propertize " (unsynced)\n\n" 'face 'naviel-footer-face)) - ;; Show first 12 lines - (let ((lns (seq-take (split-string naviel--lrc-raw "\n") 12))) - (dolist (ln lns) - (insert (format " %s\n" - (propertize (naviel--trunc ln 52) - 'face 'naviel-lyrics-nosync-face)))) - (when (> (length (split-string naviel--lrc-raw "\n")) 12) - (insert (propertize " … (l for full lyrics)\n" 'face 'naviel-footer-face))))) - ;; No lyrics + + (progn + (insert (propertize " Lyrics\n" 'face 'naviel-breadcrumb-face)) + (insert (propertize " (unsynced)\n\n" 'face 'naviel-footer-face)) + ;; Show first 12 lines + (let ((lns (seq-take (split-string naviel--lrc-raw "\n") 12))) + (dolist (ln lns) + (insert (format " %s\n" + (propertize (naviel--trunc ln 52) + 'face 'naviel-lyrics-nosync-face)))) + (when (> (length (split-string naviel--lrc-raw "\n")) 12) + (insert (propertize " … (l for full lyrics)\n" 'face 'naviel-footer-face)))))) + ;; No lyrics (t (insert (propertize " No lyrics found.\n" 'face 'shadow)) (insert (propertize " l search lyrics manually\n" 'face 'naviel-footer-face))))) |
