*** empty log message ***
[bpt/emacs.git] / lispref / markers.texi
index 60b2aae..e8e0447 100644 (file)
@@ -1,7 +1,7 @@
 @c -*-texinfo-*-
 @c This is part of the GNU Emacs Lisp Reference Manual.
-@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999
-@c   Free Software Foundation, Inc.
+@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
+@c   2002, 2003, 2004, 2005, 2006, 2007  Free Software Foundation, Inc.
 @c See the file elisp.texi for copying conditions.
 @setfilename ../info/markers
 @node Markers, Text, Positions, Top
@@ -21,8 +21,8 @@ deleted, so that it stays with the two characters on either side of it.
 * Marker Insertion Types::   Two ways a marker can relocate when you
                                insert where it points.
 * Moving Markers::           Moving the marker to a new buffer or position.
-* The Mark::                 How ``the mark'' is implemented with a marker.
-* The Region::               How to access ``the region''.
+* The Mark::                 How "the mark" is implemented with a marker.
+* The Region::               How to access "the region".
 @end menu
 
 @node Overview of Markers
@@ -36,14 +36,15 @@ 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
-given time) to the marker as a position in that buffer.  But the
-marker's position value can change often during the life of the marker.
-Insertion and deletion of text in the buffer relocate the marker.  The
-idea is that a marker positioned between two characters remains between
-those two characters despite insertion and deletion elsewhere in the
-buffer.  Relocation changes the integer equivalent of the marker.
+  A marker has three attributes: the marker position, the marker
+buffer, and the insertion type.  The marker position is an integer
+that is equivalent (at a given time) to the marker as a position in
+that buffer.  But the marker's position value can change often during
+the life of the marker.  Insertion and deletion of text in the buffer
+relocate the marker.  The idea is that a marker positioned between two
+characters remains between those two characters despite insertion and
+deletion elsewhere in the buffer.  Relocation changes the integer
+equivalent of the marker.
 
 @cindex marker relocation
   Deleting text around a marker's position leaves the marker between the
@@ -310,7 +311,6 @@ This function returns the buffer that @var{marker} points into, or
 @end defun
 
 @defun buffer-has-markers-at position
-@tindex buffer-has-markers-at
 This function returns @code{t} if one or more markers
 point at position @var{position} in the current buffer.
 @end defun
@@ -441,13 +441,14 @@ programming.  So we do not describe it here.
 
 @defun mark &optional force
 @cindex current buffer mark
-This function returns the current buffer's mark position as an integer.
-
-If Transient Mark mode is enabled, @code{mark-even-if-inactive} is
-@code{nil} and the mark is inactive, @code{mark} normally signals
-an error.  However, if @var{force} is non-@code{nil}, then @code{mark}
-returns the mark position anyway---or @code{nil}, if the mark is not
-yet set for this buffer.
+This function returns the current buffer's mark position as an integer,
+or @code{nil} if no mark has ever been set in this buffer.
+
+If Transient Mark mode is enabled, and @code{mark-even-if-inactive} is
+@code{nil}, @code{mark} signals an error if the mark is inactive.
+However, if @var{force} is non-@code{nil}, then @code{mark} disregards
+inactivity of the mark, and returns the mark position anyway (or
+@code{nil}).
 @end defun
 
 @defun mark-marker