Subject: 24.0.50; Yanking and text properties

From: Stephen Berman <[email-masked]>
Date: Thu, 31 Mar 2011 00:26:14 +0200

1. emacs -Q
2. Enter text in a buffer and select it, e.g.: `C-x b a RET test C-SPC C-a' 
3. Put a face or display text property on the selected text, e.g.: `M-o b'
4. Put the propertized text on the kill ring: `C-SPC C-e M-w'.
5. Yank it in another buffer: `C-x b b RET C-y'
=> The yanked text in buffer b is propertized as in buffer a.

Now repeat steps 2 and 3, and instead of repeating step 4, double-click
on the text with mouse-1 to make it the primary selection, and instead
of repeating step 5, do `C-x b b RET <mouse-2>' to yank that selection.
=> The yanked text in buffer b is not propertized.

Is this difference between the two types of yanking a programming bug or
a feature (of the primary selection?) that is AFAICS undocumented and
hence a doc bug?  The comment by Glenn Morris in bug#8376
(http://permalink.gmane.org/gmane.emacs.bugs/45480) suggests the former,
namely, that yanking by C-y should also not preserve text properties.
Note, however, that mouse-yank-at-click behaves like C-y and not like
mouse-yank-primary.  (Or is it only font-locking, not face and display
properties, that aren't supposed to be preserved any more?  Note also
that if other text properties, e.g. invisible or intangible, are applied
in the first recipe, yanking with C-y does not preserve these.)

In GNU Emacs 24.0.50.1 (i686-suse-linux-gnu, GTK+ Version 2.20.1)
 of 2011-03-30 on escher
Windowing system distributor `The X.Org Foundation', version 11.0.10800000
configured using `configure  '--without-toolkit-scroll-bars' 'CFLAGS=-g -O2 -fno-optimize-sibling-calls''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=local
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t