GNU bug report logs -
#60600
30.0.50; [PATCH] Document manual desktop restore
Previous Next
Reported by: Manuel Giraud <manuel <at> ledu-giraud.fr>
Date: Fri, 6 Jan 2023 10:34:02 UTC
Severity: normal
Tags: patch
Found in version 30.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 60600 in the body.
You can then email your comments to 60600 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#60600
; Package
emacs
.
(Fri, 06 Jan 2023 10:34:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Manuel Giraud <manuel <at> ledu-giraud.fr>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Fri, 06 Jan 2023 10:34:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi,
This patch document how to do a manual desktop restore.
[0001-Document-manual-desktop-restore.patch (text/x-patch, attachment)]
[Message part 3 (text/plain, inline)]
In GNU Emacs 30.0.50 (build 1, x86_64-unknown-openbsd7.2, cairo version
1.17.6) of 2023-01-06 built on computer
Repository revision: 3fcbb865853d7c364cf7c2986ead9e258f449f97
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: OpenBSD computer 7.2 GENERIC.MP#903 amd64
Configured using:
'configure --prefix=/home/manuel/emacs --bindir=/home/manuel/bin
--with-x-toolkit=no --without-sound --without-compress-install
CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib'
Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LCMS2 LIBOTF LIBXML2 MODULES NOTIFY KQUEUE OLDXMENU PDUMPER PNG RSVG
SQLITE3 THREADS TIFF TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM ZLIB
Important settings:
value of $LC_ALL: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: Texinfo
Minor modes in effect:
global-git-commit-mode: t
magit-auto-revert-mode: t
bug-reference-prog-mode: t
auto-revert-mode: t
display-time-mode: t
display-battery-mode: t
server-mode: t
shell-dirtrack-mode: t
repeat-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
line-number-mode: t
auto-fill-function: do-auto-fill
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
/home/manuel/.emacs.d/elpa/ef-themes-0.10.0/theme-loaddefs hides /home/manuel/emacs/share/emacs/30.0.50/lisp/theme-loaddefs
/home/manuel/.emacs.d/elpa/transient-0.3.7/transient hides /home/manuel/emacs/share/emacs/30.0.50/lisp/transient
Features:
(shadow sort mail-extr emacsbug whitespace magit-patch misearch
multi-isearch shortdoc help-fns radix-tree executable texinfo
texinfo-loaddefs magit-extras face-remap magit-bookmark magit-submodule
magit-obsolete magit-blame magit-stash magit-reflog magit-bisect
magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit
magit-sequence magit-notes magit-worktree magit-tag magit-merge
magit-branch magit-reset magit-files magit-refs magit-status magit
magit-repos magit-apply magit-wip magit-log which-func magit-diff
smerge-mode diff git-commit log-edit pcvs-util add-log magit-core
magit-autorevert magit-margin magit-transient magit-process with-editor
magit-mode transient magit-git magit-section magit-utils dash pulse
ibuf-ext ibuffer ibuffer-loaddefs css-mode treesit smie imenu org-indent
rng-xsd xsd-regexp rng-cmpct rng-nxml rng-valid rng-loc rng-uri
rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns
nxml-mode nxml-outln nxml-rap sgml-mode facemenu nxml-util nxml-enc
xmltok view oc-basic org-element org-persist org-id org-refile avl-tree
ol-eww eww xdg url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus
nnselect ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex
ol-bbdb ol-w3m ol-doi org-link-doi epa-file bug-reference gnus-dired
autorevert filenotify vc-git diff-mode vc-dispatcher vc-svn desktop
frameset paredit edmacro time battery exwm-randr xcb-randr exwm-config
exwm exwm-input xcb-keysyms xcb-xkb exwm-manage exwm-floating xcb-cursor
xcb-render exwm-layout exwm-workspace exwm-core xcb-ewmh xcb-icccm xcb
xcb-xproto xcb-types xcb-debug kmacro server stimmung-themes
modus-operandi-theme modus-themes ytdious osm mingus libmpdee reporter
edebug debug backtrace transmission diary-lib diary-loaddefs color
calc-bin calc-ext calc calc-loaddefs rect calc-macs w3m-load mu4e
mu4e-org mu4e-main mu4e-view mu4e-headers mu4e-compose mu4e-draft
mu4e-actions smtpmail mu4e-search mu4e-lists mu4e-bookmarks mu4e-mark
mu4e-message flow-fill mule-util hl-line mu4e-contacts mu4e-update
mu4e-folders mu4e-server mu4e-context mu4e-vars mu4e-helpers mu4e-config
bookmark ido supercite regi ebdb-message ebdb-gnus gnus-msg gnus-art
mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill
kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus
gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int
gnus-range message sendmail yank-media puny rfc822 mml mml-sec epa epg
rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231
rfc2047 rfc2045 ietf-drums gmm-utils mailheader gnus-win gnus nnheader
gnus-util mail-utils range mm-util mail-prsvr ebdb-mua ebdb-com crm
ebdb-format ebdb mailabbrev eieio-opt cl-extra help-mode speedbar
ezimage dframe eieio-base pcase timezone org ob ob-tangle ob-ref ob-lob
ob-table ob-exp org-macro org-src ob-comint org-pcomplete org-list
org-footnote org-faces org-entities ob-emacs-lisp ob-core ob-eval
org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs
find-func cal-menu calendar cal-loaddefs org-version org-compat org-macs
visual-basic-mode cl web-mode derived disp-table erlang-start
smart-tabs-mode skeleton cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs slime-asdf grep slime-tramp
tramp tramp-loaddefs trampver tramp-integration cus-edit cus-load
wid-edit files-x tramp-compat rx shell pcomplete parse-time iso8601
time-date ls-lisp format-spec slime-fancy slime-indentation
slime-cl-indent cl-indent slime-trace-dialog slime-fontifying-fu
slime-package-fu slime-references slime-compiler-notes-tree advice
slime-scratch slime-presentations bridge slime-macrostep macrostep
slime-mdot-fu slime-enclosing-context slime-fuzzy slime-fancy-trace
slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc
slime-repl slime-parse slime compile text-property-search etags fileloop
generator xref project arc-mode archive-mode noutline outline icons pp
comint ansi-osc ansi-color ring hyperspec thingatpt slime-autoloads
dired-aux dired-x dired dired-loaddefs notifications dbus xml repeat
easy-mmode stimmung-themes-autoloads rust-mode-autoloads ebdb-autoloads
magit-autoloads debbugs-autoloads git-commit-autoloads
magit-section-autoloads ef-themes-autoloads with-editor-autoloads
paredit-autoloads dash-autoloads ytdious-autoloads
transmission-autoloads transient-autoloads exwm-autoloads
hyperbole-autoloads detached-autoloads info package browse-url url
url-proxy url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x
map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc
iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind kqueue lcms2 dynamic-setting system-font-setting
font-render-setting cairo xinput2 x multi-tty make-network-process
emacs)
Memory information:
((conses 16 755171 92149)
(symbols 48 59596 3)
(strings 32 194558 7376)
(string-bytes 1 6141566)
(vectors 16 113719)
(vector-slots 8 2244387 111508)
(floats 8 618 373)
(intervals 56 24661 1377)
(buffers 984 91))
--
Manuel Giraud
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#60600
; Package
emacs
.
(Fri, 06 Jan 2023 11:55:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 60600 <at> debbugs.gnu.org (full text, mbox):
> From: Manuel Giraud <manuel <at> ledu-giraud.fr>
> Date: Fri, 06 Jan 2023 11:33:20 +0100
>
> diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
> index c706b727e6f..ec24d43c46a 100644
> --- a/doc/emacs/misc.texi
> +++ b/doc/emacs/misc.texi
> @@ -2733,11 +2733,13 @@ Saving Emacs Sessions
> @findex desktop-save
> @vindex desktop-save-mode
> You can save the desktop manually with the command @kbd{M-x
> -desktop-save}. You can also enable automatic saving of the desktop
> -when you exit Emacs, and automatic restoration of the last saved
> -desktop when Emacs starts: use the Customization buffer (@pxref{Easy
> -Customization}) to set @code{desktop-save-mode} to @code{t} for future
> -sessions, or add this line in your init file (@pxref{Init File}):
> +desktop-save}. You can then restore the desktop manually with the
> +command @kbd{M-x desktop-read}. You can also enable automatic saving
> +of the desktop when you exit Emacs, and automatic restoration of the
> +last saved desktop when Emacs starts: use the Customization buffer
> +(@pxref{Easy Customization}) to set @code{desktop-save-mode} to
> +@code{t} for future sessions, or add this line in your init file
> +(@pxref{Init File}):
Thanks.
The new text seems to imply that using "M-x desktop-save" necessarily
means restoring must also be manual. But this is only true if
desktop-save-mode was not enabled. I have the mode enabled, and I
still sometimes save the desktop manually, whenever I make some
significant change to the session, to make sure the new arrangement is
saved and not lost due to some catastrophe.
So the change needs to be reworded not to imply the mistaken
interpretation that saving manually requires restoring manually.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#60600
; Package
emacs
.
(Fri, 06 Jan 2023 12:27:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 60600 <at> debbugs.gnu.org (full text, mbox):
Eli Zaretskii <eliz <at> gnu.org> writes:
Hi Eli,
[...]
> The new text seems to imply that using "M-x desktop-save" necessarily
> means restoring must also be manual. But this is only true if
> desktop-save-mode was not enabled. I have the mode enabled, and I
> still sometimes save the desktop manually, whenever I make some
> significant change to the session, to make sure the new arrangement is
> saved and not lost due to some catastrophe.
>
> So the change needs to be reworded not to imply the mistaken
> interpretation that saving manually requires restoring manually.
Ok but OTOH, when you are not using desktop-save-mode (as I do) after
the manual save explanation you are left wondering « how could I restore
it when I need to? » and then the text goes on about setting up
desktop-save-mode. That's why I placed this sentence here. Maybe it
need some rewording but I don't know how I could do it.
And BTW, shouldn't desktop-revert be the user facing interface here?
--
Manuel Giraud
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#60600
; Package
emacs
.
(Fri, 06 Jan 2023 13:16:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 60600 <at> debbugs.gnu.org (full text, mbox):
> From: Manuel Giraud <manuel <at> ledu-giraud.fr>
> Cc: 60600 <at> debbugs.gnu.org
> Date: Fri, 06 Jan 2023 13:26:27 +0100
>
> Eli Zaretskii <eliz <at> gnu.org> writes:
>
> > The new text seems to imply that using "M-x desktop-save" necessarily
> > means restoring must also be manual. But this is only true if
> > desktop-save-mode was not enabled. I have the mode enabled, and I
> > still sometimes save the desktop manually, whenever I make some
> > significant change to the session, to make sure the new arrangement is
> > saved and not lost due to some catastrophe.
> >
> > So the change needs to be reworded not to imply the mistaken
> > interpretation that saving manually requires restoring manually.
>
> Ok but OTOH, when you are not using desktop-save-mode (as I do) after
> the manual save explanation you are left wondering « how could I restore
> it when I need to? » and then the text goes on about setting up
> desktop-save-mode. That's why I placed this sentence here. Maybe it
> need some rewording but I don't know how I could do it.
I find the organization of the text in that section not very logical
in general. It begins by describing not-very-important optional
features. It should instead start by describing desktop-save-mode,
since this is the recommended use of this facility, and leave the
manual saving/restoring for later (explaining why one would want to do
it manually). When it describes desktop-save-mode, it should mention
that saving happens also from time to time, not just upon exit,
something that for some reason is described much later in the section.
And the order of describing the various optional features seems to
lack any logic, which at least should be to describe the more
significant/important options (such as desktop-load-locked-desktop,
for example) first.
Feel free to rewrite the section along the above lines; if not, I will
do that soon, hopefully also taking care of the issue you raise.
> And BTW, shouldn't desktop-revert be the user facing interface here?
What do you mean? desktop-revert is described in that section (again,
without any hint about when it could be useful).
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#60600
; Package
emacs
.
(Fri, 06 Jan 2023 13:31:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 60600 <at> debbugs.gnu.org (full text, mbox):
Eli Zaretskii <eliz <at> gnu.org> writes:
[...]
> I find the organization of the text in that section not very logical
> in general. It begins by describing not-very-important optional
> features. It should instead start by describing desktop-save-mode,
> since this is the recommended use of this facility, and leave the
> manual saving/restoring for later (explaining why one would want to do
> it manually). When it describes desktop-save-mode, it should mention
> that saving happens also from time to time, not just upon exit,
> something that for some reason is described much later in the section.
> And the order of describing the various optional features seems to
> lack any logic, which at least should be to describe the more
> significant/important options (such as desktop-load-locked-desktop,
> for example) first.
Yes. I had the same feeling when reading this section. It starts
talking about desktop-restore-frames before I had grasp what is the
purpose of desktop.
I'll see if I can come up with something and report here.
>> And BTW, shouldn't desktop-revert be the user facing interface here?
>
> What do you mean? desktop-revert is described in that section (again,
> without any hint about when it could be useful).
I think I was mistaken desktop-read seems to be the correct interface as
documented in desktop-save-mode function.
--
Manuel Giraud
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#60600
; Package
emacs
.
(Fri, 06 Jan 2023 14:07:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 60600 <at> debbugs.gnu.org (full text, mbox):
> From: Manuel Giraud <manuel <at> ledu-giraud.fr>
> Cc: 60600 <at> debbugs.gnu.org
> Date: Fri, 06 Jan 2023 14:30:39 +0100
>
> >> And BTW, shouldn't desktop-revert be the user facing interface here?
> >
> > What do you mean? desktop-revert is described in that section (again,
> > without any hint about when it could be useful).
>
> I think I was mistaken desktop-read seems to be the correct interface as
> documented in desktop-save-mode function.
Yes, desktop-read should be mentioned there, as desktop-revert is only
TRT if one ever uses a single desktop file.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#60600
; Package
emacs
.
(Fri, 06 Jan 2023 15:16:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 60600 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Here is a rewrite/reshuffle of (Saving Emacs Sessions) node.
I tried to explain desktop-save-mode right from the start. Then go on
with the options by order of importance. As you suggest, I left
desktop-load-locked-desktop quite high even though I find it a bit
verbose and quite « implementation detail ». WDYT?
[0001-Rewrite-Saving-Emacs-Sessions-bug-60600.patch (text/x-patch, attachment)]
[Message part 3 (text/plain, inline)]
--
Manuel Giraud
Reply sent
to
Eli Zaretskii <eliz <at> gnu.org>
:
You have taken responsibility.
(Sat, 07 Jan 2023 08:50:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Manuel Giraud <manuel <at> ledu-giraud.fr>
:
bug acknowledged by developer.
(Sat, 07 Jan 2023 08:50:02 GMT)
Full text and
rfc822 format available.
Message #28 received at 60600-done <at> debbugs.gnu.org (full text, mbox):
> From: Manuel Giraud <manuel <at> ledu-giraud.fr>
> Cc: 60600 <at> debbugs.gnu.org
> Date: Fri, 06 Jan 2023 16:15:08 +0100
>
> Here is a rewrite/reshuffle of (Saving Emacs Sessions) node.
>
> I tried to explain desktop-save-mode right from the start. Then go on
> with the options by order of importance. As you suggest, I left
> desktop-load-locked-desktop quite high even though I find it a bit
> verbose and quite « implementation detail ». WDYT?
Thanks, this LGTM. So I've installed it on the emacs-29 release
branch, and then made a few minor changes in the wording and the
arrangement of the text.
And with this, I'm closing this bug.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sat, 04 Feb 2023 12:24:05 GMT)
Full text and
rfc822 format available.
This bug report was last modified 2 years and 215 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.