From xemacs-m  Sun Aug 24 20:32:28 1997
Received: from relay7.UU.NET (relay7.UU.NET [192.48.96.17])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id UAA07737
	for <xemacs-beta@xemacs.org>; Sun, 24 Aug 1997 20:32:28 -0500 (CDT)
Received: from crystal.WonderWorks.COM by relay7.UU.NET with ESMTP 
	(peer crosschecked as: crystal.WonderWorks.com [192.203.206.1])
	id QQdebe07738; Sun, 24 Aug 1997 21:32:28 -0400 (EDT)
Received: by crystal.WonderWorks.COM 
	id QQdebe25129; Sun, 24 Aug 1997 21:32:27 -0400 (EDT)
Date: Sun, 24 Aug 1997 21:32:27 -0400 (EDT)
Message-Id: <QQdebe25129.199708250132@crystal.WonderWorks.COM>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
From: Kyle Jones <kyle_jones@wonderworks.com>
To: XEmacs Beta List <xemacs-beta@xemacs.org>
Subject: Re: [bug] add-text-properties 
In-Reply-To: <9708230736.AA08426@cfdevx1.lehman.com>
References: <QQddlv26398.199708202155@crystal.WonderWorks.COM>
	<9708230736.AA08426@cfdevx1.lehman.com>
X-Mailer: VM 6.34 under 19.16 XEmacs Lucid (beta90)
X-Face: /cA45WHG7jWq>(O3&Z57Y<"WsX5ddc,4c#w0F*zrV#=M
        0@~@,s;b,aMtR5Sqs"+nU.z^CSFQ9t`z2>W,S,]:[+2^
        Nbf6v4g>!&,7R4Ot4Wg{&tm=WX7P["9%a)_da48-^tGy
        ,qz]Z,Zz\{E.,]'EO+F)@$KtF&V

Rick Campbell writes:
 >     Date: Wed, 20 Aug 1997 17:55:40 -0400 (EDT)
 >     From: Kyle Jones <kyle_jones@wonderworks.com>
 >     
 >     Colin Rafferty writes:
 >      > The real question is, why does `kill-new' (low-level) copy any
 >      > text properties at all?  I cannot think of one example where I
 >      > would want the text-properties to be copied.
 >      > 
 >      > But maybe this is because I never did any property hacking in emacs.
 >     
 >     If you don't want the properties to be copied with the text, you
 >     should use raw extents.  Why call them 'text properties' if they
 >     don't fall the text when you copy/move it?
 > 
 > Is there a way for me to force an arbitrary package to use extents in
 > favor favor of properties?

No, there isn't.  Package authors chose to use one or the other
for their own reasons.  The API for text properties is simpler in
that it handles the overlapping extent regions for you so that
you can forget about it.  Using extents is harder.  So that might
be one reason why they are not used when they should be.

 > A typical example for me is that I grab some piece of a buffer
 > generated by some package, e. g. a GNUS article buffer or a w3 page,
 > and yank it somewhere else.  In every case that I can recall where
 > yanked text carried colors along with it, it was not what I wanted.

You can take this up with the package authors.  Years ago, Jamie
yowled at me for using text properties in VM for display purposes
and I switched to using extents.  It didn't take much work for
VM; I can't speak for other packages.

 > [...]
 > Could one of the proponents of property copying give some examples of
 > situations where most people would want/expect properties to be copied
 > while doing manual cut-and-paste operations?

VM uses text properties on attachment tags in mail composition
buffers.  If you MIME-attach a file to a message in a VM
composition buffer, you can move the attachment around in the
message and/or duplicate it by using kill/yank.  The information
about the attachment is attached to the tag with text properties.
If the text properties were not copied during kill/yank then this
would not work.

If you add annotations (footnote daggers, asterisks or sidebar
text) to a paragraph and then move the paragraph somewhere else,
the annotations should probably follow the text.

Similarly if you're composing text in enriched mode and want to
move it around, shouldn't the bold, italics and colors follow the
text so that you don't have to apply them all over again?

