When you create a new marker, you can make it point nowhere, or point to the present position of point, or to the beginning or end of the accessible portion of the buffer, or to the same place as another given marker.
(make-marker) => #<marker in no buffer>
copy-marker
, below.
Here are examples of this function and point-min-marker
, shown in
a buffer containing a version of the source file for the text of this
chapter.
(point-min-marker) => #<marker at 1 in markers.texi> (point-max-marker) => #<marker at 15573 in markers.texi> (narrow-to-region 100 200) => nil (point-min-marker) => #<marker at 100 in markers.texi> (point-max-marker) => #<marker at 200 in markers.texi>
copy-marker
returns a
new marker that points to the same place and the same buffer as does
marker-or-integer. If passed an integer as its argument,
copy-marker
returns a new marker that points to position
marker-or-integer in the current buffer.
The new marker's insertion type is specified by the argument insertion-type. See section Marker Insertion Types.
If passed an integer argument less than 1, copy-marker
returns a
new marker that points to the beginning of the current buffer. If
passed an integer argument greater than the length of the buffer,
copy-marker
returns a new marker that points to the end of the
buffer.
(copy-marker 0) => #<marker at 1 in markers.texi> (copy-marker 20000) => #<marker at 7572 in markers.texi>
An error is signaled if marker is neither a marker nor an integer.
Two distinct markers are considered equal
(even though not
eq
) to each other if they have the same position and buffer, or
if they both point nowhere.
(setq p (point-marker)) => #<marker at 2139 in markers.texi> (setq q (copy-marker p)) => #<marker at 2139 in markers.texi> (eq p q) => nil (equal p q) => t
Go to the first, previous, next, last section, table of contents.