From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Alex Schroeder Newsgroups: gmane.emacs.devel Subject: Re: color-theme.el Date: Thu, 29 Aug 2002 19:14:29 +0200 Sender: emacs-devel-admin@gnu.org Message-ID: <87adn5h9je.fsf@emacswiki.org> References: <20020824043224.GC20524@reactor-core.org> <87r8goqjzt.fsf@emacswiki.org> <200208271905.g7RJ5Vi12992@wijiji.santafe.edu> NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1030641204 24200 127.0.0.1 (29 Aug 2002 17:13:24 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Thu, 29 Aug 2002 17:13:24 +0000 (UTC) Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 17kSr9-0006I0-00 for ; Thu, 29 Aug 2002 19:13:19 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17kTNW-0001nH-00 for ; Thu, 29 Aug 2002 19:46:46 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10) id 17kSsW-0002V6-00; Thu, 29 Aug 2002 13:14:44 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10) id 17kSqU-0001yX-00 for emacs-devel@gnu.org; Thu, 29 Aug 2002 13:12:38 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10) id 17kSqS-0001yJ-00 for emacs-devel@gnu.org; Thu, 29 Aug 2002 13:12:37 -0400 Original-Received: from relay02.cablecom.net ([62.2.33.102]) by monty-python.gnu.org with esmtp (Exim 4.10) id 17kSqR-0001yE-00 for emacs-devel@gnu.org; Thu, 29 Aug 2002 13:12:35 -0400 Original-Received: from smtp.swissonline.ch (mail-4.swissonline.ch [62.2.32.85]) by relay02.cablecom.net (8.12.5/8.12.5/SOL/AWF/MXRELAY/20020820) with ESMTP id g7THCXWs071368 for ; Thu, 29 Aug 2002 19:12:33 +0200 (CEST) (envelope-from alex@emacswiki.org) Original-Received: from confusibombus (dclient217-162-239-43.hispeed.ch [217.162.239.43]) by smtp.swissonline.ch (8.11.6/8.11.6/SMTPSOL/AWF/2002040101) with ESMTP id g7THCXH13244 for ; Thu, 29 Aug 2002 19:12:33 +0200 (MEST) Original-Received: from alex by confusibombus with local (Exim 3.35 #1 (Debian)) id 17kSsH-00008E-00 for ; Thu, 29 Aug 2002 19:14:29 +0200 Original-To: emacs-devel@gnu.org X-Face: ^BC$`[IcggstLPyen&dqF+b2'zyK#r.mU*'Nms}@&4zw%SJ#5!/7SMVjBS7'lb;QK)|IPU5U'o1'522W4TyzB3Ab*IBo^iw]l4|kUbdZuUDO6=Um-.4IzhNiV'B"@K#jy_(wW|Zbk[34flKY^|PrQ?$u2\fKg^]AY>wOX#H32i In-Reply-To: (Richard Stallman's message of "Wed, 28 Aug 2002 19:33:22 -0400") Original-Lines: 46 User-Agent: Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.2.90 (i686-pc-linux-gnu) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:7120 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:7120 Richard Stallman writes: > Integrate real themes, a.la. Jan Vroonhofs work. > > What is better about that? Would it provide more features (which), > work more reliably, be less code, or what? There are two main advantages. Here is how it basically works: A setting is tagged as coming from a theme. The settings currently loaded from .emacs or similar would be tagged as coming from the "user" theme, and the standard values would be tagged as coming from the "standard" theme. Authors could now write additional themes. Anytime a variable is set via custom or themes, this is recorded. Advantage 1: When you customize variabes that where set via a theme, the custom buffer could offer more information. I faintly remember that it currently just says that it was set using a theme. But it could name the theme, or even all the installed themes that tried setting the variable (and the current value would be from the last theme installed). Advantage 2: When you undo a theme, custom can set the variable to something else than the standard value or the saved (user) value. It can set it to the second-to-last installed theme, for example. Or, putting it another way, assume a variable foo with a default value of A. The user customizes it to B and saves this. In his .emacs, the user then loads two themes, "theme 1" and "theme 2". The first sets foo to C, the second sets foo to D. The value of foo is now D. When "theme 2" is undone, the value will be C. Currently (and if we followed my much simple suggestions), the same situation would result in a different end: When Emacs starts, foo is eventually set to D. If you want to go back to the second-to-last value (C), you might want to undo "theme 2". But there is no way to undo "theme 2", except to install "theme 1" again. Custom would only know the current value (D), the saved value (B) and the standard value (A). My position is that this is no great loss. Alex.