Subject: Re: bug#15687: 24.3.50; custom themes: disabling does not restore initial configuration

From: "Basil L. Contovounesios" <[email-masked]>
Date: Wed, 13 Jun 2018 19:41:18 +0300

reopen 15687
quit

Drew Adams <[email-masked]> writes:

>> I give up.  If you want to remain convinced there is no problem,
>> fine.  If you don't want to even try to see the problems reported,
>> using the simple recipe I gave, fine.  (Yes, simple to do: download
>> the files, load them into emacs -Q, and try the command.  Maybe 3
>> minutes altogether, including the time to download.) ... there
>> seems to be little desire to fix the custom theme code in this
>> regard.  So be it.
>>
>> Ok; closing.
>
> There is nothing OK about closing this bug.  The bug clearly
> remains, and it is 100% reproducible.
>
> And users of custom themes keep getting tripped up by this
> problem.  A common, perhaps the most common, question about
> custom themes is how to completely undo one.  IOW, this bug.

I'm sorry if I've misunderstood something after skimming this bug
report, but I think the following recipe, starting from emacs -Q,
illustrates the central issue:

  ;; Sample custom theme touching user options and faces.
  (with-temp-file (expand-file-name "foo-theme.el" custom-theme-directory)
    (insert "\
  (deftheme foo)
  (custom-theme-set-variables 'foo '(text-quoting-style 'curved))
  (custom-theme-set-faces 'foo '(default ((t :foreground \"white\"
                                             :background \"black\"))))
  (provide-theme 'foo)\n"))

  ;; Make changes conflicting with theme `foo'.
  (setq text-quoting-style 'grave)
  (set-foreground-color "green")

  ;; Load, enable, and disable theme `foo'.
  (load-theme 'foo t)
  (disable-theme 'foo)

At the end of this, the value of text-quoting-style and the foreground
of the default face are nil and "black", respectively.  Wouldn't it be
less intrusive if they were reverted to the values they held before
enabling foo-theme, namely 'grave and "green", respectively?

Feel free to close this bug again if I've misunderstood something.

Thanks,

-- 
Basil

In GNU Emacs 27.0.50 (build 10, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2018-06-04 built on thunk
Repository revision: 1dafa4a02ed45bb4d02c6dc34c55518858422088
Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
System Description: Debian GNU/Linux buster/sid