GNU bug report logs - #65632
30.0.50; Proposal to improve `faces--attribute-at-point'.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: David Ponce <da_vid@HIDDEN>; Keywords: patch; dated Wed, 30 Aug 2023 18:06:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.
Added tag(s) patch. Request was from Stefan Kangas <stefankangas@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 65632 <at> debbugs.gnu.org:


Received: (at 65632) by debbugs.gnu.org; 31 Aug 2023 08:18:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 31 04:18:59 2023
Received: from localhost ([127.0.0.1]:54814 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qbctG-0000wB-Uc
	for submit <at> debbugs.gnu.org; Thu, 31 Aug 2023 04:18:59 -0400
Received: from smtp-25.smtpout.orange.fr ([80.12.242.25]:51672
 helo=smtp.smtpout.orange.fr)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <da_vid@HIDDEN>) id 1qbctC-0000vy-R2
 for 65632 <at> debbugs.gnu.org; Thu, 31 Aug 2023 04:18:58 -0400
Received: from [192.168.1.15] ([2.7.71.181]) by smtp.orange.fr with ESMTPA
 id bct2qyXTdyd7jbct2qHLNh; Thu, 31 Aug 2023 10:18:45 +0200
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=orange.fr;
 s=t20230301; t=1693469925;
 bh=H0VL7uvDuyvw6Ab2v2QOFKeX/eU3iajvP3H9Z3QfyHA=;
 h=Date:Subject:From:To:Cc:References:In-Reply-To;
 b=EdsuTEWVDrRF8TGkMciwAr523kKwXbsVhNNxbzyEy36UE7I/L0IwWjB/L2bbTILKU
 yFOzEzkJ29/DTHZLlx15emRblpWS/yV/EYGuZTYNpROzHCml6PNEGZaptE+eJZ5LIB
 IEo4Gzjih00dc4uDm2qsRrb1iN1BK6M331QIu4QuRFkr1egcF0ATtx2rkfhKofkbtP
 +NUBrdRw+kZUKksKY31hDTFb7Wt9kJIASNQrGzl4h8NMEYCJu2V6oP2/B3hE6bbx1i
 UWKSZCcl1SVwlxDnYM7aAOQ65j7WTYZED6hIcKLCpWGfjbe7hgAZbg1ZQlcxHHYPAt
 FxZcn25yZmW/w==
X-ME-Helo: [192.168.1.15]
X-ME-Auth: ZGFfdmlkQHdhbmFkb28uZnI=
X-ME-Date: Thu, 31 Aug 2023 10:18:45 +0200
X-ME-IP: 2.7.71.181
Content-Type: multipart/mixed; boundary="------------Y7y0fzqLt87nGn0iEFJ4ZZIP"
Message-ID: <bfd6ee47-b260-c3fd-d371-5ae27eb0f0aa@HIDDEN>
Date: Thu, 31 Aug 2023 10:18:43 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: bug#65632: 30.0.50; Proposal to improve
 `faces--attribute-at-point'.
From: David Ponce <da_vid@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
References: <c4b4dd2c-03ea-df8c-11b1-e899081e811b@HIDDEN>
 <83jztcfkf4.fsf@HIDDEN> <83h6ogfi7p.fsf@HIDDEN>
 <cf91a840-a211-d910-a0e5-8034e8aa2d8d@HIDDEN>
Content-Language: fr, en-US
In-Reply-To: <cf91a840-a211-d910-a0e5-8034e8aa2d8d@HIDDEN>
X-Spam-Score: -1.0 (-)
X-Debbugs-Envelope-To: 65632
Cc: 65632 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.0 (--)

This is a multi-part message in MIME format.
--------------Y7y0fzqLt87nGn0iEFJ4ZZIP
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 31/08/2023 00:30, David Ponce wrote:
> On 30/08/2023 21:22, Eli Zaretskii wrote:
>>> Cc: 65632 <at> debbugs.gnu.org
>>> Date: Wed, 30 Aug 2023 21:35:11 +0300
>>> From: Eli Zaretskii <eliz@HIDDEN>
>>>
>>>> ;; Display "TEST" in red, bold, italic on yellow background.
>>>> (insert
>>>>    (propertize
>>>>     "TEST" 'font-lock-face
>>>>     '(bold ((:background "yellow") "italic"
>>>>             ((foreground-color . "red") underline)))))
>>>
>>> This is not a valid face, AFAIU.  That it works is sheer luck (because
>>> Emacs is very lenient with this stuff).  The correct face definition
>>> for what you want is this (see 'set-face-attribute's doc string):
>>>
>>>    (insert
>>>      (propertize
>>>       "TEST" 'font-lock-face
>>>       '(:weight bold :background "yellow" :slant italic
>>>          :foreground "red" :underline t)))
>>>
>>> If you use the above, foreground-color-at-point etc. will work as
>>> expected.
>>>
>>> I'm not sure we want to go out of our way to support the kind of face
>>> specifications that you used.
>>
>> However, if we do want that, we already have the technology:
>>
>>    (face-attributes-as-vector (get-char-property (point) 'font-lock-face))
>>
>> This will return a vector of face attribute values, where you can find
>> the value of any attribute you like.  For example, to get the
>> foreground color, evaluate:
>>
>>    (aref 9
>>      (face-attributes-as-vector (get-char-property (point) 'font-lock-face)))
> 
> Hi Eli,
> 
> Thank you very much for letting me know about `face-attributes-as-vector'
> (maybe its doc string could be improved?).  It is exactly the function I need :-)
> 
> In case you are interested, I attached an updated patch to faces.el that use
> this function to lookup face attribute, which improves and simplify  the
> functions `faces--attribute-at-point', `foreground-color-at-point' and
> `background-color-at-point'.
> 
> Regards

Please find attached a revised patch.  I used the name
`faces-attribute' instead of `face-attribute-lookup' for consistency
with `faces--attribute-at-point'.  I simplified this new function
because `face-attributes-as-vector' always returns the symbol
`unspecified' when an attribute is not specified (according to what I
understand of the implementation in xfaces.c).  I also improved the
doc string to include a link to the Elisp manual regarding the meaning
of face specification.

Here is an updated changelog:

	* faces.el: Improve attribute lookup of face at point.
	(face--attribute-index): New constant.
	(faces-attribute): New function.
	(faces--attribute-at-point): Use it.  Remove unused argument.
	(foreground-color-at-point)
	(background-color-at-point): Call accordingly.



Regards
--------------Y7y0fzqLt87nGn0iEFJ4ZZIP
Content-Type: text/x-patch; charset=UTF-8;
 name="faces-attribute-lookup-V2.patch"
Content-Disposition: attachment; filename="faces-attribute-lookup-V2.patch"
Content-Transfer-Encoding: base64

ZGlmZiAtLWdpdCBhL2xpc3AvZmFjZXMuZWwgYi9saXNwL2ZhY2VzLmVsCmluZGV4IDhmOTNm
OWIyYzBjLi4xZGIwYmJjY2YxZSAxMDA2NDQKLS0tIGEvbGlzcC9mYWNlcy5lbAorKysgYi9s
aXNwL2ZhY2VzLmVsCkBAIC0yMTA5LDUwICsyMTA5LDcwIEBAIGZhY2UtYXQtcG9pbnQKICAg
ICAgICAgKGRlbGV0ZS1kdXBzIChucmV2ZXJzZSBmYWNlcykpCiAgICAgICAoY2FyIChsYXN0
IGZhY2VzKSkpKSkKIAotKGRlZnVuIGZhY2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgKGF0dHJp
YnV0ZSAmb3B0aW9uYWwgYXR0cmlidXRlLXVubmFtZWQpCisoZGVmY29uc3QgZmFjZS0tYXR0
cmlidXRlLWluZGV4CisgIDs7IEZyb20gbGZhY2VfYXR0cmlidXRlX2luZGV4IGluIHNyYy9k
aXNwZXh0ZXJuLmguCisgICcoKDpmYW1pbHkgICAgICAgICAgICAgLiAxKQorICAgICg6Zm91
bmRyeSAgICAgICAgICAgIC4gMikKKyAgICAoOndpZHRoICAgICAgICAgICAgICAuIDMpCisg
ICAgKDpoZWlnaHQgICAgICAgICAgICAgLiA0KQorICAgICg6d2VpZ2h0ICAgICAgICAgICAg
IC4gNSkKKyAgICAoOnNsYW50ICAgICAgICAgICAgICAuIDYpCisgICAgKDp1bmRlcmxpbmUg
ICAgICAgICAgLiA3KQorICAgICg6aW52ZXJzZS12aWRlbyAgICAgIC4gOCkKKyAgICAoOmZv
cmVncm91bmQgICAgICAgICAuIDkpCisgICAgKDpiYWNrZ3JvdW5kICAgICAgICAgLiAxMCkK
KyAgICAoOnN0aXBwbGUgICAgICAgICAgICAuIDExKQorICAgICg6b3ZlcmxpbmUgICAgICAg
ICAgIC4gMTIpCisgICAgKDpzdHJpa2UtdGhyb3VnaCAgICAgLiAxMykKKyAgICAoOmJveCAg
ICAgICAgICAgICAgICAuIDE0KQorICAgICg6Zm9udCAgICAgICAgICAgICAgIC4gMTUpCisg
ICAgKDppbmhlcml0ICAgICAgICAgICAgLiAxNikKKyAgICAoOmZvbnRzZXQgICAgICAgICAg
ICAuIDE3KQorICAgICg6ZGlzdGFudC1mb3JlZ3JvdW5kIC4gMTgpCisgICAgKDpleHRlbmQg
ICAgICAgICAgICAgLiAxOSkKKyAgICApCisgICJJbmRpY2VzIG9mIGZhY2UgYXR0cmlidXRl
cyBpbiBMaXNwIGZhY2UgdmVjdG9ycy4iKQorCisoZGVmdW4gZmFjZXMtYXR0cmlidXRlIChm
YWNlIGF0dHJpYnV0ZSAmb3B0aW9uYWwgZGVmYXVsdCkKKyAgIlJldHVybiB0aGUgdmFsdWUg
b2YgRkFDRSdzIEFUVFJJQlVURSBvciBuaWwgaWYgdW5zcGVjaWZpZWQuCitGQUNFIGlzIGEg
dmFsaWQgZmFjZSBzcGVjaWZpY2F0aW9uIChzZWUgZGVzY3JpcHRpb24gb2YgdGhlIGBmYWNl
JwordGV4dCBwcm9wZXJ0eSBpbiBJbmZvIG5vZGUgYChlbGlzcCkgU3BlY2lhbCBQcm9wZXJ0
aWVzJykuCitERUZBVUxUIGlzIGFuIG9wdGlvbmFsIGZhY2Ugc3BlY2lmaWNhdGlvbiBhcHBl
bmRlZCB0byBGQUNFLiAgSWYKK0RFRkFVTFQgaW5jbHVkZXMgdGhlIGBkZWZhdWx0JyBmYWNl
LCB0aGUgcmV0dXJuIHZhbHVlIGlzIGFsd2F5cworc3BlY2lmaWVkIGFuZCBhYnNvbHV0ZS4i
CisgICh3aGVuLWxldCAoKGluZGV4IChjZHIgKGFzc3EgYXR0cmlidXRlIGZhY2UtLWF0dHJp
YnV0ZS1pbmRleCkpKQorICAgICAgICAgICAgICh2YWx1ZSAoYXJlZiAoZmFjZS1hdHRyaWJ1
dGVzLWFzLXZlY3RvcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFwcGVuZCAoZW5z
dXJlLWxpc3QgZmFjZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVu
c3VyZS1saXN0IGRlZmF1bHQpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXgp
KSkKKyAgICAodW5sZXNzIChlcSB2YWx1ZSAndW5zcGVjaWZpZWQpCisgICAgICB2YWx1ZSkp
KQorCisoZGVmdW4gZmFjZXMtLWF0dHJpYnV0ZS1hdC1wb2ludCAoYXR0cmlidXRlKQogICAi
UmV0dXJuIHRoZSBmYWNlIEFUVFJJQlVURSBhdCBwb2ludC4KLUFUVFJJQlVURSBpcyBhIGtl
eXdvcmQuCi1JZiBBVFRSSUJVVEUtVU5OQU1FRCBpcyBub24tbmlsLCBpdCBpcyBhIHN5bWJv
bCB0byBsb29rIGZvciBpbgotdW5uYW1lZCBmYWNlcyAoZS5nLCBgZm9yZWdyb3VuZC1jb2xv
cicpLiIKK0FUVFJJQlVURSBpcyBhIGtleXdvcmQuIgogICA7OyBgZmFjZS1hdC1wb2ludCcg
YWxvbmUgaXMgbm90IHN1ZmZpY2llbnQuICBJdCBvbmx5IGdldHMgbmFtZWQgZmFjZXMuCiAg
IDs7IE5lZWQgYWxzbyBwaWNrIHVwIGFueSBmYWNlIHByb3BlcnRpZXMgdGhhdCBhcmUgbm90
IGFzc29jaWF0ZWQgd2l0aCBuYW1lZCBmYWNlcy4KICAgKGxldCAoKGZhY2VzIChvciAoZ2V0
LWNoYXItcHJvcGVydHkgKHBvaW50KSAncmVhZC1mYWNlLW5hbWUpCiAgICAgICAgICAgICAg
ICAgICAgOzsgSWYgYGZvbnQtbG9jay1tb2RlJyBpcyBvbiwgYGZvbnQtbG9jay1mYWNlJyB0
YWtlcyBwcmVjZWRlbmNlLgogICAgICAgICAgICAgICAgICAgIChhbmQgZm9udC1sb2NrLW1v
ZGUKICAgICAgICAgICAgICAgICAgICAgICAgIChnZXQtY2hhci1wcm9wZXJ0eSAocG9pbnQp
ICdmb250LWxvY2stZmFjZSkpCi0gICAgICAgICAgICAgICAgICAgKGdldC1jaGFyLXByb3Bl
cnR5IChwb2ludCkgJ2ZhY2UpKSkKLSAgICAgICAgKGZvdW5kIG5pbCkpCi0gICAgKGRvbGlz
dCAoZmFjZSAoaWYgKGZhY2UtbGlzdC1wIGZhY2VzKQotICAgICAgICAgICAgICAgICAgICAg
IGZhY2VzCi0gICAgICAgICAgICAgICAgICAgIChsaXN0IGZhY2VzKSkpCi0gICAgICAoY29u
ZCAoZm91bmQpCi0gICAgICAgICAgICAoKGFuZCBmYWNlIChzeW1ib2xwIGZhY2UpKQotICAg
ICAgICAgICAgIChsZXQgKCh2YWx1ZSAoZmFjZS1hdHRyaWJ1dGUtc3BlY2lmaWVkLW9yCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAoZmFjZS1hdHRyaWJ1dGUgZmFjZSBhdHRyaWJ1
dGUgbmlsIHQpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBuaWwpKSkKLSAgICAgICAg
ICAgICAgICh1bmxlc3MgKG1lbWJlciB2YWx1ZSAnKG5pbCAidW5zcGVjaWZpZWQtZmciICJ1
bnNwZWNpZmllZC1iZyIpKQotICAgICAgICAgICAgICAgICAoc2V0cSBmb3VuZCB2YWx1ZSkp
KSkKLSAgICAgICAgICAgICgoY29uc3AgZmFjZSkKLSAgICAgICAgICAgICAoc2V0cSBmb3Vu
ZCAoY29uZCAoKGFuZCBhdHRyaWJ1dGUtdW5uYW1lZAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIChtZW1xIGF0dHJpYnV0ZS11bm5hbWVkIGZhY2UpKQotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAoY2RyIChtZW1xIGF0dHJpYnV0ZS11bm5hbWVk
IGZhY2UpKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKG1lbXEgYXR0cmli
dXRlIGZhY2UpIChjYWRyIChtZW1xIGF0dHJpYnV0ZSBmYWNlKSkpKSkpKSkKLSAgICAob3Ig
Zm91bmQKLSAgICAgICAgKGZhY2UtYXR0cmlidXRlICdkZWZhdWx0IGF0dHJpYnV0ZSkpKSkK
KyAgICAgICAgICAgICAgICAgICAoZ2V0LWNoYXItcHJvcGVydHkgKHBvaW50KSAnZmFjZSkp
KSkKKyAgICAoZmFjZXMtYXR0cmlidXRlIGZhY2VzIGF0dHJpYnV0ZSAnZGVmYXVsdCkpKQog
CiAoZGVmdW4gZm9yZWdyb3VuZC1jb2xvci1hdC1wb2ludCAoKQogICAiUmV0dXJuIHRoZSBm
b3JlZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGFyYWN0ZXIgYWZ0ZXIgcG9pbnQuCiBPbiBUVFkg
ZnJhbWVzLCB0aGUgcmV0dXJuZWQgY29sb3IgbmFtZSBjYW4gYmUgXCJ1bnNwZWNpZmllZC1m
Z1wiLAogd2hpY2ggc3RhbmRzIGZvciB0aGUgdW5rbm93biBkZWZhdWx0IGZvcmVncm91bmQg
Y29sb3Igb2YgdGhlCiBkaXNwbGF5IHdoZXJlIHRoZSBmcmFtZSBpcyBkaXNwbGF5ZWQuIgot
ICAoZmFjZXMtLWF0dHJpYnV0ZS1hdC1wb2ludCA6Zm9yZWdyb3VuZCAnZm9yZWdyb3VuZC1j
b2xvcikpCisgIChmYWNlcy0tYXR0cmlidXRlLWF0LXBvaW50IDpmb3JlZ3JvdW5kKSkKIAog
KGRlZnVuIGJhY2tncm91bmQtY29sb3ItYXQtcG9pbnQgKCkKICAgIlJldHVybiB0aGUgYmFj
a2dyb3VuZCBjb2xvciBvZiB0aGUgY2hhcmFjdGVyIGFmdGVyIHBvaW50LgogT24gVFRZIGZy
YW1lcywgdGhlIHJldHVybmVkIGNvbG9yIG5hbWUgY2FuIGJlIFwidW5zcGVjaWZpZWQtYmdc
IiwKIHdoaWNoIHN0YW5kcyBmb3IgdGhlIHVua25vd24gZGVmYXVsdCBiYWNrZ3JvdW5kIGNv
bG9yIG9mIHRoZQogZGlzcGxheSB3aGVyZSB0aGUgZnJhbWUgaXMgZGlzcGxheWVkLiIKLSAg
KGZhY2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgOmJhY2tncm91bmQgJ2JhY2tncm91bmQtY29s
b3IpKQorICAoZmFjZXMtLWF0dHJpYnV0ZS1hdC1wb2ludCA6YmFja2dyb3VuZCkpCiAKIAwK
IDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7
Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Owo=

--------------Y7y0fzqLt87nGn0iEFJ4ZZIP--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#65632; Package emacs. Full text available.

Message received at 65632 <at> debbugs.gnu.org:


Received: (at 65632) by debbugs.gnu.org; 30 Aug 2023 22:31:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 30 18:31:01 2023
Received: from localhost ([127.0.0.1]:54242 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qbTiG-00089o-Pu
	for submit <at> debbugs.gnu.org; Wed, 30 Aug 2023 18:31:01 -0400
Received: from smtp-24.smtpout.orange.fr ([80.12.242.24]:63760
 helo=smtp.smtpout.orange.fr)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <da_vid@HIDDEN>) id 1qbTiB-00089b-Ca
 for 65632 <at> debbugs.gnu.org; Wed, 30 Aug 2023 18:30:59 -0400
Received: from [192.168.1.15] ([2.7.71.181]) by smtp.orange.fr with ESMTPA
 id bThzqmuAtuWDMbTi0qqRnC; Thu, 31 Aug 2023 00:30:45 +0200
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=orange.fr;
 s=t20230301; t=1693434645;
 bh=LxPe8KtfY3CzAtW2bk4T2Wd7Mxhf8bsaVrn+gPSRdrU=;
 h=Date:Subject:To:Cc:References:From:In-Reply-To;
 b=nrVYSZrYP9WZajtuj3Za8fWDkSzax7gGEh39kHj6WxGnW81A7F/d3BdxgYm7m10Ea
 NnAiGeMHWz9iv4DTbLzoUDSjGicVO+9VlKGit+LophtfLyNHvjgmllC4qTz8yOavtU
 Q8HT4uoX3hCzM+0MSAtQdd5XlSeORoTen+CERf+fnGJ8KObnU4lUGq78fuoAfBD19C
 KYTkeQEEwGjKBS0WSZux8XhO4Ox82HF8UJW7ZYtL4lG/nfqRLANBne2q7fenuf9FSS
 9yRsV3VirYS4K4vid5X1Mg1O/rfDUdxp83Axie+Yuif+ZNNmd535D9q97Iktx8iJzc
 NsvD9meF4epQg==
X-ME-Helo: [192.168.1.15]
X-ME-Auth: ZGFfdmlkQHdhbmFkb28uZnI=
X-ME-Date: Thu, 31 Aug 2023 00:30:45 +0200
X-ME-IP: 2.7.71.181
Content-Type: multipart/mixed; boundary="------------jc9jmD4ZSu4eEvrewgb9RJsw"
Message-ID: <cf91a840-a211-d910-a0e5-8034e8aa2d8d@HIDDEN>
Date: Thu, 31 Aug 2023 00:30:43 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: bug#65632: 30.0.50; Proposal to improve
 `faces--attribute-at-point'.
To: Eli Zaretskii <eliz@HIDDEN>
References: <c4b4dd2c-03ea-df8c-11b1-e899081e811b@HIDDEN>
 <83jztcfkf4.fsf@HIDDEN> <83h6ogfi7p.fsf@HIDDEN>
Content-Language: fr, en-US
From: David Ponce <da_vid@HIDDEN>
In-Reply-To: <83h6ogfi7p.fsf@HIDDEN>
X-Spam-Score: -1.0 (-)
X-Debbugs-Envelope-To: 65632
Cc: 65632 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.0 (--)

This is a multi-part message in MIME format.
--------------jc9jmD4ZSu4eEvrewgb9RJsw
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 30/08/2023 21:22, Eli Zaretskii wrote:
>> Cc: 65632 <at> debbugs.gnu.org
>> Date: Wed, 30 Aug 2023 21:35:11 +0300
>> From: Eli Zaretskii <eliz@HIDDEN>
>>
>>> ;; Display "TEST" in red, bold, italic on yellow background.
>>> (insert
>>>    (propertize
>>>     "TEST" 'font-lock-face
>>>     '(bold ((:background "yellow") "italic"
>>>             ((foreground-color . "red") underline)))))
>>
>> This is not a valid face, AFAIU.  That it works is sheer luck (because
>> Emacs is very lenient with this stuff).  The correct face definition
>> for what you want is this (see 'set-face-attribute's doc string):
>>
>>    (insert
>>      (propertize
>>       "TEST" 'font-lock-face
>>       '(:weight bold :background "yellow" :slant italic
>> 	     :foreground "red" :underline t)))
>>
>> If you use the above, foreground-color-at-point etc. will work as
>> expected.
>>
>> I'm not sure we want to go out of our way to support the kind of face
>> specifications that you used.
> 
> However, if we do want that, we already have the technology:
> 
>    (face-attributes-as-vector (get-char-property (point) 'font-lock-face))
> 
> This will return a vector of face attribute values, where you can find
> the value of any attribute you like.  For example, to get the
> foreground color, evaluate:
> 
>    (aref 9
>      (face-attributes-as-vector (get-char-property (point) 'font-lock-face)))

Hi Eli,

Thank you very much for letting me know about `face-attributes-as-vector'
(maybe its doc string could be improved?).  It is exactly the function I need :-)

In case you are interested, I attached an updated patch to faces.el that use
this function to lookup face attribute, which improves and simplify  the
functions `faces--attribute-at-point', `foreground-color-at-point' and
`background-color-at-point'.

Regards
--------------jc9jmD4ZSu4eEvrewgb9RJsw
Content-Type: text/x-patch; charset=UTF-8;
 name="faces-attribute-lookup-V1.patch"
Content-Disposition: attachment; filename="faces-attribute-lookup-V1.patch"
Content-Transfer-Encoding: base64

ZGlmZiAtLWdpdCBhL2xpc3AvZmFjZXMuZWwgYi9saXNwL2ZhY2VzLmVsCmluZGV4IDhmOTNm
OWIyYzBjLi5lNjRkMzNjZjFkNiAxMDA2NDQKLS0tIGEvbGlzcC9mYWNlcy5lbAorKysgYi9s
aXNwL2ZhY2VzLmVsCkBAIC0yMTA5LDUwICsyMTA5LDc0IEBAIGZhY2UtYXQtcG9pbnQKICAg
ICAgICAgKGRlbGV0ZS1kdXBzIChucmV2ZXJzZSBmYWNlcykpCiAgICAgICAoY2FyIChsYXN0
IGZhY2VzKSkpKSkKIAotKGRlZnVuIGZhY2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgKGF0dHJp
YnV0ZSAmb3B0aW9uYWwgYXR0cmlidXRlLXVubmFtZWQpCisoZGVmY29uc3QgZmFjZS0tYXR0
cmlidXRlLWluZGV4CisgIDs7IEZyb20gbGZhY2VfYXR0cmlidXRlX2luZGV4IGluIHNyYy9k
aXNwZXh0ZXJuLmguCisgICcoKDpmYW1pbHkgICAgICAgICAgICAgLiAxKQorICAgICg6Zm91
bmRyeSAgICAgICAgICAgIC4gMikKKyAgICAoOndpZHRoICAgICAgICAgICAgICAuIDMpCisg
ICAgKDpoZWlnaHQgICAgICAgICAgICAgLiA0KQorICAgICg6d2VpZ2h0ICAgICAgICAgICAg
IC4gNSkKKyAgICAoOnNsYW50ICAgICAgICAgICAgICAuIDYpCisgICAgKDp1bmRlcmxpbmUg
ICAgICAgICAgLiA3KQorICAgICg6aW52ZXJzZS12aWRlbyAgICAgIC4gOCkKKyAgICAoOnJl
dmVyc2UtdmlkZW8gICAgICAuIDgpCisgICAgKDpmb3JlZ3JvdW5kICAgICAgICAgLiA5KQor
ICAgICg6YmFja2dyb3VuZCAgICAgICAgIC4gMTApCisgICAgKDpzdGlwcGxlICAgICAgICAg
ICAgLiAxMSkKKyAgICAoOm92ZXJsaW5lICAgICAgICAgICAuIDEyKQorICAgICg6c3RyaWtl
LXRocm91Z2ggICAgIC4gMTMpCisgICAgKDpib3ggICAgICAgICAgICAgICAgLiAxNCkKKyAg
ICAoOmZvbnQgICAgICAgICAgICAgICAuIDE1KQorICAgICg6aW5oZXJpdCAgICAgICAgICAg
IC4gMTYpCisgICAgKDpmb250c2V0ICAgICAgICAgICAgLiAxNykKKyAgICAoOmRpc3RhbnQt
Zm9yZWdyb3VuZCAuIDE4KQorICAgICg6ZXh0ZW5kICAgICAgICAgICAgIC4gMTkpCisgICAg
KQorICAiSW5kaWNlcyBvZiBmYWNlIGF0dHJpYnV0ZXMgaW4gTGlzcCBmYWNlIHZlY3RvcnMu
IikKKworKGRlZnN1YnN0IGZhY2UtLWF0dHJpYnV0ZS11bnNwZWNpZmllZC1wICh2YWx1ZSkK
KyAgIlJldHVybiBub24tbmlsIGlmIGZhY2UgYXR0cmlidXRlIFZBTFVFIG1lYW5zIHVuc3Bl
Y2lmaWVkLiIKKyAgKG1lbWJlciB2YWx1ZSAnKHVuc3BlY2lmaWVkICJ1bnNwZWNpZmllZC1m
ZyIgInVuc3BlY2lmaWVkLWJnIikpKQorCisoZGVmdW4gZmFjZS1hdHRyaWJ1dGUtbG9va3Vw
IChmYWNlIGF0dHJpYnV0ZSAmb3B0aW9uYWwgZGVmYXVsdCkKKyAgIlJldHVybiB0aGUgdmFs
dWUgb2YgRkFDRSdzIEFUVFJJQlVURSBvciBuaWwgaWYgdW5zcGVjaWZpZWQuCitGQUNFIGlz
IGEgdmFsaWQgZmFjZSBzcGVjaWZpY2F0aW9uLgorT3B0aW9uYWwgYXJndW1lbnQgREVGQVVM
VCBpcyBhIGZhY2Ugc3BlY2lmaWNhdGlvbiBhcHBlbmRlZCB0byBGQUNFLgorSWYgREVGQVVM
VCBpbmNsdWRlcyB0aGUgYGRlZmF1bHQnIGZhY2UsIHRoZSByZXR1cm4gdmFsdWUgaXMgYWx3
YXlzCitzcGVjaWZpZWQgYW5kIGFic29sdXRlLiIKKyAgKHdoZW4tbGV0ICgoaW5kZXggKGNk
ciAoYXNzcSBhdHRyaWJ1dGUgZmFjZS0tYXR0cmlidXRlLWluZGV4KSkpCisgICAgICAgICAg
ICAgKHZhbHVlIChhcmVmIChmYWNlLWF0dHJpYnV0ZXMtYXMtdmVjdG9yCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAoYXBwZW5kIChlbnN1cmUtbGlzdCBmYWNlKQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAoZW5zdXJlLWxpc3QgZGVmYXVsdCkpKQorICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbmRleCkpKQorICAgICh1bmxlc3MgKGZhY2UtLWF0
dHJpYnV0ZS11bnNwZWNpZmllZC1wIHZhbHVlKQorICAgICAgdmFsdWUpKSkKKworKGRlZnVu
IGZhY2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgKGF0dHJpYnV0ZSkKICAgIlJldHVybiB0aGUg
ZmFjZSBBVFRSSUJVVEUgYXQgcG9pbnQuCi1BVFRSSUJVVEUgaXMgYSBrZXl3b3JkLgotSWYg
QVRUUklCVVRFLVVOTkFNRUQgaXMgbm9uLW5pbCwgaXQgaXMgYSBzeW1ib2wgdG8gbG9vayBm
b3IgaW4KLXVubmFtZWQgZmFjZXMgKGUuZywgYGZvcmVncm91bmQtY29sb3InKS4iCitBVFRS
SUJVVEUgaXMgYSBrZXl3b3JkLiIKICAgOzsgYGZhY2UtYXQtcG9pbnQnIGFsb25lIGlzIG5v
dCBzdWZmaWNpZW50LiAgSXQgb25seSBnZXRzIG5hbWVkIGZhY2VzLgogICA7OyBOZWVkIGFs
c28gcGljayB1cCBhbnkgZmFjZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIG5vdCBhc3NvY2lhdGVk
IHdpdGggbmFtZWQgZmFjZXMuCiAgIChsZXQgKChmYWNlcyAob3IgKGdldC1jaGFyLXByb3Bl
cnR5IChwb2ludCkgJ3JlYWQtZmFjZS1uYW1lKQogICAgICAgICAgICAgICAgICAgIDs7IElm
IGBmb250LWxvY2stbW9kZScgaXMgb24sIGBmb250LWxvY2stZmFjZScgdGFrZXMgcHJlY2Vk
ZW5jZS4KICAgICAgICAgICAgICAgICAgICAoYW5kIGZvbnQtbG9jay1tb2RlCiAgICAgICAg
ICAgICAgICAgICAgICAgICAoZ2V0LWNoYXItcHJvcGVydHkgKHBvaW50KSAnZm9udC1sb2Nr
LWZhY2UpKQotICAgICAgICAgICAgICAgICAgIChnZXQtY2hhci1wcm9wZXJ0eSAocG9pbnQp
ICdmYWNlKSkpCi0gICAgICAgIChmb3VuZCBuaWwpKQotICAgIChkb2xpc3QgKGZhY2UgKGlm
IChmYWNlLWxpc3QtcCBmYWNlcykKLSAgICAgICAgICAgICAgICAgICAgICBmYWNlcwotICAg
ICAgICAgICAgICAgICAgICAobGlzdCBmYWNlcykpKQotICAgICAgKGNvbmQgKGZvdW5kKQot
ICAgICAgICAgICAgKChhbmQgZmFjZSAoc3ltYm9scCBmYWNlKSkKLSAgICAgICAgICAgICAo
bGV0ICgodmFsdWUgKGZhY2UtYXR0cmlidXRlLXNwZWNpZmllZC1vcgotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKGZhY2UtYXR0cmlidXRlIGZhY2UgYXR0cmlidXRlIG5pbCB0KQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbmlsKSkpCi0gICAgICAgICAgICAgICAodW5s
ZXNzIChtZW1iZXIgdmFsdWUgJyhuaWwgInVuc3BlY2lmaWVkLWZnIiAidW5zcGVjaWZpZWQt
YmciKSkKLSAgICAgICAgICAgICAgICAgKHNldHEgZm91bmQgdmFsdWUpKSkpCi0gICAgICAg
ICAgICAoKGNvbnNwIGZhY2UpCi0gICAgICAgICAgICAgKHNldHEgZm91bmQgKGNvbmQgKChh
bmQgYXR0cmlidXRlLXVubmFtZWQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAobWVtcSBhdHRyaWJ1dGUtdW5uYW1lZCBmYWNlKSkKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKGNkciAobWVtcSBhdHRyaWJ1dGUtdW5uYW1lZCBmYWNlKSkpCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChtZW1xIGF0dHJpYnV0ZSBmYWNlKSAo
Y2FkciAobWVtcSBhdHRyaWJ1dGUgZmFjZSkpKSkpKSkpCi0gICAgKG9yIGZvdW5kCi0gICAg
ICAgIChmYWNlLWF0dHJpYnV0ZSAnZGVmYXVsdCBhdHRyaWJ1dGUpKSkpCisgICAgICAgICAg
ICAgICAgICAgKGdldC1jaGFyLXByb3BlcnR5IChwb2ludCkgJ2ZhY2UpKSkpCisgICAgKGZh
Y2UtYXR0cmlidXRlLWxvb2t1cCBmYWNlcyBhdHRyaWJ1dGUgJ2RlZmF1bHQpKSkKIAogKGRl
ZnVuIGZvcmVncm91bmQtY29sb3ItYXQtcG9pbnQgKCkKICAgIlJldHVybiB0aGUgZm9yZWdy
b3VuZCBjb2xvciBvZiB0aGUgY2hhcmFjdGVyIGFmdGVyIHBvaW50LgogT24gVFRZIGZyYW1l
cywgdGhlIHJldHVybmVkIGNvbG9yIG5hbWUgY2FuIGJlIFwidW5zcGVjaWZpZWQtZmdcIiwK
IHdoaWNoIHN0YW5kcyBmb3IgdGhlIHVua25vd24gZGVmYXVsdCBmb3JlZ3JvdW5kIGNvbG9y
IG9mIHRoZQogZGlzcGxheSB3aGVyZSB0aGUgZnJhbWUgaXMgZGlzcGxheWVkLiIKLSAgKGZh
Y2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgOmZvcmVncm91bmQgJ2ZvcmVncm91bmQtY29sb3Ip
KQorICAoZmFjZXMtLWF0dHJpYnV0ZS1hdC1wb2ludCA6Zm9yZWdyb3VuZCkpCiAKIChkZWZ1
biBiYWNrZ3JvdW5kLWNvbG9yLWF0LXBvaW50ICgpCiAgICJSZXR1cm4gdGhlIGJhY2tncm91
bmQgY29sb3Igb2YgdGhlIGNoYXJhY3RlciBhZnRlciBwb2ludC4KIE9uIFRUWSBmcmFtZXMs
IHRoZSByZXR1cm5lZCBjb2xvciBuYW1lIGNhbiBiZSBcInVuc3BlY2lmaWVkLWJnXCIsCiB3
aGljaCBzdGFuZHMgZm9yIHRoZSB1bmtub3duIGRlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBv
ZiB0aGUKIGRpc3BsYXkgd2hlcmUgdGhlIGZyYW1lIGlzIGRpc3BsYXllZC4iCi0gIChmYWNl
cy0tYXR0cmlidXRlLWF0LXBvaW50IDpiYWNrZ3JvdW5kICdiYWNrZ3JvdW5kLWNvbG9yKSkK
KyAgKGZhY2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgOmJhY2tncm91bmQpKQogCiAMCiA7Ozs7
Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7
Ozs7Ozs7Ozs7Ozs7OzsK

--------------jc9jmD4ZSu4eEvrewgb9RJsw--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#65632; Package emacs. Full text available.

Message received at 65632 <at> debbugs.gnu.org:


Received: (at 65632) by debbugs.gnu.org; 30 Aug 2023 19:23:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 30 15:23:25 2023
Received: from localhost ([127.0.0.1]:54087 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qbQmj-0003T0-0K
	for submit <at> debbugs.gnu.org; Wed, 30 Aug 2023 15:23:25 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:44162)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qbQmh-0003Sd-8L
 for 65632 <at> debbugs.gnu.org; Wed, 30 Aug 2023 15:23:24 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qbQmT-0003S2-T9; Wed, 30 Aug 2023 15:23:09 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=ZOV6bjMRgoQLWbPoVCgfQXD0KgavJaPGeqxVmWD6PvM=; b=iAnSVdxFd711
 BXg9ANah8ugpSdmeW0LFhFAdtsDSsD0V7G4o0NHq6sI6wy/SZR+2+AtW/3157htWAI4UI/G+kXWzz
 ljp8xstQXU602Hld0qjyx5p3vX3p2DSaNlUEd7GVt8Bqy+smxCBsc45Bnf8S58KhMm+wCIwUy1gpp
 c+Q+LxfHga6W0lK9EPFhEYqFwc/S931b6O7BERD0pFltar0N9K923v6upIyWoYCt2J9rw7K6n0WGI
 w2favXNz9XIIFHWezcWfs2eO1LMCoYuim3jxSB5hF+o8aAp0Zv05QzhKjUg26ErIdC6ufHvpFqcek
 e2sB9NOXMn082drRMfmU9A==;
Date: Wed, 30 Aug 2023 22:22:50 +0300
Message-Id: <83h6ogfi7p.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: da_vid@HIDDEN
In-Reply-To: <83jztcfkf4.fsf@HIDDEN> (message from Eli Zaretskii on Wed, 30
 Aug 2023 21:35:11 +0300)
Subject: Re: bug#65632: 30.0.50;
 Proposal to improve `faces--attribute-at-point'.
References: <c4b4dd2c-03ea-df8c-11b1-e899081e811b@HIDDEN>
 <83jztcfkf4.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 65632
Cc: 65632 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 65632 <at> debbugs.gnu.org
> Date: Wed, 30 Aug 2023 21:35:11 +0300
> From: Eli Zaretskii <eliz@HIDDEN>
> 
> > ;; Display "TEST" in red, bold, italic on yellow background.
> > (insert
> >   (propertize
> >    "TEST" 'font-lock-face
> >    '(bold ((:background "yellow") "italic"
> >            ((foreground-color . "red") underline)))))
> 
> This is not a valid face, AFAIU.  That it works is sheer luck (because
> Emacs is very lenient with this stuff).  The correct face definition
> for what you want is this (see 'set-face-attribute's doc string):
> 
>   (insert
>     (propertize
>      "TEST" 'font-lock-face
>      '(:weight bold :background "yellow" :slant italic
> 	     :foreground "red" :underline t)))
> 
> If you use the above, foreground-color-at-point etc. will work as
> expected.
> 
> I'm not sure we want to go out of our way to support the kind of face
> specifications that you used.

However, if we do want that, we already have the technology:

  (face-attributes-as-vector (get-char-property (point) 'font-lock-face))

This will return a vector of face attribute values, where you can find
the value of any attribute you like.  For example, to get the
foreground color, evaluate:

  (aref 9
    (face-attributes-as-vector (get-char-property (point) 'font-lock-face)))




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#65632; Package emacs. Full text available.

Message received at 65632 <at> debbugs.gnu.org:


Received: (at 65632) by debbugs.gnu.org; 30 Aug 2023 18:35:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 30 14:35:51 2023
Received: from localhost ([127.0.0.1]:53960 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qbQ2h-000256-E3
	for submit <at> debbugs.gnu.org; Wed, 30 Aug 2023 14:35:51 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:48632)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qbQ2a-00024o-UB
 for 65632 <at> debbugs.gnu.org; Wed, 30 Aug 2023 14:35:48 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qbQ2N-0001Nh-IU; Wed, 30 Aug 2023 14:35:31 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=WTSkyoBIiNf8h8p/h465DecK0MzovwuzbLGGeHCFb9g=; b=qGtoMpNf62mf
 fFGq1P7VlLEF3Kr47VBOQkcVAT1NyALABguO1ZgsxloW4OKh1zwInOn0bTI8YPyxjjbeGvTUiVPSD
 Wdra5z3BtHti4EJVwEGKe8q+Vjl9/8Yy00KI84cJMZ1Abf/D+8PYnu/WYFEWY2Mxu7xO5WlwmCpAT
 bK1Ue73RUeR1o/g1Ch7oBqgCL8W4LVrRHj6G1nfWtNOtvUrVwjCd4rVvo144cVs7f9HKid2uTv6ah
 qRyssX3CsNX2JKJdgg062WuiQu6ooqXNOyLxJkbiIF1I0mJfg/o7N0KVg/x3BKGKAZMqJHe8HNiV6
 SuliIVyn5gJRkh/A7ya6+w==;
Date: Wed, 30 Aug 2023 21:35:11 +0300
Message-Id: <83jztcfkf4.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: David Ponce <da_vid@HIDDEN>
In-Reply-To: <c4b4dd2c-03ea-df8c-11b1-e899081e811b@HIDDEN> (message from
 David Ponce on Wed, 30 Aug 2023 20:04:49 +0200)
Subject: Re: bug#65632: 30.0.50;
 Proposal to improve `faces--attribute-at-point'.
References: <c4b4dd2c-03ea-df8c-11b1-e899081e811b@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 65632
Cc: 65632 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Wed, 30 Aug 2023 20:04:49 +0200
> From: David Ponce <da_vid@HIDDEN>
> 
> I noticed that the functions `foreground-color-at-point' and
> `background-color-at-point' don't return expected values when the face
> at point includes anonymous face or is a nested list of face, for
> example.
> 
> Here is a simple recipe that demonstrates the issue (emacs -Q):
> 
> In scratch buffer eval:
> -----------------------
> 
> ;; Display "TEST" in red, bold, italic on yellow background.
> (insert
>   (propertize
>    "TEST" 'font-lock-face
>    '(bold ((:background "yellow") "italic"
>            ((foreground-color . "red") underline)))))

This is not a valid face, AFAIU.  That it works is sheer luck (because
Emacs is very lenient with this stuff).  The correct face definition
for what you want is this (see 'set-face-attribute's doc string):

  (insert
    (propertize
     "TEST" 'font-lock-face
     '(:weight bold :background "yellow" :slant italic
	     :foreground "red" :underline t)))

If you use the above, foreground-color-at-point etc. will work as
expected.

I'm not sure we want to go out of our way to support the kind of face
specifications that you used.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#65632; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 30 Aug 2023 18:05:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 30 14:05:19 2023
Received: from localhost ([127.0.0.1]:53936 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qbPZ9-0001Kj-3y
	for submit <at> debbugs.gnu.org; Wed, 30 Aug 2023 14:05:19 -0400
Received: from lists.gnu.org ([2001:470:142::17]:48448)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <da_vid@HIDDEN>) id 1qbPZ5-0001KP-2e
 for submit <at> debbugs.gnu.org; Wed, 30 Aug 2023 14:05:18 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <da_vid@HIDDEN>) id 1qbPYn-0001qi-Nz
 for bug-gnu-emacs@HIDDEN; Wed, 30 Aug 2023 14:04:58 -0400
Received: from smtp-15.smtpout.orange.fr ([80.12.242.15]
 helo=smtp.smtpout.orange.fr)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <da_vid@HIDDEN>) id 1qbPYk-0003HL-Eb
 for bug-gnu-emacs@HIDDEN; Wed, 30 Aug 2023 14:04:57 -0400
Received: from [192.168.1.15] ([2.7.71.181]) by smtp.orange.fr with ESMTPA
 id bPYfq3D0UxiGYbPYfqXohZ; Wed, 30 Aug 2023 20:04:50 +0200
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=orange.fr;
 s=t20230301; t=1693418690;
 bh=e1WI9s8sZKL9RjwY1WsxzYmeYiApWFQGEhpkI6wA2rk=;
 h=Date:To:From:Subject;
 b=jmp4a+mn3vozSXSWOjD2dk9bJqODAgJHZ2GSGeEd0RZpYo9Ss6VccdIG9B8IeMY9C
 JdOet6IWOAJp3T1Wyan2YIu916krs7GVAiMjL+wD6Sy1iH2yOU6aeWbwAok2fCE4uq
 UREe7D0weBITkB7U8GbPvM+T5EJ/tEDzY5BkRi3H7AIswGxZcpukanWA6mfbW/rQM4
 l3E02jC6uxnOO/FtuUULeWgm8K+eiIEXCOvg/woWgC2fwSqTVDuvr6cqSSPhIEk5fe
 H07XO/+XhlUVCj6QCLUf4wIE2Jx8EXDbZ4d368TZl0kDOAdzxFiwU55PSZCWIzwuV4
 JNnNYaDq7g8hw==
X-ME-Helo: [192.168.1.15]
X-ME-Auth: ZGFfdmlkQHdhbmFkb28uZnI=
X-ME-Date: Wed, 30 Aug 2023 20:04:50 +0200
X-ME-IP: 2.7.71.181
Content-Type: multipart/mixed; boundary="------------JJEk5aKF1BTWenVZT0IQreZv"
Message-ID: <c4b4dd2c-03ea-df8c-11b1-e899081e811b@HIDDEN>
Date: Wed, 30 Aug 2023 20:04:49 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
To: bug-gnu-emacs@HIDDEN
Content-Language: fr, en-US
From: David Ponce <da_vid@HIDDEN>
Subject: 30.0.50; Proposal to improve `faces--attribute-at-point'.
Received-SPF: pass client-ip=80.12.242.15; envelope-from=da_vid@HIDDEN;
 helo=smtp.smtpout.orange.fr
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.7 (/)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.3 (/)

This is a multi-part message in MIME format.
--------------JJEk5aKF1BTWenVZT0IQreZv
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hello,

I noticed that the functions `foreground-color-at-point' and
`background-color-at-point' don't return expected values when the face
at point includes anonymous face or is a nested list of face, for
example.

Here is a simple recipe that demonstrates the issue (emacs -Q):

In scratch buffer eval:
-----------------------

;; Display "TEST" in red, bold, italic on yellow background.
(insert
  (propertize
   "TEST" 'font-lock-face
   '(bold ((:background "yellow") "italic"
           ((foreground-color . "red") underline)))))
TESTnil

;; Then click to move point somewhere on TEST and run
M-: (foreground-color-at-point) RET
>>> result is "black" instead of "red"
M-: (background-color-at-point) RET
>>> result is "white" instead of "yellow"

I propose the attached patch to faces.el to improve things.
The patch introduce a new function `face-attribute-lookup' to lookup
face attribute, that works when face specification is complex like in
above example.  The function `faces--attribute-at-point' is simplified
to use it.

Here is a possible changelog:

	* faces.el: Improve attribute lookup of face at point.
	(face--unnamed-attributes): New constant.
	(face--attribute-unspecified-p)
	(face-attribute-lookup): New functions.
	(faces--attribute-at-point): Use it.  Remove useless argument.
	(foreground-color-at-point)
	(background-color-at-point): Update accordingly.

Thanks
--------------JJEk5aKF1BTWenVZT0IQreZv
Content-Type: text/x-patch; charset=UTF-8;
 name="faces-attribute-lookup-V0.patch"
Content-Disposition: attachment; filename="faces-attribute-lookup-V0.patch"
Content-Transfer-Encoding: base64

ZGlmZiAtLWdpdCBhL2xpc3AvZmFjZXMuZWwgYi9saXNwL2ZhY2VzLmVsCmluZGV4IDhmOTNm
OWIyYzBjLi5kZDFkNjA0MDdjZCAxMDA2NDQKLS0tIGEvbGlzcC9mYWNlcy5lbAorKysgYi9s
aXNwL2ZhY2VzLmVsCkBAIC0yMTA5LDUwICsyMTA5LDEwNyBAQCBmYWNlLWF0LXBvaW50CiAg
ICAgICAgIChkZWxldGUtZHVwcyAobnJldmVyc2UgZmFjZXMpKQogICAgICAgKGNhciAobGFz
dCBmYWNlcykpKSkpCiAKLShkZWZ1biBmYWNlcy0tYXR0cmlidXRlLWF0LXBvaW50IChhdHRy
aWJ1dGUgJm9wdGlvbmFsIGF0dHJpYnV0ZS11bm5hbWVkKQorKGRlZmNvbnN0IGZhY2UtLXVu
bmFtZWQtYXR0cmlidXRlcworICAnKChmb3JlZ3JvdW5kLWNvbG9yIC4gOmZvcmVncm91bmQp
CisgICAgKGJhY2tncm91bmQtY29sb3IgLiA6YmFja2dyb3VuZCkpCisgICJBbGlzdCBvZiB1
bm5hbWVkIGZhY2UgYXR0cmlidXRlIHdpdGgga2V5d29yZCBlcXVpdmFsZW50LgorVXNlZCBm
b3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4iKQorCisoZGVmc3Vic3QgZmFjZS0tYXR0cmli
dXRlLXVuc3BlY2lmaWVkLXAgKHZhbHVlKQorICAiUmV0dXJuIG5vbi1uaWwgaWYgZmFjZSBh
dHRyaWJ1dGUgVkFMVUUgbWVhbnMgdW5zcGVjaWZpZWQuIgorICAobWVtYmVyIHZhbHVlICco
bmlsIHVuc3BlY2lmaWVkICJ1bnNwZWNpZmllZC1mZyIgInVuc3BlY2lmaWVkLWJnIikpKQor
CisoZGVmdW4gZmFjZS1hdHRyaWJ1dGUtbG9va3VwIChmYWNlIGF0dHJpYnV0ZSAmb3B0aW9u
YWwgZnJhbWUgZGVmYXVsdCkKKyAgIkxvb2t1cCB0aGUgdmFsdWUgb2YgRkFDRSdzIEFUVFJJ
QlVURSBvbiBGUkFNRS4KK0ZBQ0UgaXMgYSB2YWxpZCBmYWNlIHNwZWNpZmljYXRpb246CisK
K0ZBQ0UtU1BFQyAgIDo9IEZBQ0UtTkFNRSB8IEFOT05ZTS1GQUNFIHwgQ09MT1IgfCBGQUNF
LUxJU1QKK0ZBQ0UtTkFNRSAgIDo9IFNZTUJPTCB8IFNUUklORworQU5PTllNLUZBQ0UgOj0g
KEFUVFJJQlVURS0xIFZBTFVFLTEgLi4uIEFUVFJJQlVURS1OIFZBTFVFLU4pCitDT0xPUiAg
ICAgICA6PSBGT1JFR1JPVU5EIHwgQkFDS0dST1VORAorRk9SRUdST1VORCAgOj0gKGBmb3Jl
Z3JvdW5kLWNvbG9yJyAuIENPTE9SLU5BTUUpCitCQUNLR1JPVU5EICA6PSAoYGJhY2tncm91
bmQtY29sb3InIC4gQ09MT1ItTkFNRSkKK0ZBQ0UtTElTVCAgIDo9IChGQUNFLVNQRUMtMSAu
Li4gRkFDRS1TUEVDLU4pCisKK0lmIHRoZSBvcHRpb25hbCBhcmd1bWVudCBGUkFNRSBpcyBn
aXZlbiwgcmVwb3J0IG9uIEZBQ0UgaW4gdGhhdCBmcmFtZS4KK0lmIEZSQU1FIGlzIHQsIHJl
cG9ydCBvbiB0aGUgZGVmYXVsdHMgZm9yIEZBQ0UgKGZvciBuZXcgZnJhbWVzKS4KK0lmIEZS
QU1FIGlzIG9taXR0ZWQgb3IgbmlsLCB1c2UgdGhlIHNlbGVjdGVkIGZyYW1lLgorCitPcHRp
b25hbCBhcmd1bWVudCBERUZBVUxUIGlzIGEgZmFjZSBzcGVjaWZpY2F0aW9uIGFwcGVuZGVk
IHRvIEZBQ0UuCitJZiBERUZBVUxUIGluY2x1ZGVzIHRoZSBgZGVmYXVsdCcgZmFjZSwgdGhl
IHJldHVybiB2YWx1ZSBpcyBhbHdheXMKK3NwZWNpZmllZCBhbmQgYWJzb2x1dGUuCisKK1Jl
dHVybiB0aGUgZmlyc3Qgc3BlY2lmaWVkIHZhbHVlIGZvdW5kIGZvciBBVFRSSUJVVEUsIG9y
IG5pbCBpZgorQVRUUklCVVRFIGlzIHVuc3BlY2lmaWVkLiIKKyAgKGNhdGNoICdmb3VuZAor
ICAgIChsZXQgKChmYWNlcyAoYXBwZW5kIChlbnN1cmUtbGlzdCBmYWNlKSAoZW5zdXJlLWxp
c3QgZGVmYXVsdCkpKQorICAgICAgICAgIChyZXN0IG5pbCkpCisgICAgICAod2hpbGUgdAor
ICAgICAgICAoY29uZAorICAgICAgICAgOzsgRW5kIG9mIGEgZmFjZS1zcGVjLgorICAgICAg
ICAgKChudWxsIGZhY2VzKQorICAgICAgICAgIChpZiByZXN0CisgICAgICAgICAgICAgIChz
ZXRxIGZhY2VzIChjYXIgcmVzdCkgcmVzdCAoY2RyIHJlc3QpKQorICAgICAgICAgICAgKHRo
cm93ICdmb3VuZCBuaWwpKSkKKyAgICAgICAgIDs7IE1hbGZvcm1lZCBmYWNlLXNwZWMuCisg
ICAgICAgICAoKGF0b20gZmFjZXMpCisgICAgICAgICAgKHRocm93ICdmb3VuZCBuaWwpKQor
ICAgICAgICAgOzsgRmFjZSBuYW1lLgorICAgICAgICAgKChmYWNlcCAoY2FyIGZhY2VzKSkK
KyAgICAgICAgICAobGV0KiAoKGZhY2UgKGNhciBmYWNlcykpCisgICAgICAgICAgICAgICAg
IChhdHRyIChmYWNlLWF0dHJpYnV0ZSAoaWYgKHN0cmluZ3AgZmFjZSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW50ZXJuIGZhY2UpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhY2UpCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgZnJhbWUgdCkpKQorICAgICAg
ICAgICAgKGlmIChmYWNlLS1hdHRyaWJ1dGUtdW5zcGVjaWZpZWQtcCBhdHRyKQorICAgICAg
ICAgICAgICAgIChzZXRxIGZhY2VzIChjZHIgZmFjZXMpKQorICAgICAgICAgICAgICAodGhy
b3cgJ2ZvdW5kIGF0dHIpKSkpCisgICAgICAgICA7OyBBbm9ueW1vdXMgZmFjZSAocGxpc3Qp
LgorICAgICAgICAgKChrZXl3b3JkcCAoY2FyIGZhY2VzKSkKKyAgICAgICAgICAobGV0ICgo
YXR0ciAocGxpc3QtZ2V0IGZhY2VzIGF0dHJpYnV0ZSkpKQorICAgICAgICAgICAgKGlmIChm
YWNlLS1hdHRyaWJ1dGUtdW5zcGVjaWZpZWQtcCBhdHRyKQorICAgICAgICAgICAgICAgIChz
ZXRxIGZhY2VzIG5pbCkKKyAgICAgICAgICAgICAgKHRocm93ICdmb3VuZCBhdHRyKSkpKQor
ICAgICAgICAgOzsgQ29sb3IuCisgICAgICAgICAoKHdoZW4tbGV0ICgoc3ltIChhc3NxIChj
YXIgZmFjZXMpIGZhY2UtLXVubmFtZWQtYXR0cmlidXRlcykpKQorICAgICAgICAgICAgKGlm
IChvciAobm90IChlcSBhdHRyaWJ1dGUgKGNkciBzeW0pKSkKKyAgICAgICAgICAgICAgICAg
ICAgKGZhY2UtLWF0dHJpYnV0ZS11bnNwZWNpZmllZC1wIChjZHIgZmFjZXMpKSkKKyAgICAg
ICAgICAgICAgICAoc2V0cSBmYWNlcyBuaWwpCisgICAgICAgICAgICAgICh0aHJvdyAnZm91
bmQgKGNkciBmYWNlcykpKSkpCisgICAgICAgICA7OyBOZXN0ZWQgZmFjZS1saXN0LgorICAg
ICAgICAgKChjb25zcCAoY2FyIGZhY2VzKSkKKyAgICAgICAgICAoc2V0cSByZXN0IChjb25z
IChjZHIgZmFjZXMpIChpZiAoY2RyIGZhY2VzKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIChjb25zIChjZHIgZmFjZXMpIHJlc3QpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3QpKQorICAgICAgICAgICAgICAg
IGZhY2VzIChjYXIgZmFjZXMpKSkKKyAgICAgICAgIDs7IFNraXAgdW5rbm93IHZhbHVlLgor
ICAgICAgICAgKChzZXRxIGZhY2VzIChjZHIgZmFjZXMpKSkpKSkpKQorCisoZGVmdW4gZmFj
ZXMtLWF0dHJpYnV0ZS1hdC1wb2ludCAoYXR0cmlidXRlKQogICAiUmV0dXJuIHRoZSBmYWNl
IEFUVFJJQlVURSBhdCBwb2ludC4KLUFUVFJJQlVURSBpcyBhIGtleXdvcmQuCi1JZiBBVFRS
SUJVVEUtVU5OQU1FRCBpcyBub24tbmlsLCBpdCBpcyBhIHN5bWJvbCB0byBsb29rIGZvciBp
bgotdW5uYW1lZCBmYWNlcyAoZS5nLCBgZm9yZWdyb3VuZC1jb2xvcicpLiIKK0FUVFJJQlVU
RSBpcyBhIGtleXdvcmQuIgogICA7OyBgZmFjZS1hdC1wb2ludCcgYWxvbmUgaXMgbm90IHN1
ZmZpY2llbnQuICBJdCBvbmx5IGdldHMgbmFtZWQgZmFjZXMuCiAgIDs7IE5lZWQgYWxzbyBw
aWNrIHVwIGFueSBmYWNlIHByb3BlcnRpZXMgdGhhdCBhcmUgbm90IGFzc29jaWF0ZWQgd2l0
aCBuYW1lZCBmYWNlcy4KICAgKGxldCAoKGZhY2VzIChvciAoZ2V0LWNoYXItcHJvcGVydHkg
KHBvaW50KSAncmVhZC1mYWNlLW5hbWUpCiAgICAgICAgICAgICAgICAgICAgOzsgSWYgYGZv
bnQtbG9jay1tb2RlJyBpcyBvbiwgYGZvbnQtbG9jay1mYWNlJyB0YWtlcyBwcmVjZWRlbmNl
LgogICAgICAgICAgICAgICAgICAgIChhbmQgZm9udC1sb2NrLW1vZGUKICAgICAgICAgICAg
ICAgICAgICAgICAgIChnZXQtY2hhci1wcm9wZXJ0eSAocG9pbnQpICdmb250LWxvY2stZmFj
ZSkpCi0gICAgICAgICAgICAgICAgICAgKGdldC1jaGFyLXByb3BlcnR5IChwb2ludCkgJ2Zh
Y2UpKSkKLSAgICAgICAgKGZvdW5kIG5pbCkpCi0gICAgKGRvbGlzdCAoZmFjZSAoaWYgKGZh
Y2UtbGlzdC1wIGZhY2VzKQotICAgICAgICAgICAgICAgICAgICAgIGZhY2VzCi0gICAgICAg
ICAgICAgICAgICAgIChsaXN0IGZhY2VzKSkpCi0gICAgICAoY29uZCAoZm91bmQpCi0gICAg
ICAgICAgICAoKGFuZCBmYWNlIChzeW1ib2xwIGZhY2UpKQotICAgICAgICAgICAgIChsZXQg
KCh2YWx1ZSAoZmFjZS1hdHRyaWJ1dGUtc3BlY2lmaWVkLW9yCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAoZmFjZS1hdHRyaWJ1dGUgZmFjZSBhdHRyaWJ1dGUgbmlsIHQpCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICBuaWwpKSkKLSAgICAgICAgICAgICAgICh1bmxlc3Mg
KG1lbWJlciB2YWx1ZSAnKG5pbCAidW5zcGVjaWZpZWQtZmciICJ1bnNwZWNpZmllZC1iZyIp
KQotICAgICAgICAgICAgICAgICAoc2V0cSBmb3VuZCB2YWx1ZSkpKSkKLSAgICAgICAgICAg
ICgoY29uc3AgZmFjZSkKLSAgICAgICAgICAgICAoc2V0cSBmb3VuZCAoY29uZCAoKGFuZCBh
dHRyaWJ1dGUtdW5uYW1lZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IChtZW1xIGF0dHJpYnV0ZS11bm5hbWVkIGZhY2UpKQotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAoY2RyIChtZW1xIGF0dHJpYnV0ZS11bm5hbWVkIGZhY2UpKSkKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAoKG1lbXEgYXR0cmlidXRlIGZhY2UpIChjYWRy
IChtZW1xIGF0dHJpYnV0ZSBmYWNlKSkpKSkpKSkKLSAgICAob3IgZm91bmQKLSAgICAgICAg
KGZhY2UtYXR0cmlidXRlICdkZWZhdWx0IGF0dHJpYnV0ZSkpKSkKKyAgICAgICAgICAgICAg
ICAgICAoZ2V0LWNoYXItcHJvcGVydHkgKHBvaW50KSAnZmFjZSkpKSkKKyAgICAoZmFjZS1h
dHRyaWJ1dGUtbG9va3VwIGZhY2VzIGF0dHJpYnV0ZSBuaWwgJ2RlZmF1bHQpKSkKIAogKGRl
ZnVuIGZvcmVncm91bmQtY29sb3ItYXQtcG9pbnQgKCkKICAgIlJldHVybiB0aGUgZm9yZWdy
b3VuZCBjb2xvciBvZiB0aGUgY2hhcmFjdGVyIGFmdGVyIHBvaW50LgogT24gVFRZIGZyYW1l
cywgdGhlIHJldHVybmVkIGNvbG9yIG5hbWUgY2FuIGJlIFwidW5zcGVjaWZpZWQtZmdcIiwK
IHdoaWNoIHN0YW5kcyBmb3IgdGhlIHVua25vd24gZGVmYXVsdCBmb3JlZ3JvdW5kIGNvbG9y
IG9mIHRoZQogZGlzcGxheSB3aGVyZSB0aGUgZnJhbWUgaXMgZGlzcGxheWVkLiIKLSAgKGZh
Y2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgOmZvcmVncm91bmQgJ2ZvcmVncm91bmQtY29sb3Ip
KQorICAoZmFjZXMtLWF0dHJpYnV0ZS1hdC1wb2ludCA6Zm9yZWdyb3VuZCkpCiAKIChkZWZ1
biBiYWNrZ3JvdW5kLWNvbG9yLWF0LXBvaW50ICgpCiAgICJSZXR1cm4gdGhlIGJhY2tncm91
bmQgY29sb3Igb2YgdGhlIGNoYXJhY3RlciBhZnRlciBwb2ludC4KIE9uIFRUWSBmcmFtZXMs
IHRoZSByZXR1cm5lZCBjb2xvciBuYW1lIGNhbiBiZSBcInVuc3BlY2lmaWVkLWJnXCIsCiB3
aGljaCBzdGFuZHMgZm9yIHRoZSB1bmtub3duIGRlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBv
ZiB0aGUKIGRpc3BsYXkgd2hlcmUgdGhlIGZyYW1lIGlzIGRpc3BsYXllZC4iCi0gIChmYWNl
cy0tYXR0cmlidXRlLWF0LXBvaW50IDpiYWNrZ3JvdW5kICdiYWNrZ3JvdW5kLWNvbG9yKSkK
KyAgKGZhY2VzLS1hdHRyaWJ1dGUtYXQtcG9pbnQgOmJhY2tncm91bmQpKQogCiAMCiA7Ozs7
Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7
Ozs7Ozs7Ozs7Ozs7OzsK

--------------JJEk5aKF1BTWenVZT0IQreZv--




Acknowledgement sent to David Ponce <da_vid@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#65632; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Thu, 31 Aug 2023 11:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.