GNU bug report logs -
#11213
24.0.95; (Maybe/Wish): Should color-themes be buffer local?
Previous Next
Reported by: Jambunathan K <kjambunathan <at> gmail.com>
Date: Tue, 10 Apr 2012 20:10:02 UTC
Severity: wishlist
Found in version 24.0.95
Done: Jambunathan K <kjambunathan <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Chong Yidong <cyd <at> gnu.org> writes:
> Jambunathan K <kjambunathan <at> gmail.com> writes:
>
>>> Probably the best way to do that is to set up face remappings in the
>>> to-be-exported buffer. See the Face Remapping node in the Lisp manual
>>> for details.
>>
>> Given a(ny) theme, let's say "adwaita-theme.el", can someone give me a
>> recipe which runs through all the face definitions defined in that theme
>> file and hand it off to `face-remapping-alist'.
>
> Do
>
> (get 'adwaita 'theme-settings)
>
> and collect all the face settings in the resulting list. Each list
> element should have the form
>
> (theme-face FACE adwaita SPEC)
>
> where FACE is a face which is customized by the theme, and SPEC is the
> face spec specified. Once you know FACE, you probably want to
>
> (face-spec-choose (face-default-spec FACE)
>
> to get the face attributes for the face's default (uncustomized,
> unthemed) face spec, on the selected frame. Then you can put that
> attribute in face-remapping-alist.
Based on your suggestion this is what I have cooked up. I am recording
what I see as problems and invite your comments.
1. Copy the attached form to color-theme.el
2. emacs -q, C-x C-f color-theme.el
3. M-x load-theme-buffer-local RET tango-dark RET
4. Look at the attached png image for a screenshot of the image.
5. Place your cursor on `load-theme-buffer-local' and C-u C-x =. Follow
the link to `font-lock-function-name-face'.
6. You will see that foreground color is reported as "Blue1" while /in
fact/ the face is yellowish.
7. Now M-x htmlfontify-buffer. I am attaching the .html file created
by this command. You will see that the buffer is colorized based on
uncustomized face settings.
I believe the problems in 5-7 are related.
I think C-u C-x = and whatever the underlying APIs that htmlfontify uses
for retrieving face properties should act on effective value and not
global values.
[color-theme.el (application/emacs-lisp, inline)]
[load-theme-buffer-local.PNG (image/png, attachment)]
[color-theme.el.html (text/html, inline)]
This bug report was last modified 11 years and 187 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.