Re: Playlists getting deleted

George <[email protected]> Thu, 16 Jul 2026 20:35:54 +0200
Newsgroups gmane.emacs.emms.user
Message-ID <CAAh4ApPLMnweZfW53ohV92qavqBmW9YvQXO6tbxRjYvkSf0iTw@mail.gmail.com>
--000000000000ec32410656beb640
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

That's helpful - thanks.

My new config couldn't be simpler - let's see if I still have issues...

;;; EMMS
(emms-all)
(emms-history-load)

(setq emms-player-list '(emms-player-mpv)
      emms-info-functions '(emms-info-native))

(define-key emms-playlist-mode-map (kbd "DEL") #'emms-metaplaylist-mode-go)

(setq-default emms-single-track t)

(keymap-global-set "<f7>" #'emms-playlist-mode-go)
(keymap-global-set "<f6>" #'emms-metaplaylist-mode-go)


On Thu, Jul 16, 2026 at 7:56=E2=80=AFPM Yoni Rabkin <[email protected]> wrot=
e:

> George <[email protected]> writes:
>
> > Hi Yoni,
> >
> > Can you tell me how the playlists are restored when Emacs is opened? Or
> the
> > names of the functions involved?
> > It seems to me that the playlist buffers ARE the playlists i.e the
> > playlists aren't generated by a reading from a file but from restoring
> the
> > buffers.
> >
> > Killing a playlist buffer seems to delete the playlist? Doesn't this
> result
> > in playlists being occasionally unintentionally deleted?
> >
> > Thanks,
> > George
>
> In Emms, playlists are just buffers with text in them. Those lines of
> text have overlays which carry additional information. Apologies; I
> didn't realize this wasn't clear from your previous emails.
>
> If you are in an Emms buffer with tracks, you can see the information in
> the overlay by putting point over any track and evaluating:
> (get-text-property (point) 'emms-track)
>
> > On Sat, Jul 11, 2026 at 10:33=E2=80=AFPM George <[email protected]>=
 wrote:
> >
> >> Thanks!
> >>
> >> On Mon, 6 Jul 2026 at 03:41, Yoni Rabkin <[email protected]> wrote:
> >>
> >>> George <[email protected]> writes:
> >>>
> >>> > Hi there,
> >>> >
> >>> > Sometimes (I'm not quite sure when exactly) I open Emacs to find al=
l
> of
> >>> my
> >>> > Emms playlists have disappeared...
> >>>
> >>> That's the tricky part; the "sometimes". Without a way to recreate th=
e
> >>> bug it's hard.
> >>>
> >>> I'll install the setup and check to see if I can observe it in the
> wild.
> >>>
> >>> > I assume the playlist buffers must've been killed before Emacs was
> >>> killed.
> >>> >
> >>> > I've mapped "C-x k" to 'bury-buffer' so I don't accidently delete a
> >>> > playlist when killing its buffer.
> >>> >
> >>> > Do you have an idea why this might be happening?
> >>> >
> >>> > Here's my config:
> >>> >
> >>> > (use-package emms
> >>> >   :ensure t
> >>> >   :init
> >>> >   (emms-all)
> >>> >   (add-hook 'emms-metaplaylist-mode-hook #'hl-line-mode)
> >>> >   :hook
> >>> >   (after-init . emms-history-load)
> >>> >   :bind
> >>> >   ("<f7>" . emms-playlist-mode-go)
> >>> >   ("C-c e b" . emms-browser)
> >>> >   ("<f6>" . emms-metaplaylist-mode-go)
> >>> >
> >>> >   (:map emms-playlist-mode-map
> >>> >         ("C-x k" . bury-buffer)
> >>> > ("DEL" . emms-metaplaylist-mode-go)
> >>> > ("M-<up>" . emms-playlist-mode-shift-track-up)
> >>> > ("M-<down>" . emms-playlist-mode-shift-track-down))
> >>> >
> >>> >   :config
> >>> >   (require 'emms-history)
> >>> >   (emms-mode-line-mode -1)
> >>> >
> >>> >   (setq emms-player-list '(emms-player-mpv)
> >>> >         emms-info-functions '(emms-info-native))
> >>> >   (setq-default emms-single-track t)
> >>> >
> >>> >   (setq-default
> >>> >
> >>> >    emms-source-playlist-default-format 'm3u
> >>> >    emms-player-mpv-parameters '("--quiet" "--really-quiet"
> >>> > "--no-audio-display" "--force-window=3Dno"  "--fullscreen"
> >>> > ;"--config-dir=3D~/.emacs.d/"
> >>> > "--save-position-on-quit")))
> >>> >
> >>> > Thanks for your help!
> >>> > George
> >>>
> >>> --
> >>>    "Cut your own wood and it will warm you twice"
> >>>
> >>
>
> --
>    "Cut your own wood and it will warm you twice"
>

--000000000000ec32410656beb640
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>That&#39;s helpful - thanks.</div><div><br></div><div=
>My new config couldn&#39;t be simpler - let&#39;s see if I still have issu=
es...</div><div><br></div><div>;;; EMMS<br>(emms-all)<br>(emms-history-load=
)<br><br>(setq emms-player-list &#39;(emms-player-mpv)<br>=C2=A0 =C2=A0 =C2=
=A0 emms-info-functions &#39;(emms-info-native))<br><br>(define-key emms-pl=
aylist-mode-map (kbd &quot;DEL&quot;) #&#39;emms-metaplaylist-mode-go)<br><=
br>(setq-default emms-single-track t)<br><br>(keymap-global-set &quot;&lt;f=
7&gt;&quot; #&#39;emms-playlist-mode-go)<br>(keymap-global-set &quot;&lt;f6=
&gt;&quot; #&#39;emms-metaplaylist-mode-go)<br><br></div></div><br><div cla=
ss=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_at=
tr">On Thu, Jul 16, 2026 at 7:56=E2=80=AFPM Yoni Rabkin &lt;<a href=3D"mail=
to:[email protected]">[email protected]</a>&gt; wrote:<br></div><blockquote c=
lass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px soli=
d rgb(204,204,204);padding-left:1ex">George &lt;<a href=3D"mailto:georgehad=
[email protected]" target=3D"_blank">[email protected]</a>&gt; writes:<br>
<br>
&gt; Hi Yoni,<br>
&gt;<br>
&gt; Can you tell me how the playlists are restored when Emacs is opened? O=
r the<br>
&gt; names of the functions involved?<br>
&gt; It seems to me that the playlist buffers ARE the playlists i.e the<br>
&gt; playlists aren&#39;t generated by a reading from a file but from resto=
ring the<br>
&gt; buffers.<br>
&gt;<br>
&gt; Killing a playlist buffer seems to delete the playlist? Doesn&#39;t th=
is result<br>
&gt; in playlists being occasionally unintentionally deleted?<br>
&gt;<br>
&gt; Thanks,<br>
&gt; George<br>
<br>
In Emms, playlists are just buffers with text in them. Those lines of<br>
text have overlays which carry additional information. Apologies; I<br>
didn&#39;t realize this wasn&#39;t clear from your previous emails.<br>
<br>
If you are in an Emms buffer with tracks, you can see the information in<br=
>
the overlay by putting point over any track and evaluating:<br>
(get-text-property (point) &#39;emms-track)<br>
<br>
&gt; On Sat, Jul 11, 2026 at 10:33=E2=80=AFPM George &lt;<a href=3D"mailto:=
[email protected]" target=3D"_blank">[email protected]</a>&gt; wrot=
e:<br>
&gt;<br>
&gt;&gt; Thanks!<br>
&gt;&gt;<br>
&gt;&gt; On Mon, 6 Jul 2026 at 03:41, Yoni Rabkin &lt;<a href=3D"mailto:yon=
[email protected]" target=3D"_blank">[email protected]</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt;&gt; George &lt;<a href=3D"mailto:[email protected]" target=3D"=
_blank">[email protected]</a>&gt; writes:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; &gt; Hi there,<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt; Sometimes (I&#39;m not quite sure when exactly) I open Em=
acs to find all of<br>
&gt;&gt;&gt; my<br>
&gt;&gt;&gt; &gt; Emms playlists have disappeared...<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; That&#39;s the tricky part; the &quot;sometimes&quot;. Without=
 a way to recreate the<br>
&gt;&gt;&gt; bug it&#39;s hard.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; I&#39;ll install the setup and check to see if I can observe i=
t in the wild.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; &gt; I assume the playlist buffers must&#39;ve been killed bef=
ore Emacs was<br>
&gt;&gt;&gt; killed.<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt; I&#39;ve mapped &quot;C-x k&quot; to &#39;bury-buffer&#39=
; so I don&#39;t accidently delete a<br>
&gt;&gt;&gt; &gt; playlist when killing its buffer.<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt; Do you have an idea why this might be happening?<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt; Here&#39;s my config:<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt; (use-package emms<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0:ensure t<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0:init<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(emms-all)<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(add-hook &#39;emms-metaplaylist-mode-hook #&=
#39;hl-line-mode)<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0:hook<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(after-init . emms-history-load)<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0:bind<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(&quot;&lt;f7&gt;&quot; . emms-playlist-mode-=
go)<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(&quot;C-c e b&quot; . emms-browser)<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(&quot;&lt;f6&gt;&quot; . emms-metaplaylist-m=
ode-go)<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(:map emms-playlist-mode-map<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(&quot;C-x k&quot; . bur=
y-buffer)<br>
&gt;&gt;&gt; &gt; (&quot;DEL&quot; . emms-metaplaylist-mode-go)<br>
&gt;&gt;&gt; &gt; (&quot;M-&lt;up&gt;&quot; . emms-playlist-mode-shift-trac=
k-up)<br>
&gt;&gt;&gt; &gt; (&quot;M-&lt;down&gt;&quot; . emms-playlist-mode-shift-tr=
ack-down))<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0:config<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(require &#39;emms-history)<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(emms-mode-line-mode -1)<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(setq emms-player-list &#39;(emms-player-mpv)=
<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0emms-info-functions &#39=
;(emms-info-native))<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(setq-default emms-single-track t)<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0(setq-default<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0 emms-source-playlist-default-format &#39;m3u=
<br>
&gt;&gt;&gt; &gt;=C2=A0 =C2=A0 emms-player-mpv-parameters &#39;(&quot;--qui=
et&quot; &quot;--really-quiet&quot;<br>
&gt;&gt;&gt; &gt; &quot;--no-audio-display&quot; &quot;--force-window=3Dno&=
quot;=C2=A0 &quot;--fullscreen&quot;<br>
&gt;&gt;&gt; &gt; ;&quot;--config-dir=3D~/.emacs.d/&quot;<br>
&gt;&gt;&gt; &gt; &quot;--save-position-on-quit&quot;)))<br>
&gt;&gt;&gt; &gt;<br>
&gt;&gt;&gt; &gt; Thanks for your help!<br>
&gt;&gt;&gt; &gt; George<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; --<br>
&gt;&gt;&gt;=C2=A0 =C2=A0 &quot;Cut your own wood and it will warm you twic=
e&quot;<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
<br>
-- <br>
=C2=A0 =C2=A0&quot;Cut your own wood and it will warm you twice&quot;<br>
</blockquote></div>

--000000000000ec32410656beb640--