[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: kill ring menu
From: |
Colin Walters |
Subject: |
Re: kill ring menu |
Date: |
30 May 2002 02:32:14 -0400 |
On Fri, 2002-05-24 at 17:12, Richard Stallman wrote:
> For instance, here's a random idea (i.e., not well thought out!):
> instead of hardwiring `font-lock-face', how about a buffer-local
> variable that holds `alternative property mappings'?
>
> That seems like a good idea, if it turns out to be clean enough to
> implement reliably.
I've started to implement it (i'm calling it
`char-property-alternatives-alist'), and it's not turning out to be as
clean as I would like.
For example, we need to change face_at_buffer_position in xfaces.c to
use Fget_char_property. Right now, it uses Fget_text_property to
explicitly get text properties, and then uses overlays_at to get
overlays, and merges the face properties.
However, I can't just change the Fget_text_property call to
Fget_char_property, because that would incorrectly pick up any overlay
`face' property *before* a text property `face' value.
So we need new functions (or an optional argument to Fget_char_property)
which allows one to get the value of a text property or overlay, while
respecting `char-property-alternatives-alist'. This seems pretty ugly.
We could alternatively just change all the primitives so that they
always respect the alternatives alist; that probably has its own
drawbacks.
Perhaps the number of places which need to explicitly respect the
difference between text properties and overlays is small. But I just
hate for there to have to be those places at all.
One other thing about this idea is that I find it a bit unintuitive that
(eq (plist-get (text-properties-at (point)) 'face)
(get-text-property (point) 'face))
is not always true.
- Re: kill ring menu, (continued)
- Re: kill ring menu, Colin Walters, 2002/05/21
- Re: kill ring menu, Miles Bader, 2002/05/21
- Re: kill ring menu, Miles Bader, 2002/05/21
- Re: kill ring menu, Miles Bader, 2002/05/22
- Re: kill ring menu, Colin Walters, 2002/05/22
- Re: kill ring menu, Miles Bader, 2002/05/23
- Re: kill ring menu, Colin Walters, 2002/05/23
- Re: kill ring menu, Miles Bader, 2002/05/23
- Re: kill ring menu, Miles Bader, 2002/05/23
- Re: kill ring menu, Richard Stallman, 2002/05/24
- Re: kill ring menu,
Colin Walters <=
- Re: kill ring menu, Miles Bader, 2002/05/30
- Re: kill ring menu, Colin Walters, 2002/05/30
- Re: kill ring menu, Miles Bader, 2002/05/30
- Re: kill ring menu, Colin Walters, 2002/05/31
- Re: kill ring menu, Richard Stallman, 2002/05/31
- Re: kill ring menu, Stefan Monnier, 2002/05/30
- Re: kill ring menu, Richard Stallman, 2002/05/31
- Re: kill ring menu, Stefan Monnier, 2002/05/31
- Re: kill ring menu, Miles Bader, 2002/05/31
- Re: kill ring menu, Stefan Monnier, 2002/05/31