diff man/lispref/extents.texi @ 96:dbb370e3c29e r20-0final

Import from CVS: tag r20-0final
author cvs
date Mon, 13 Aug 2007 09:12:40 +0200
parents 131b0175ea99
children 0d2f883870bc
line wrap: on
line diff
--- a/man/lispref/extents.texi	Mon Aug 13 09:12:11 2007 +0200
+++ b/man/lispref/extents.texi	Mon Aug 13 09:12:40 2007 +0200
@@ -553,17 +553,9 @@
 kill, yank, and undo commands will restore or copy it.  @xref{Duplicable
 Extents}.
 
-@item replicating
-(Boolean) Meaningful only in conjunction with @code{duplicable}.  If
-set, actions that cause an extent to be copied from a buffer to a string
-cause the original extent to be recorded in the copy (as the copied
-extent's parent), so that when the extent is copied back into the
-buffer, @code{eq}ness between the original extent and the re-inserted
-extent is maintained whenever possible. @xref{Duplicable Extents}.
-
 @item unique
-(Boolean) Meaningful only in conjunction with @code{duplicable} and
-@code{replicating}.  When this is set, there may be only one instance of
+(Boolean) Meaningful only in conjunction with @code{duplicable}.
+When this is set, there may be only one instance of
 this extent attached at a time.  @xref{Duplicable Extents}.
 
 @item invisible
@@ -765,8 +757,7 @@
 that you cannot create an inheritance loop -- this is explicitly
 disallowed.
 
-  Parent extents are used to implement the ``replicating'' property
-(@pxref{Duplicable Extents}) and extents over the modeline.
+  Parent extents are used to implement the extents over the modeline.
 
 @defun set-extent-parent extent parent
 This function sets the parent of @var{extent} to @var{parent}.
@@ -793,30 +784,14 @@
 @node Duplicable Extents
 @section Duplicable Extents
 @cindex duplicable extent
-@cindex replicating extents
 @cindex unique extents
 @cindex extent replica
 @cindex extent, duplicable
-@cindex extent, replicating
 @cindex extent, unique
 
   If an extent has the @code{duplicable} property, it will be copied into
 strings, so that kill, yank, and undo commands will restore or copy it.
 
-  If a duplicable extent also has the @code{replicating} property, the
-extent itself is not actually copied; rather, a pointer to it is
-stored, along with the start and end positions of the extent. (This
-is done by making the copied extent a child of the original extent.
-Formerly, this was done by creating a special object called an
-@dfn{extent replica}.  Extent replicas no longer exist, but all the
-functionality is available in a cleaner and more general fashion
-using the @code{replicating} property.) This means that, e.g.,
-if you copy a replacting extent into the kill ring, then change the
-properties of the extent, then paste the kill-ring text back into the
-buffer, the newly-inserted extent will have the property changes you
-just made to the original extent, and not the property values at the
-time the text was copied into the kill ring.
-
 Specifically:
 
 @itemize @bullet
@@ -837,42 +812,8 @@
 back into a buffer.
 
 @item
-If a duplicable extent has the @code{replicating} property, then when
-it is copied into a string, the parent of the new extent is set to the
-extent it was copied from.
-
-@item
-When an extent with the @code{replicating} property is copied from
-a string back into a buffer:
-
-@itemize @minus
-@item
-If the extent's parent was detached from this buffer, it is reattached
-at the new range.
-
-@item
-If the extent's parent is attached to this buffer and is contiguous with
-or overlaps the new range, it is simply extended to include that range.
-Note that in this case the extent's @code{paste-function} is not called
-(see below).
-
-@item
-If the extent's parent was detached from another buffer, it is copied
-as if by @code{copy-extent} and attached at the new range.
-
-@item
-If the extent's parent is attached to another buffer, or is attached to
-this buffer and does not overlap the new range, it is copied as if by
-@code{copy-extent} and attached at the new range.  However, if the
-extent's parent has the @code{unique} property, this action is inhibited
-and nothing happens.
-@end itemize
-
-@item
 When @code{concat} is called on strings, the extents in the strings are
-copied into the resulting string.  If two or more replicating extents
-with the same parent end up overlapping or abutting in the resulting
-string, they are merged into a single extent.
+copied into the resulting string.
 
 @item
 When @code{substring} is called on a string, the relevant extents
@@ -883,10 +824,8 @@
 deletion, or inserted by @code{insert-extent} or string insertion, the
 action is recorded by the undo mechanism so that it can be undone later.
 Note that if an extent gets detached and then a later undo causes the
-extent to get reinserted, the new extent will be `eq' to the original
-extent if and only if the extent has the @code{replicating} property
-set.  This is the same as what happens when a string is cut and then
-pasted back in.
+extent to get reinserted, the new extent will not be `eq' to the original
+extent.
 
 @item
 Extent motion, face changes, and attachment via @code{make-extent} are