Subject: Re: bug#29972: 25.3; dired-hide-details-mode does not persist in desktop session

From: Lars Ingebrigtsen <[email-masked]>
Date: Sun, 17 Apr 2022 20:22:39 +0200

Yuen Ho Wong <[email-masked]> writes:

> How to reproduce:
> 1. Turn on `desktop-save-mode`
> 2. dired some directory
> 3. Press `(` to turn on `dired-hide-details-mode`
> 4. C-x C-c, when asked to save desktop, choose yes
> 5. Launch emacs again, desktop restored the dired buffer but not
> `dired-hide-details-mode`
>
> What went wrong:
> `dired-hide-details-mode`'s definition does not declare a lighter or a
> keymap, thus it is not added to `minor-mode-alist` by
> `define-minor-mode`. So when `desktop` tries to get the buffer's info to
> save to `.emacs.desktop` via `desktop-buffer-info`,
> `dired-hide-details-mode` does not exist, and thus not saved to the
> session file.
>
> Fix:
> Just declare an empty lighter. I've attached a patch for this.

I've fixed this in a differently way in Emacs 29 -- I'm using the
local-minor-modes variable instead, which does not depend on lighters
and keymaps.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no