[Top][All Lists]

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

Re: Custom themes

From: Luc Teirlinck
Subject: Re: Custom themes
Date: Wed, 29 Jun 2005 19:59:55 -0500 (CDT)

Richard Stallman wrote:

   Can you fix that doc string to be accurate?

   Then you could easily implement a command to undo one theme
   using the method I suggested above.

It seems impossible to figure out what custom-do-theme-reset is really
_trying_ to do, and custom-do-theme-reset is used in other functions,
so I can not just change it to do something that makes sense to me.
What it actually does is complex (the technical details are involved)
and seems to make no sense whatsoever.  This is ported XEmacs code.
What the function apparently wants to do is "exactly the same thing as
what the XEmacs function does, whatever that is".  It seems to me that
what happened is that the person who ported the code did not fully
understand what the XEmacs function does.  This seems to explain both
the apparent lack of consistency of the code itself, and the
inconsistency of the docs.

The situation with Custom themes is a lot worse that I thought
yesterday.  I discovered two new bugs, one so serious that it makes
the Custom themes feature unusable.  It is nearly guaranteed that even
if those two bugs could be solved plenty of others remain.  The Custom
Themes code seems to have been incorrectly ported from XEmacs, to a
degree that it is presently completely dysfunctional.

It is nearly impossible to understand incorrectly ported code, unless
you know the package that was ported.  It _is_ possible for me to
debug cus-theme.el, even though it has many bugs, because it is
originally designed code.  You can guess the original design and make
the code behave like it.  However, the themes code in custom.el is
ported code.  In this incorrectly ported code, the original design
seems to be destroyed by the incorrect porting.  You can only know it
by studying the package that was ported.

Repairing and debugging the themes code means correcting the porting
errors and finishing off the porting task.  I never used XEmacs, I do
not have it installed.  I do not know anything about the differences
between the Emacs and XEmacs versions of Elisp.  I know nothing about
the actual XEmacs version of Custom themes.  I do not know how it
works, whether it works (without excessive bugs), whether it is
actually used by people and, if so, how it is used.

I am absolutely not the right person to work on this.  Somebody who is
interested in Emacs development, but who is familiar with XEmacs
Custom Themes should finish this off.  "Finishing it off" seems to be
a substantial task.




reply via email to

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