Subject: Re: bug#33871: 27.0.50; Revert Dired window saved in window configuration

From: Juri Linkov <[email-masked]>
Date: Sun, 13 Feb 2022 20:40:16 +0200

>> (progn (dired "/tmp") (dired-next-line 1)
>>        (split-window) (other-window 1)
>>        (dired "/tmp") (dired-next-line 2)
>>        (let ((w-c (current-window-configuration))
>> 	     (p-m (point-marker)))
>> 	 (view-emacs-todo) (delete-other-windows)
>> 	 (with-current-buffer (get-buffer "tmp")
>> 	   (revert-buffer))
>> 	 (set-window-configuration w-c)
>> 	 (goto-char p-m)))
>>
>> Result:
>> - point in the selected Dired window moves to point-min
>> - point in the non-selected Dired window moves to point-max
>
> I tried this in Emacs 29, and point was point-min in both windows.  But
> I'm not sure where point should end up after this code, really 😀, so is
> this working as expected now?

It should end up where it was initially, i.e. on file names in Dired.
But this can achieved only by implementing context-aware markers,
such as used by the package saveplace.el, e.g.:

  ((window-configuration-1
     ((dired-window-1 . `(lambda () (dired-goto-file ,(dired-get-filename))))))
   (window-configuration-2 ...)
   ...)