@c -*-texinfo-*-
@c This is part of the XEmacs Lisp Reference Manual.
-@c Copyright (C) 1990, 1991, 1992, 1993, 1994 Free Software Foundation, Inc.
+@c Copyright (C) 1990, 1991, 1992, 1993, 1994 Free Software Foundation, Inc.
@c See the file lispref.texi for copying conditions.
@setfilename ../../info/markers.info
@node Markers, Text, Positions, Top
@end example
@end defun
-@defun copy-marker marker-or-integer
+@defun copy-marker marker-or-integer &optional marker-type
If passed a marker as its argument, @code{copy-marker} returns a
new marker that points to the same place and the same buffer as does
@var{marker-or-integer}. If passed an integer as its argument,
@code{copy-marker} returns a new marker that points to the end of the
buffer.
-An error is signaled if @var{marker} is neither a marker nor an
-integer.
+An error is signaled if @var{marker-or-integer} is neither a marker nor
+an integer.
+
+Optional second argument @var{marker-type} specifies the insertion type
+of the new marker; see @code{marker-insertion-type}.
@example
@group
in @var{buffer}. If @var{buffer} is not provided, it defaults to
the current buffer.
-If @var{position} is less than 1, @code{set-marker} moves @var{marker}
-to the beginning of the buffer. If @var{position} is greater than the
-size of the buffer, @code{set-marker} moves marker to the end of the
-buffer. If @var{position} is @code{nil} or a marker that points
-nowhere, then @var{marker} is set to point nowhere.
+@var{position} can be a marker, an integer or @code{nil}. If
+@var{position} is an integer, @code{set-marker} moves @var{marker} to
+point before the @var{position}th character in @var{buffer}. If
+@var{position} is @code{nil}, @var{marker} is made to point nowhere.
+Then it no longer slows down editing in any buffer. If @var{position}
+is less than 1, @var{marker} is moved to the beginning of @var{buffer}.
+If @var{position} is greater than the size of @var{buffer}, @var{marker}
+is moved to the end of @var{buffer}.
The value returned is @var{marker}.
mark position anyway---or @code{nil}, if the mark is not yet set for
the buffer.
-(Remember that if @var{zmacs-regions} is @code{nil}, the mark is
+(Remember that if @code{zmacs-regions} is @code{nil}, the mark is
always active as long as it exists, and the @var{force} argument
will have no effect.)
a mistake; see the documentation of @code{set-mark} below.
@end defun
-@defun mark-marker inactive-p buffer
+@defun mark-marker &optional force buffer
This function returns @var{buffer}'s mark. @var{buffer} defaults to the
current buffer if omitted. This is the very marker that records the
mark location inside XEmacs, not a copy. Therefore, changing this
@example
@group
-(let ((beg (point)))
+(let ((start (point)))
(forward-line 1)
- (delete-region beg (point))).
+ (delete-region start (point))).
@end group
@end example
@end defun
@example
@group
mark-ring
-@result{} (#<marker at 11050 in markers.texi>
+@result{} (#<marker at 11050 in markers.texi>
#<marker at 10832 in markers.texi>
@dots{})
@end group
should normally use @code{interactive} with the @samp{r} specification
to find the beginning and end of the region. This lets other Lisp
programs specify the bounds explicitly as arguments and automatically
-respects the user's setting for @var{zmacs-regions}. (@xref{Interactive
-Codes}.)
+respects the user's setting for @code{zmacs-regions}.
+(@xref{Interactive Codes}.)
@defun region-beginning &optional buffer
This function returns the position of the beginning of @var{buffer}'s
@defvar zmacs-region-stays
If a command sets this variable to true, the currently active region
will remain activated when the command finishes. (Normally the region is
-deactivated when each command terminates.) If @var{zmacs-regions} is
+deactivated when each command terminates.) If @code{zmacs-regions} is
false, however, this has no effect. Under normal circumstances, you do
not need to set this; use the interactive specification @samp{_}
instead, if you want the region to remain active.
This function activates the region in the current buffer (this is
equivalent to activating the current buffer's mark). This will normally
also highlight the text in the active region and set
-@var{zmacs-region-stays} to @code{t}. (If @var{zmacs-regions} is false,
-however, this function has no effect.)
+@code{zmacs-region-stays} to @code{t}. (If @code{zmacs-regions} is
+false, however, this function has no effect.)
@end defun
@defun zmacs-deactivate-region
This function deactivates the region in the current buffer (this is
equivalent to deactivating the current buffer's mark). This will
normally also unhighlight the text in the active region and set
-@var{zmacs-region-stays} to @code{nil}. (If @var{zmacs-regions} is
+@code{zmacs-region-stays} to @code{nil}. (If @code{zmacs-regions} is
false, however, this function has no effect.)
@end defun
@code{set-mark-command}, @code{activate-region}, or
@code{exchange-point-and-mark}.) Note that calling
@file{zmacs-activate-region} will call this hook, even if the region is
-already active. If @var{zmacs-regions} is false, however, this hook
+already active. If @code{zmacs-regions} is false, however, this hook
will never get called under any circumstances.
@end defvar
@defvar zmacs-deactivate-region-hook
This normal hook is called when an active region becomes inactive.
(Calling @file{zmacs-deactivate-region} when the region is inactive will
-@emph{not} cause this hook to be called.) If @var{zmacs-regions} is
+@emph{not} cause this hook to be called.) If @code{zmacs-regions} is
false, this hook will never get called.
@end defvar
@defvar zmacs-update-region-hook
This normal hook is called when an active region is "updated" by
@code{zmacs-update-region}. This normally gets called at the end
-of each command that sets @var{zmacs-region-stays} to @code{t},
+of each command that sets @code{zmacs-region-stays} to @code{t},
indicating that the region should remain activated. The motion
commands do this.
@end defvar