From: Drew Adams <drew.adams@oracle.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>, emacs-devel@gnu.org
Subject: RE: Idea: Be able to use text properties as face attributes
Date: Tue, 28 Mar 2017 16:10:45 -0700 (PDT) [thread overview]
Message-ID: <976ce1bf-b7a1-4cf5-8206-ae81b35ce29d@default> (raw)
In-Reply-To: <jwvshlxuin3.fsf-monnier+gmane.emacs.devel@gnu.org>
> >> This said, I think using face attributes is a bad idea.
> > Reason? I can be convinced, but only by reasons.
>
> Faces (and face attributes) are handled by the display engine, which is
> a delicate and performance sensitive piece of code. Messing with that
> is tricky and can easily impose serious performance problems.
OK. But if I understand correctly (no indication of
that, I realize ;-)), the only thing the display engine
would need to do differently wrt faces and face attributes
would be to tolerate (ignore) any that it does not recognize
(dunno what it does now - perhaps it raises an error?).
Yes, there is also Customize, which recognizes only the
current face attributes.
Customize could be left as is, which would mean that you
could not use it to assign text-properties as (pseudo)
attributes.
Or we could decide to support unknown face attributes
in Customize in some way (i.e., let you enter them).
I'm not including that as part of the feature proposal.
Customization of a face is not where I see this feature.
I see it in Lisp code or interactive use of `set-face-*'.
> > locations. But my proposal is purposely aimed at
> > FACES and where they are applied, for the reasons
> > given above. It's not _only_ about packaging text
> > props together to act on them in an abstract way.
>
> I'd rather use another property, and then make
> font-lock use that new property instead.
The devil may be in the details - please elaborate.
But a priori I don't see how that would provide the
feature I described, which needs to work, out-of-the-box,
with faces you apply (e.g., by highlighting, and _not_
just by font-lock highlighting), as well as with
`set-face-*' commands etc.
next prev parent reply other threads:[~2017-03-28 23:10 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-26 19:14 Idea: Be able to use text properties as face attributes Drew Adams
2017-03-26 20:01 ` Clément Pit-Claudel
2017-03-26 21:42 ` Drew Adams
2017-03-26 22:14 ` Clément Pit-Claudel
2017-03-26 23:26 ` Drew Adams
2017-03-27 1:23 ` Clément Pit-Claudel
2017-03-27 14:54 ` Eli Zaretskii
2017-03-27 4:51 ` Drew Adams
2017-03-27 14:01 ` Drew Adams
2017-03-27 14:57 ` Eli Zaretskii
[not found] ` <<30eb5a49-2d98-4f37-8f8c-32a88cd76827@default>
[not found] ` <<83bmsm938f.fsf@gnu.org>
2017-03-27 15:49 ` Drew Adams
2017-03-27 18:59 ` Eli Zaretskii
[not found] ` <<<30eb5a49-2d98-4f37-8f8c-32a88cd76827@default>
[not found] ` <<<83bmsm938f.fsf@gnu.org>
[not found] ` <<7f98847c-9b5e-47cf-85f2-247c2045d0af@default>
[not found] ` <<834lye8s1k.fsf@gnu.org>
2017-03-27 20:01 ` Drew Adams
2017-03-28 15:06 ` Eli Zaretskii
2017-03-28 15:26 ` Stefan Monnier
2017-03-28 21:40 ` Drew Adams
2017-03-28 22:45 ` Stefan Monnier
2017-03-28 23:10 ` Drew Adams [this message]
2017-03-29 1:36 ` Stefan Monnier
2017-03-29 5:32 ` Drew Adams
[not found] ` <<<<30eb5a49-2d98-4f37-8f8c-32a88cd76827@default>
[not found] ` <<<<83bmsm938f.fsf@gnu.org>
[not found] ` <<<7f98847c-9b5e-47cf-85f2-247c2045d0af@default>
[not found] ` <<<834lye8s1k.fsf@gnu.org>
[not found] ` <<93aa220a-35c8-4be1-bfb5-299c46c9eba9@default>
[not found] ` <<83tw6d785i.fsf@gnu.org>
2017-03-28 21:39 ` Drew Adams
2017-03-27 7:56 ` Yuri Khan
2017-03-27 14:01 ` Drew Adams
2017-03-27 14:55 ` Eli Zaretskii
2017-03-27 14:51 ` Eli Zaretskii
[not found] <<7a902f7b-d808-4d0f-8ff9-b8f07eaddf83@default>
[not found] ` <<83h92e93ip.fsf@gnu.org>
2017-03-27 16:22 ` Drew Adams
2017-03-27 18:52 ` Eli Zaretskii
[not found] <<<7a902f7b-d808-4d0f-8ff9-b8f07eaddf83@default>
[not found] ` <<<83h92e93ip.fsf@gnu.org>
[not found] ` <<8080a162-700f-42cc-aec9-5fdd7c646297@default>
[not found] ` <<8360iu8sdm.fsf@gnu.org>
2017-03-27 20:01 ` Drew Adams
2017-03-28 15:08 ` Eli Zaretskii
[not found] <<<<7a902f7b-d808-4d0f-8ff9-b8f07eaddf83@default>
[not found] ` <<<<83h92e93ip.fsf@gnu.org>
[not found] ` <<<8080a162-700f-42cc-aec9-5fdd7c646297@default>
[not found] ` <<<8360iu8sdm.fsf@gnu.org>
[not found] ` <<19e94d18-656f-4a8f-8843-4d46ffdd037b@default>
[not found] ` <<83shlx782i.fsf@gnu.org>
2017-03-28 21:39 ` Drew Adams
2017-03-29 14:51 ` Eli Zaretskii
2017-03-29 15:21 ` Lars Ingebrigtsen
2017-03-29 15:36 ` Clément Pit-Claudel
2017-03-29 17:08 ` Drew Adams
2017-03-29 15:41 ` Andreas Politz
2017-03-29 17:08 ` Drew Adams
[not found] <<<<<7a902f7b-d808-4d0f-8ff9-b8f07eaddf83@default>
[not found] ` <<<<<83h92e93ip.fsf@gnu.org>
[not found] ` <<<<8080a162-700f-42cc-aec9-5fdd7c646297@default>
[not found] ` <<<<8360iu8sdm.fsf@gnu.org>
[not found] ` <<<19e94d18-656f-4a8f-8843-4d46ffdd037b@default>
[not found] ` <<<83shlx782i.fsf@gnu.org>
[not found] ` <<403a3ff2-464f-4eb5-9843-60592e786955@default>
[not found] ` <<83a8846srr.fsf@gnu.org>
2017-03-29 17:06 ` Drew Adams
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=976ce1bf-b7a1-4cf5-8206-ae81b35ce29d@default \
--to=drew.adams@oracle.com \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).