unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Per Abrahamsen <abraham@dina.kvl.dk>
Cc: emacs-devel@gnu.org
Subject: Re: color-theme.el
Date: Wed, 28 Aug 2002 16:37:16 +0200	[thread overview]
Message-ID: <rj3csz2go3.fsf@zuse.dina.kvl.dk> (raw)
In-Reply-To: <87vg5vlwlr.fsf@emacswiki.org> (Alex Schroeder's message of "Wed, 28 Aug 2002 01:18:08 +0200")

Alex Schroeder <alex@emacswiki.org> writes:

> Per Abrahamsen <abraham@dina.kvl.dk> writes:
>
> First, let us look at the kind of effort involved in using
> cus-theme.el.  To create a theme involves about as much work as
> writing a setq statement for all the variables, and giving this
> collection of settings a name.  So for an author, there is no benefit
> compared to writing a defun.  The defun has a name and can set tons of
> variables.  The benefit for users is that undoing the theme is
> straightforward.

Jan Vroonhofs code is only the first (Lisp) step, the second step
would be to add theme commands to the customize UI, like "add setting
to theme", and "save theme".

This would allow users with no knowledge of Lisp to create and share
customizations, and, in my opinion, give them a first taste of the
free software culture of sharing.

They already do this, but they share entire "customize-set-variables"
sections, which we know doesn't work well.

> If this is the only benefit,

It isn't.  Large packages like Gnus can offer "build-in" themes for
e.g. slow and fast connections, and fancy and boring display (which in
Gnus involves much more than just faces).

Emacs itself could come with some themes, such as an "Emacs 20" theme
for people who dislike the UI changes in Emacs 21.

> however, then perhaps we are better off with another solution
> altogether: Let us create a new list of functions to call at
> startup.  Let us call it `startup-functions'.  Let us make this
> customizable.  Now site authors can install a suitable default, and
> users can still customize it to their liking.  The customizations
> will be saved to their .emacs file.  Problem solved!  And the
> solution was easy to understand.

The problem is that any individual option set by "setq" from a funtion
in such a list will overwrite the users individual customization of
that item.  With Jans themes it is the other way around, the explicit
individual settings will overwrite the the settings.

This benefit come both from package themes, other users themes, and
site themes.  They could all be done with functions and setq, but Jans
themes makes it possible to prioritize them when they conflict, and
overwrite individual options.

> "As far as I am concerned, these last years have shown that there is
> just no need for that."

I don't think you can scale the experience gained from the existence
of an unbundled package, to themes being integrated in Emacs.
Hopefully, the later will mean many more themes will be available,
with increasing need for conflict resolution and overwriting
individual choises.

  reply	other threads:[~2002-08-28 14:37 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-08-24  4:32 IRC Client for Emacs Jonathan Walther
2002-08-24  5:11 ` Damien Elmes
2002-08-24 16:50 ` color-theme.el Alex Schroeder
2002-08-26 12:45   ` color-theme.el Per Abrahamsen
2002-08-27 19:05     ` color-theme.el Richard Stallman
2002-08-28 14:19       ` color-theme.el Per Abrahamsen
2002-08-28 23:33         ` color-theme.el Richard Stallman
2002-08-29 11:55           ` color-theme.el Per Abrahamsen
2002-08-29 17:14           ` color-theme.el Alex Schroeder
2002-08-30 19:17             ` color-theme.el Richard Stallman
2002-08-31 11:38               ` color-theme.el Alex Schroeder
2002-09-01 13:14                 ` color-theme.el Richard Stallman
2002-09-01 16:07                   ` color-theme.el Alex Schroeder
2002-09-07 14:15                     ` color-theme.el Alex Schroeder
2002-09-09  0:21                       ` color-theme.el Richard Stallman
2002-08-27 23:18     ` color-theme.el Alex Schroeder
2002-08-28 14:37       ` Per Abrahamsen [this message]
2002-08-28 18:37         ` color-theme.el Alex Schroeder
2002-08-29 12:12           ` color-theme.el Per Abrahamsen
2002-08-31 16:58           ` color-theme.el Richard Stallman
2002-09-01  0:05             ` color-theme.el Alex Schroeder
2002-09-02  0:01               ` color-theme.el Richard Stallman
2002-09-02 20:37                 ` color-theme.el Alex Schroeder
2002-09-07 14:17             ` color-theme.el Alex Schroeder
2002-08-25  5:27 ` IRC Client for Emacs Richard Stallman
2002-08-25 13:38   ` color-theme.el Alex Schroeder
2002-08-25 15:56     ` color-theme.el Eli Zaretskii
2002-09-02  0:02     ` color-theme.el Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=rj3csz2go3.fsf@zuse.dina.kvl.dk \
    --to=abraham@dina.kvl.dk \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).