[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#20592: the `display' property messes the `face' properties after `co
bug#20592: the `display' property messes the `face' properties after `concat'
Tue, 19 May 2015 18:31:23 +0300
> From: Stefan Monnier <address@hidden>
> Cc: Alexander Shukaev <address@hidden>, address@hidden
> Date: Mon, 18 May 2015 21:20:05 -0400
> > The behavior you observe is because the ':eval' construct expects to
> > produce a single string with either the same common face spec on all
> > of its characters, or no faces at all. You cannot use ':eval' to
> > produce a string that has more than one face spec on its different
> > characters; if you do, only the face spec of the first character of
> > the string will be honored.
> IIUC, this is the bug that needs to be fixed.
> Or is there a reason to consider this as a feature?
I think the reason for this implementation was to keep the code simple
and efficient. After all, ':eval' is part of the standard mode line,
in several places, so this code runs each time we update the mode
line, which we do a lot.
I agree that the limitation is counter-intuitive, and barely
documented, but given that using a separate ':eval' is such an easy
solution, perhaps we should simply document this. Fixing this doesn't
sound as high priority to me.