emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: feature request: text property to prevent font-locking


From: David Kastrup
Subject: Re: feature request: text property to prevent font-locking
Date: Tue, 02 Sep 2014 08:04:14 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux)

Richard Stallman <address@hidden> writes:

> [[[ To any NSA and FBI agents reading my email: please consider    ]]]
> [[[ whether defending the US Constitution against all enemies,     ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
> Overlays are not the same as extents.  Extents try to be both
> text properties and overlays, and I think that mixture can't
> be implemented without incoherent behaviors.

I'm not complete sure whether extents can or cannot cover all use cases
of overlays/properties: it was some time since I last looked.  The main
problem I had when working with them is that the purported generality is
elusive since part of the difference in Emacs' semantics of overlays and
text properties is encoded in extent properties while other parts are
encoded in the parameters you pass to the subroutines for accessing
extents.  The result is that the complexity for a particular application
tends to bleed all over the place whenever you don't restrict yourself
to the Emacs abstractions, most easily done by using compatibility
functions.

However, there is no point in Emacs not supporting overlay and text
properties identically whenever a particular property is not inherently
tied to the difference between overlay and text properties.
I definitely remember being annoyed in the past by some properties
requiring the use of one and not the other.  But I don't remember the
details right now.

Having the same underlying implementation for overlays and text
properties is of course a reliable way to have the same supported set of
properties by default.

-- 
David Kastrup




reply via email to

[Prev in Thread] Current Thread [Next in Thread]