GNU bug report logs - #40866
customize-face obliterates obliterates elements of "face spec" alist.

Previous Next

Package: emacs;

Reported by: Alan Mackenzie <acm <at> muc.de>

Date: Sun, 26 Apr 2020 11:31:01 UTC

Severity: normal

Done: Alan Mackenzie <acm <at> muc.de>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 40866 in the body.
You can then email your comments to 40866 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#40866; Package emacs. (Sun, 26 Apr 2020 11:31:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Alan Mackenzie <acm <at> muc.de>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 26 Apr 2020 11:31:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Alan Mackenzie <acm <at> muc.de>
To: bug-gnu-emacs <at> gnu.org
Subject: customize-face obliterates obliterates elements of "face spec" alist.
Date: Sun, 26 Apr 2020 11:30:24 +0000
Hello, Emacs.

On master, when a face is set up for a single type of terminal, or
several types of terminal, customize-face disregards this, and
obliterates all members of the "face spec" alist except one, which is
always t.

For example, suppose we have either of these in a custom-set-faces list:

'(font-lock-function-name-face ((((background dark)) (:foreground "cyan" :weight bold))
                                 (t (:foreground "Blue1" :weight bold))))
 
'(font-lock-function-name-face ((((background dark)) (:foreground "cyan" :weight bold))))

.  In a light backgrounded Emacs session (e.g. in X-Windows) run
customize-face on font-lock-function-name-face.  Make some change to the
face and click on <apply and save>.  The (background dark) element has
now been obliterated, leaving (in either case):

'(font-lock-function-name-face ((t (:foreground "Blue1" :weight bold))))

.  This is a bug.  customize-face should respect face settings which are
inapplicable on the current terminal.

#########################################################################

Related wish list item:

To construct these terminal specific face specs, I had to edit the raw
lisp in .emacs.  It took me three tries before I got a valid spec.

I seem to remember that at one point it was possible to add alternative
face specs for other terminal types inside customize-face.  Am I
dreaming, or was this facility removed for some reason?

It would be really nice if one could edit a face spec in full generality
inside customize-face, obviating the need to mess with intricate raw
lisp.

-- 
Alan Mackenzie (Nuremberg, Germany).




Reply sent to Alan Mackenzie <acm <at> muc.de>:
You have taken responsibility. (Fri, 01 May 2020 12:34:02 GMT) Full text and rfc822 format available.

Notification sent to Alan Mackenzie <acm <at> muc.de>:
bug acknowledged by developer. (Fri, 01 May 2020 12:34:02 GMT) Full text and rfc822 format available.

Message #10 received at 40866-done <at> debbugs.gnu.org (full text, mbox):

From: Alan Mackenzie <acm <at> muc.de>
To: 40866-done <at> debbugs.gnu.org
Subject: Re: bug#40866: customize-face obliterates obliterates elements of
 "face spec" alist.
Date: Fri, 1 May 2020 12:33:53 +0000
Fixed in the master branch.

-- 
Alan Mackenzie (Nuremberg, Germany).




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 30 May 2020 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 20 days ago.

Previous Next


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