GNU bug report logs -
#64347
30.0.50; Some customize faces shown as edited with -Q
Previous Next
Reported by: Stephen Berman <stephen.berman <at> gmx.net>
Date: Thu, 29 Jun 2023 10:16:01 UTC
Severity: normal
Found in version 30.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #26 received at 64347 <at> debbugs.gnu.org (full text, mbox):
> Date: Sat, 8 Jul 2023 18:32:15 -0300
> Cc: 64347 <at> debbugs.gnu.org, stephen.berman <at> gmx.net
> From: Mauro Aranda <maurooaranda <at> gmail.com>
>
> Since there are both ways to specify the same information for the
> :line-width value, there's always a chance of not sending the expected
> format to face-spec-match-p.
>
> Let's say we have (:line-width 1). Then the pre-filter converts it into
> (:line-width (1 . 1)), and then the post-filter should convert it back
> to (:line-width 1), and that works.
>
> But if we have (:line-width (1 . 1)), the pre-filter does nothing, and
> the post-filter will transform it into (:line-width 1), and that way
> specs won't match.
>
> So sometimes we want to post-filter to (:line-width WIDTH) and sometimes
> to (VWIDTH . HWIDTH) and there's currently not enough information to do
> that, or at least I missed it.
>
> > Did you make any progress with the one bug that's left after the other
> > two are fixed?
>
> I did find that face-attr-match-p uses equal even with properties like
> :underline and :box that can have plists as values. But I haven't tried
> to fix it, because I got frustrated with the post-filter thing.
I guess I'm missing something here: why do we need those pre-filter
and post-filter conversions? The C code understands both forms of
:line-width, so there should be no need for Lisp to do any
conversions, right? So why do we do that? why not simply leave the
spec as it was originally?
This bug report was last modified 1 year and 311 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.