]> git.eshelyaron.com Git - emacs.git/commitdiff
Document and announce 'marker-last-position'
authorMartin Rudalics <rudalics@gmx.at>
Sat, 16 Mar 2024 09:46:02 +0000 (10:46 +0100)
committerEshel Yaron <me@eshelyaron.com>
Mon, 18 Mar 2024 15:43:42 +0000 (16:43 +0100)
* doc/lispref/markers.texi (Information from Markers): Document
'marker-last-position'.
* etc/NEWS: Announce 'marker-last-position'.
* src/window.c (window_restore_killed_buffer_windows): Minor
doc-string fix.
* doc/lispref/windows.texi (Window Configurations): Minor fix.

(cherry picked from commit c12852bbf61ebb9ae124033deb427b15ce1a2ffb)

doc/lispref/markers.texi
doc/lispref/windows.texi
etc/NEWS
src/window.c

index 3037790692c5154e084c2a3713e92e0a9fd7c405..28ad0ff73c06d2f2ed9faafe2cc0099279895067 100644 (file)
@@ -283,6 +283,13 @@ This function returns the position that @var{marker} points to, or
 @code{nil} if it points nowhere.
 @end defun
 
+@defun marker-last-position marker
+This function returns the last known position of @var{marker} in its
+buffer.  It behaves like @code{marker-position} with one exception: If
+the buffer of @var{marker} has been killed, it returns the last position
+of @var{marker} in that buffer before it was killed.
+@end defun
+
 @defun marker-buffer marker
 This function returns the buffer that @var{marker} points into, or
 @code{nil} if it points nowhere.
index 2e2fdee422b81720e3b786c00e208eb368b359ca..eef05d94fdbc9d7a24b022e3660b536b446d54f7 100644 (file)
@@ -6424,8 +6424,8 @@ windows are restored by @code{window-state-put}.
 The second argument specifies a list of entries for @emph{all} windows
 whose previous buffers have been found dead at the time
 @code{set-window-configuration} or @code{window-state-put} tried to
-restore it in that window (minibuffer windows are excluded).  This means
-that the function may also delete windows which were found live by
+restore them (minibuffer windows are excluded).  This means that the
+function may also delete windows which were found live by
 @code{set-window-configuration}.
 
 Each entry in the list that is passed as the second argument to the
index 3e94d123c8e7a9bac2333200cc06ca590130d962..abef48f54bbd40947534a207a9ec491c2d8d301e 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1965,6 +1965,11 @@ backends change how Xref then restores this context.
 It returns the name of a buffer before the last time it was renamed or
 killed.
 
+** New primitive 'marker-last-position'.
+It returns the last position of MARKER in its buffer even if that buffer
+has been killed.
+
+
 ** Functions and variables to transpose sexps
 
 +++
index b69f4719d93a7e29fa26d09e0bdea0b6af3763b4..748ad9e77d442aa6552c2ebddba868fc1c164fe7 100644 (file)
@@ -8711,12 +8711,12 @@ third argument is the symbol `configuration' if the windows are
 restored by `set-window-configuration' and the symbol `state' if the
 windows are restored by `window-state-put'.
 
-The second argument specifies a list of entries for all windows
-whose previous buffers have been found dead at the time
-`set-window-configuration' or `window-state-put' tried to restore it in
-that window (minibuffer windows are excluded).  This means that the
-function specified by this variable may also delete windows which were
-found to be alive by `set-window-configuration'.
+The second argument specifies a list of entries for all windows whose
+previous buffers have been found dead at the time
+`set-window-configuration' or `window-state-put' tried to restore them
+(minibuffer windows are excluded).  This means that the function
+specified by this variable may also delete windows which were found to
+be alive by `set-window-configuration'.
 
 Each entry is a list of six values: the window whose buffer was found
 dead, the dead buffer or its name, the positions of window-start and