emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Custom themes


From: Richard M. Stallman
Subject: Re: Custom themes
Date: Tue, 28 Jun 2005 23:58:44 -0400

    If I had to implement themes from scratch, my philosophy would be that
    if two loaded themes conflict, then the most recently added one takes
    precedence.

That sounds like a good approach.  I see a few approaches that
could make sense:

1. Most recent takes priority.
2. Let user specify the priority order.
3. Don't allow loading themes that conflict.
4. Ask the user what to do, each time there is a conflict.

I am not sure which of these is best.  Are there other apps that allow
loading multiple themes at once?  If so, how do they handle this?

      If you remove the most recently added theme, then the
    theme added just before that one becomes "top dog".  This would seem
    simple and intuitive.

Yes.

      This requires unconditional loading as the
    basic theme adding operation.

I do not understand "unconditional loading".  Could you explain
what you mean by that?

    I do not use XEmacs and I do not know whether the XEmacs version is
    actually in active use and works according to some consistent
    philosophy.  I do not know how important compatibility with XEmacs in
    the Emacs Custom Themes implementation.

It is not crucial, unless they want to work with us on this.
Don't worry about it.

    replaced with this:

    ;; *Please note*: this feature is experimental and needs more work.
    ;; In Emacs 22, everything should work fine if you only add and never
    ;; remove themes.  But removing themes only works seamlessly in very
    ;; basic situations.  In more complex usage, it may not work as expected.
    ;; For instance, after removing themes, `require-theme' might not produce
    ;; the expected results for themes that have already been added before.
    ;; In such situations, you can just directly load the theme file to get
    ;; the intended results.\n\n"

That is good.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]