changeset 78837:5c28c184a1f6

(Display Property): Clarify when multiple display specs work in parallel and when one overrides. Fix error in example.
author Richard M. Stallman <rms@gnu.org>
date Wed, 19 Sep 2007 15:04:45 +0000
parents 77e62aa4e2b8
children 008bf89ffa59
files lispref/display.texi
diffstat 1 files changed, 15 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/lispref/display.texi	Wed Sep 19 14:55:52 2007 +0000
+++ b/lispref/display.texi	Wed Sep 19 15:04:45 2007 +0000
@@ -3237,15 +3237,20 @@
 insert images into text, and also control other aspects of how text
 displays.  The value of the @code{display} property should be a
 display specification, or a list or vector containing several display
-specifications (which apply in parallel to the text they cover).
-
-  Some kinds of @code{display} properties specify something to display
-instead of the text that has the property.  In this case, ``the text''
-means all the consecutive characters that have the same Lisp object as
-their @code{display} property; these characters are replaced as a
-single unit.  By contrast, characters that have similar but distinct
-Lisp objects as their @code{display} properties are handled
-separately.  Here's a function that illustrates this point:
+specifications.  Display specifications generally apply in parallel to
+the text they cover.
+
+  Some kinds of @code{display} specifications specify something to
+display instead of the text that has the property.  If a list of
+display specifications includes more than one of this kind, the first
+is effective and the rest are ignored.
+
+  For these specifications, ``the text that has the property'' means
+all the consecutive characters that have the same Lisp object as their
+@code{display} property; these characters are replaced as a single
+unit.  By contrast, characters that have similar but distinct Lisp
+objects as their @code{display} properties are handled separately.
+Here's a function that illustrates this point:
 
 @smallexample
 (defun foo ()
@@ -3273,7 +3278,7 @@
   (goto-char (point-min))
   (dotimes (i 5)
     (let ((string (concat "A")))
-      (put-text-property (point) (2+ (point)) 'display string)
+      (put-text-property (point) (+ 2 (point)) 'display string)
       (put-text-property (point) (1+ (point)) 'display string)
       (forward-char 2))))
 @end smallexample