@node Overview of Markers
@section Overview of Markers
- A marker specifies a buffer and a position in that buffer. The marker
-can be used to represent a position in the functions that require one,
-just as an integer could be used. @xref{Positions}, for a complete
-description of positions.
+ A marker specifies a buffer and a position in that buffer. The
+marker can be used to represent a position in the functions that
+require one, just as an integer could be used. In that case, the
+marker's buffer is normally ignored. Of course, a marker used in this
+way usually points to a position in the buffer that the function
+operates on, but that is entirely the programmer's responsibility.
+@xref{Positions}, for a complete description of positions.
A marker has two attributes: the marker position, and the marker
buffer. The marker position is an integer that is equivalent (at a
@code{insert-before-markers} ignores markers' insertion types, always
relocating a marker to point after the inserted text.
-Most functions that create markers, without explicitly specifying an
-insertion type, create them with insertion type @code{nil}. Also, the
-mark has, by default, insertion type @code{nil}.
-
@defun set-marker-insertion-type marker type
This function sets the insertion type of marker @var{marker} to
@var{type}. If @var{type} is @code{t}, @var{marker} will advance when
This function reports the current insertion type of @var{marker}.
@end defun
+Most functions that create markers, without an argument allowing to
+specify the insertion type, create them with insertion type
+@code{nil}. Also, the mark has, by default, insertion type
+@code{nil}.
+
@node Moving Markers
@section Moving Marker Positions