unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* customize-style
@ 2003-03-17 14:22 Stephan Stahl
  2003-03-17 15:43 ` customize-style Stefan Monnier
                   ` (2 more replies)
  0 siblings, 3 replies; 24+ messages in thread
From: Stephan Stahl @ 2003-03-17 14:22 UTC (permalink / raw)


Hi.

Since customize is discussed lately (Customize Rogue) there is some
idea i would like to present:

How about combining customize and c-set-style? That would enable the
user to use the customize interface to set all sort of things but to
group those changes together in a style. Like having one style with
light colors and another with dark colors. Or one style "compact"
without line/column-number-mode/display-time-mode and another with them
activated.

What do you think about it?

Stephan

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-17 14:22 customize-style Stephan Stahl
@ 2003-03-17 15:43 ` Stefan Monnier
  2003-03-17 23:25   ` customize-style Richard Stallman
  2003-03-17 23:28   ` customize-style Alex Schroeder
  2003-03-17 21:16 ` customize-style David Masterson
  2003-03-17 23:24 ` customize-style Richard Stallman
  2 siblings, 2 replies; 24+ messages in thread
From: Stefan Monnier @ 2003-03-17 15:43 UTC (permalink / raw)
  Cc: emacs-devel

> How about combining customize and c-set-style? That would enable the
> user to use the customize interface to set all sort of things but to
> group those changes together in a style. Like having one style with
> light colors and another with dark colors. Or one style "compact"
> without line/column-number-mode/display-time-mode and another with them
> activated.

I think it's called "customize theme".  Strangely, it seems that the
code for it was installed without any mention in the NEWS file or
the texinfo doc, so I have no idea how it's supposed to be used.


	Stefan

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-17 14:22 customize-style Stephan Stahl
  2003-03-17 15:43 ` customize-style Stefan Monnier
@ 2003-03-17 21:16 ` David Masterson
  2003-03-17 23:24 ` customize-style Richard Stallman
  2 siblings, 0 replies; 24+ messages in thread
From: David Masterson @ 2003-03-17 21:16 UTC (permalink / raw)


>>>>> Stephan Stahl writes:

> How about combining customize and c-set-style? That would enable the
> user to use the customize interface to set all sort of things but to
> group those changes together in a style. Like having one style with
> light colors and another with dark colors. Or one style "compact"
> without line/column-number-mode/display-time-mode and another with
> them activated.

I would think that this would be a relatively straightforward thing to
do just by changing the value of custom-file.  If (during .emacs) you
decide to work in theme "X", then you set your custom-file to
"custom-X.el" and proceed normally.

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-17 14:22 customize-style Stephan Stahl
  2003-03-17 15:43 ` customize-style Stefan Monnier
  2003-03-17 21:16 ` customize-style David Masterson
@ 2003-03-17 23:24 ` Richard Stallman
  2003-03-18 13:08   ` customize-style Per Abrahamsen
  2 siblings, 1 reply; 24+ messages in thread
From: Richard Stallman @ 2003-03-17 23:24 UTC (permalink / raw)
  Cc: emacs-devel

    How about combining customize and c-set-style?

Maybe c-set-style could be turned into a kind of custom theme.  What
makes it difficult is that the c style is chosen per-buffer and sets
buffer-local variables.  Custom can't do that yet.

Perhaps we could add a general feature whereby a custom theme
can be put into effect buffer-locally.  Then c-set-style could use
that mechanism.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-17 15:43 ` customize-style Stefan Monnier
@ 2003-03-17 23:25   ` Richard Stallman
  2003-03-18  0:09     ` customize-style Alex Schroeder
  2003-03-17 23:28   ` customize-style Alex Schroeder
  1 sibling, 1 reply; 24+ messages in thread
From: Richard Stallman @ 2003-03-17 23:25 UTC (permalink / raw)
  Cc: alex

    I think it's called "customize theme".  Strangely, it seems that the
    code for it was installed without any mention in the NEWS file or
    the texinfo doc, so I have no idea how it's supposed to be used.

Oops.

Alex, any chance you could write this up for NEWS?

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-17 15:43 ` customize-style Stefan Monnier
  2003-03-17 23:25   ` customize-style Richard Stallman
@ 2003-03-17 23:28   ` Alex Schroeder
  1 sibling, 0 replies; 24+ messages in thread
From: Alex Schroeder @ 2003-03-17 23:28 UTC (permalink / raw)
  Cc: Stephan Stahl

"Stefan Monnier" <monnier+gnu/emacs@rum.cs.yale.edu> writes:

> I think it's called "customize theme".  Strangely, it seems that the
> code for it was installed without any mention in the NEWS file or
> the texinfo doc, so I have no idea how it's supposed to be used.

Yes, currently this is just an API.  There is a rudimentary user
interface implementation in cus-theme.el.  You can call M-x
custom-theme-create to create a "theme" file, and that should use the
rest of the machinery.

Alex.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-17 23:25   ` customize-style Richard Stallman
@ 2003-03-18  0:09     ` Alex Schroeder
  2003-03-19  8:49       ` customize-style Richard Stallman
  0 siblings, 1 reply; 24+ messages in thread
From: Alex Schroeder @ 2003-03-18  0:09 UTC (permalink / raw)


Richard Stallman <rms@gnu.org> writes:

> Alex, any chance you could write this up for NEWS?

** custom themes collect a number of variable and face settings for sharing

You can store a collection of variables and faces with their current
definitions in theme files.  The function custom-theme-create queries
you for the name of the theme, a list of variables, and a list of
faces, and writes the theme file for you.



I guess custom-theme-create should be autoloaded.

Alex.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-17 23:24 ` customize-style Richard Stallman
@ 2003-03-18 13:08   ` Per Abrahamsen
  2003-03-19  0:05     ` customize-style Luc Teirlinck
  0 siblings, 1 reply; 24+ messages in thread
From: Per Abrahamsen @ 2003-03-18 13:08 UTC (permalink / raw)


Richard Stallman <rms@gnu.org> writes:

> Perhaps we could add a general feature whereby a custom theme
> can be put into effect buffer-locally.  

I haven't tried it, but binding custom-local-buffer might do just
that.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-18 13:08   ` customize-style Per Abrahamsen
@ 2003-03-19  0:05     ` Luc Teirlinck
  2003-03-20  8:45       ` customize-style Richard Stallman
  0 siblings, 1 reply; 24+ messages in thread
From: Luc Teirlinck @ 2003-03-19  0:05 UTC (permalink / raw)
  Cc: emacs-devel

Per Abrahamsen wrote:

   Richard Stallman <rms@gnu.org> writes:

   > Perhaps we could add a general feature whereby a custom theme
   > can be put into effect buffer-locally.  

   I haven't tried it, but binding custom-local-buffer might do just
   that.

What binding `custom-local-buffer' does is completely up to what the
author of the :set function wants it to do.  That is, assuming that the
author of the :set function knows about it, it is not documented in the
documentation string of defcustom, nor in the Elisp manual.  The
documentation string of `custom-local-buffer' is ambiguous about what
is actually expected and the documentation strings of its two users in
custom.el, which an author of a :set function is likely to use as
guidance, are also ambiguous and seem to contradict the actual
behavior.  I personally have no idea which behavior is intended: the
actual one or the one I would infer from the documentation.

Concrete problems:

Do:

(setq custom-local-buffer "buf")
C-h v custom-local-buffer

Result:

custom-local-buffer's value is "buf"

Non-nil, in a Customization buffer, means customize a specific buffer.
If this variable is non-nil, it should be a buffer, and it means
customize the local bindings of that buffer.  This variable is a
permanent local, and it normally has a local binding in every
Customization buffer.

My remarks:

Note, that the global value got set, unlike what is claimed in the
documentation string.  The line:
(put 'custom-local-buffer 'permanent-local t)
in custom.el is not sufficient to actually make `custom-local-buffer'
buffer-local.

Second problem:

"and it means customize the local bindings of that buffer."

Does this mean: *if* the variable *already* has a buffer-local binding
or no matter what?  I believe that this should be clearly specified.
The quoted sentence suggests (to me) the latter, the actual behavior
is the former, for the two important :set functions described below:

C-h f custom-set-default

Result:

custom-set-default is a compiled Lisp function in `custom'.
(custom-set-default VARIABLE VALUE)

Default :set function for a customizable variable.
Normally, this sets the default value of VARIABLE to VALUE,
but if `custom-local-buffer' is non-nil,
this sets the local binding in that buffer instead.
 
My remarks:

"this sets the local binding in that buffer instead."

Actual behavior: sets the local binding *if* it already has one.
Again, I believe this should be clarified.  The way I would read it:
unconditionally sets the local binding.

C-h f custom-set-minor-mode

Result:

custom-set-minor-mode is a compiled Lisp function in `custom'.
(custom-set-minor-mode VARIABLE VALUE)

:set function for minor mode variables.
Normally, this sets the default value of VARIABLE to nil if VALUE
is nil and to t otherwise,
but if `custom-local-buffer' is non-nil,
this sets the local binding in that buffer instead.

My remarks:

Actual behavior: sets the local "binding" (kind of, we are calling a
function not just setting a variable, but that is OK, at least to me)
for "local" minor modes, the default value for "global" minor modes.
As it is actually possible, and sometimes useful, to give some
"global" minor modes buffer local values, I believe that it should be
clarified that setting `custom-local-buffer' and using Custom is not
going to do that for you.

Sincerely,

Luc.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-18  0:09     ` customize-style Alex Schroeder
@ 2003-03-19  8:49       ` Richard Stallman
  2003-03-19 20:30         ` customize-style Alex Schroeder
  2003-03-22 21:43         ` customize-style John Paul Wallington
  0 siblings, 2 replies; 24+ messages in thread
From: Richard Stallman @ 2003-03-19  8:49 UTC (permalink / raw)
  Cc: emacs-devel

    ** custom themes collect a number of variable and face settings for sharing

    You can store a collection of variables and faces with their current
    definitions in theme files.  The function custom-theme-create queries
    you for the name of the theme, a list of variables, and a list of
    faces, and writes the theme file for you.

That is good, as far as it goes, but you need to say how to use
a theme once it is created.

    I guess custom-theme-create should be autoloaded.

I agree.  Can someone install that?

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-19  8:49       ` customize-style Richard Stallman
@ 2003-03-19 20:30         ` Alex Schroeder
  2003-03-21  8:10           ` customize-style Stephan Stahl
  2003-03-21 19:06           ` customize-style Richard Stallman
  2003-03-22 21:43         ` customize-style John Paul Wallington
  1 sibling, 2 replies; 24+ messages in thread
From: Alex Schroeder @ 2003-03-19 20:30 UTC (permalink / raw)


Richard Stallman <rms@gnu.org> writes:

> That is good, as far as it goes, but you need to say how to use
> a theme once it is created.

How about this:

** custom themes collect a number of variable and face settings for sharing

You can store a collection of variables and faces with their current
definitions in theme files.  The function custom-theme-create queries
you for the name of the theme, a list of variables, and a list of
faces, and writes the theme file for you.  In order to use such a
theme, put the file in your load-path, and use (require-theme 'foo)
where foo is the name of the theme (and "foo.el" is the name of the
file).



Alex.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-19  0:05     ` customize-style Luc Teirlinck
@ 2003-03-20  8:45       ` Richard Stallman
  2003-03-20 10:44         ` customize-style Per Abrahamsen
  2003-03-20 15:56         ` customize-style Luc Teirlinck
  0 siblings, 2 replies; 24+ messages in thread
From: Richard Stallman @ 2003-03-20  8:45 UTC (permalink / raw)
  Cc: emacs-devel

    Non-nil, in a Customization buffer, means customize a specific buffer.
    If this variable is non-nil, it should be a buffer, and it means
    customize the local bindings of that buffer.  This variable is a
    permanent local, and it normally has a local binding in every
    Customization buffer.

    My remarks:

    Note, that the global value got set, unlike what is claimed in the
    documentation string.

I think you misread the doc string--the variable is local only
in Custom buffers, and *scratch* is not one.  The setq did
exactly what it should do.

    "and it means customize the local bindings of that buffer."

    Does this mean: *if* the variable *already* has a buffer-local binding
    or no matter what?

I see the confusion here.  It actually sets the binding currently
visible in that buffer, whether that is a local binding or the global
one.

Perhaps we should change it to make the variable buffer-local if it is
not.  Per, what do you think?

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-20  8:45       ` customize-style Richard Stallman
@ 2003-03-20 10:44         ` Per Abrahamsen
  2003-03-20 18:39           ` customize-style Luc Teirlinck
  2003-03-20 15:56         ` customize-style Luc Teirlinck
  1 sibling, 1 reply; 24+ messages in thread
From: Per Abrahamsen @ 2003-03-20 10:44 UTC (permalink / raw)


Richard Stallman <rms@gnu.org> writes:

> Perhaps we should change it to make the variable buffer-local if it is
> not.  Per, what do you think?

I never understood the variable, so I don't have an opinion.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-20  8:45       ` customize-style Richard Stallman
  2003-03-20 10:44         ` customize-style Per Abrahamsen
@ 2003-03-20 15:56         ` Luc Teirlinck
  2003-03-20 17:32           ` customize-style, alternative patch Luc Teirlinck
  1 sibling, 1 reply; 24+ messages in thread
From: Luc Teirlinck @ 2003-03-20 15:56 UTC (permalink / raw)
  Cc: emacs-devel

Richard Stallman wrote:

   I think you misread the doc string--the variable is local only
   in Custom buffers, and *scratch* is not one.  The setq did
   exactly what it should do.

Sorry, I should have been more precise.  Do:

M-x customize-browse
then: select option: Confirm Kill Emacs
M-: (setq custom-local-buffer "buf")
C-h v custom-local-buffer

Same result: the global value got set.

The following (trivial) diff corrects the problem:
(after the patch it is still going to be global in *scratch*, but
local in Custom buffers.)

Change log:

2003-03-20  Luc Teirlinck  <teirllm@mail.auburn.edu>

        * cus-edit.el (custom-mode): Make custom-local-buffer local.

Patch:

===File ~/cus-edit-diff=====================================
cd /usr/local/share/emacs/21.3.50/lisp/
diff -c /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el /usr/local/share/emacs/21.3.50/lisp/cus-edit.el
*** /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el	Fri Mar 14 15:09:47 2003
--- /usr/local/share/emacs/21.3.50/lisp/cus-edit.el	Thu Mar 20 08:53:54 2003
***************
*** 4062,4067 ****
--- 4062,4068 ----
    (setq widget-documentation-face 'custom-documentation-face)
    (make-local-variable 'widget-button-face)
    (setq widget-button-face 'custom-button-face)
+   (set (make-local-variable 'custom-local-buffer) nil)
    (set (make-local-variable 'widget-button-pressed-face)
         'custom-button-pressed-face)
    (set (make-local-variable 'widget-mouse-face)

Diff finished at Thu Mar 20 09:12:03
============================================================

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style, alternative patch.
  2003-03-20 15:56         ` customize-style Luc Teirlinck
@ 2003-03-20 17:32           ` Luc Teirlinck
  2003-03-23  2:52             ` Richard Stallman
  0 siblings, 1 reply; 24+ messages in thread
From: Luc Teirlinck @ 2003-03-20 17:32 UTC (permalink / raw)
  Cc: emacs-devel

In the diff I sent before I added the line:

+   (set (make-local-variable 'custom-local-buffer) nil)

to cus-edit.el.

I am not sure if it would not be better to just add:

(make-local-variable 'custom-local-buffer)

instead (and relying on the defcustom to set it to nil).

I do not fully understand the purpose of custom-local-buffer, but not
resetting the value if custom-mode is ran again might be more
consistent with custom-local-buffer being a permanent local.  If so,
below is an alternate patch (which also avoids adding the line in the
middle of the face-customizations):

Change log:

2003-03-20  Luc Teirlinck  <teirllm@mail.auburn.edu>

        * cus-edit.el (custom-mode): Make custom-local-buffer local.

Patch:

===File ~/cus-edit-newdiff==================================
cd /usr/local/share/emacs/21.3.50/lisp/
diff -c /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el /usr/local/share/emacs/21.3.50/lisp/cus-edit.el
*** /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el	Fri Mar 14 15:09:47 2003
--- /usr/local/share/emacs/21.3.50/lisp/cus-edit.el	Thu Mar 20 11:07:35 2003
***************
*** 4058,4063 ****
--- 4058,4064 ----
    (use-local-map custom-mode-map)
    (easy-menu-add Custom-mode-menu)
    (make-local-variable 'custom-options)
+   (make-local-variable 'custom-local-buffer)
    (make-local-variable 'widget-documentation-face)
    (setq widget-documentation-face 'custom-documentation-face)
    (make-local-variable 'widget-button-face)

Diff finished at Thu Mar 20 11:14:29
============================================================

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-20 10:44         ` customize-style Per Abrahamsen
@ 2003-03-20 18:39           ` Luc Teirlinck
  2003-03-21  8:49             ` customize-style Per Abrahamsen
  0 siblings, 1 reply; 24+ messages in thread
From: Luc Teirlinck @ 2003-03-20 18:39 UTC (permalink / raw)
  Cc: emacs-devel

Per Abrahamsen wrote:

   Richard Stallman <rms@gnu.org> writes:

   > Perhaps we should change it to make the variable buffer-local if it is
   > not.  Per, what do you think?

   I never understood the variable, so I don't have an opinion.

If Per, who wrote Custom, does not understand the purpose of
custom-local-buffer, how can we expect the average Custom user to
understand?  I do not, and I believe that I reasonably carefully read
the involved source code.

For interactive use, using Custom and binding custom-local-buffer to
set buffer local values seems both more complicated and less convenient 
than the alternative means, as long as there is a well documented Lisp
alternative to setting the value through Custom.  If not,we are back
to a problem we have been discussing in another thread.

Per suggested using the variable for the purpose of putting Custom
themes into effect buffer-locally.

In as far as the following question is concerned:

   Perhaps we should change it to make the variable buffer-local if it is
   not.

If it is going to be used to put Custom themes into effect
buffer-locally, then I believe that this would indeed be better: it
would seem that either one wants the effect fully locally or fully
globally.  Like Per, I have no opinion on other uses, because I do not
know exactly what they are supposed to be.

Again, however, if custom-local-buffer is going to work reliably, for
whichever purpose, every existing or future :set function for a
potentially buffer-local variable, should be able to handle non-nil
values appropriately.

Sincerely,

Luc.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-19 20:30         ` customize-style Alex Schroeder
@ 2003-03-21  8:10           ` Stephan Stahl
  2003-03-21 19:06           ` customize-style Richard Stallman
  1 sibling, 0 replies; 24+ messages in thread
From: Stephan Stahl @ 2003-03-21  8:10 UTC (permalink / raw)


On Wed, Mar 19, 2003 at 09:30:49PM +0100, Alex Schroeder wrote:
> 
> ** custom themes collect a number of variable and face settings for sharing
> 
> faces, and writes the theme file for you.  In order to use such a
> theme, put the file in your load-path, and use (require-theme 'foo)
> where foo is the name of the theme (and "foo.el" is the name of the
> file).

I use emacs 21.2.1 so i do not know anything about custom themes or its
documentation but i think the user should be told about how to change
themes at runtime. Maybe even via a keyboard command as in cc-mode
(C-c .)

If that is already the case then sorry for the message. Maybe i should
update my emacs :-)

Stephan

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-20 18:39           ` customize-style Luc Teirlinck
@ 2003-03-21  8:49             ` Per Abrahamsen
  2003-03-23  2:53               ` customize-style Richard Stallman
  0 siblings, 1 reply; 24+ messages in thread
From: Per Abrahamsen @ 2003-03-21  8:49 UTC (permalink / raw)


Luc Teirlinck <teirllm@dms.auburn.edu> writes:

> If Per, who wrote Custom, does not understand the purpose of
> custom-local-buffer, how can we expect the average Custom user to
> understand? 

I don't believe the variable currently serve any purpose.  It was
introduced by RMS in with this ChangeLog.7 entry:

1998-06-24  Richard Stallman  <rms@psilocin.ai.mit.edu>

	* custom.el (custom-set-default): New function.
	(custom-set-variables): Use custom-set-default.
	(custom-local-buffer): New variable.
	(defcustom): Doc fix.

I grepped for any corresponding UI in the source, but didn't found
it.  I did, however, found this  ChangeLog.7 entry

1998-06-23  Richard Stallman  <rms@psilocin.ai.mit.edu>

	* cus-edit.el (custom-buffer-create-internal): New optional arg LOCAL;
	set custom-local-buffer locally to that.
	(custom-buffer-create): New optional arg LOCAL.
	(customize-local-variables): New function.
	(custom-default-value): New function.
	(custom-variable-value-create): Use custom-default-value.
	(customize-set-variable): Use custom-set-default.
	(customize-save-variable): Likewise.
	(custom-variable-set, custom-variable-reset-standard): Likewise.
	(custom-variable-save, custom-variable-reset-saved): Likewise.

My guess is that the UI was supposed to be the
customize-local-variables function.  The "customize-" prefix is
reserved for UI commands.  However, no such function is found in the
source.  Nor does custom-buffer-create have an optional LOCAL arg, or
customize-set-variable use custom-set-default.

The CVS log also shows that the above patch was not committed, at
least not on the specified day:

% cvs log cus-edit.el

revision 1.79
date: 1998/07/02 22:29:15;  author: rms;  state: Exp;  lines: +9 -9
(customize-changed-options): Clean up previous change.
----------------------------
revision 1.78
date: 1998/06/24 09:36:08;  author: schwab;  state: Exp;  lines: +2 -2
(custom-magic-show): Use `other' widget type.
----------------------------
revision 1.77
date: 1998/06/22 01:59:13;  author: done;  state: Exp;  lines: +28 -5
*** empty log message ***
----------------------------
revision 1.76
date: 1998/06/04 06:07:39;  author: kwzh;  state: Exp;  lines: +1 -1
(customize-group-other-window): Fix previous change.

In other words, custom-local-buffer is just a remaining fraction of a
much larger patch that was never committed.

I grepped my mail archives and googled, and found no references to
customize-local-variables outside Emacs ChangeLogs.

Unless we can somehow resurect the 1998-06-23 patch, I suggest the
best course of action is to undo the 1998-06-24 patch.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-19 20:30         ` customize-style Alex Schroeder
  2003-03-21  8:10           ` customize-style Stephan Stahl
@ 2003-03-21 19:06           ` Richard Stallman
  1 sibling, 0 replies; 24+ messages in thread
From: Richard Stallman @ 2003-03-21 19:06 UTC (permalink / raw)
  Cc: emacs-devel

    ** custom themes collect a number of variable and face settings for sharing

    You can store a collection of variables and faces with their current
    definitions in theme files.  The function custom-theme-create queries
    you for the name of the theme, a list of variables, and a list of
    faces, and writes the theme file for you.  In order to use such a
    theme, put the file in your load-path, and use (require-theme 'foo)
    where foo is the name of the theme (and "foo.el" is the name of the
    file).

That is good.  Please install it.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-19  8:49       ` customize-style Richard Stallman
  2003-03-19 20:30         ` customize-style Alex Schroeder
@ 2003-03-22 21:43         ` John Paul Wallington
  2003-03-24  2:04           ` customize-style Richard Stallman
  1 sibling, 1 reply; 24+ messages in thread
From: John Paul Wallington @ 2003-03-22 21:43 UTC (permalink / raw)
  Cc: emacs-devel

Richard Stallman <rms@gnu.org> wrote:

>     I guess custom-theme-create should be autoloaded.
>
> I agree.  Can someone install that?

I have installed that.  But having a command with the prefix custom-
isn't good for completion in `executed-extended-command'; the
convention is that it have a customize- prefix instead.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style, alternative patch.
  2003-03-20 17:32           ` customize-style, alternative patch Luc Teirlinck
@ 2003-03-23  2:52             ` Richard Stallman
  2003-03-23  3:45               ` Luc Teirlinck
  0 siblings, 1 reply; 24+ messages in thread
From: Richard Stallman @ 2003-03-23  2:52 UTC (permalink / raw)
  Cc: emacs-devel

    I am not sure if it would not be better to just add:

    (make-local-variable 'custom-local-buffer)

That is better.

Can you install the patch?  If not, would someone else please?

2003-03-20  Luc Teirlinck  <teirllm@mail.auburn.edu>

        * cus-edit.el (custom-mode): Make custom-local-buffer local.

Patch:

===File ~/cus-edit-newdiff==================================
cd /usr/local/share/emacs/21.3.50/lisp/
diff -c /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el /usr/local/share/emacs/21.3.50/lisp/cus-edit.el
*** /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el	Fri Mar 14 15:09:47 2003
--- /usr/local/share/emacs/21.3.50/lisp/cus-edit.el	Thu Mar 20 11:07:35 2003
***************
*** 4058,4063 ****
--- 4058,4064 ----
    (use-local-map custom-mode-map)
    (easy-menu-add Custom-mode-menu)
    (make-local-variable 'custom-options)
+   (make-local-variable 'custom-local-buffer)
    (make-local-variable 'widget-documentation-face)
    (setq widget-documentation-face 'custom-documentation-face)
    (make-local-variable 'widget-button-face)

Diff finished at Thu Mar 20 11:14:29
============================================================

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-21  8:49             ` customize-style Per Abrahamsen
@ 2003-03-23  2:53               ` Richard Stallman
  0 siblings, 0 replies; 24+ messages in thread
From: Richard Stallman @ 2003-03-23  2:53 UTC (permalink / raw)
  Cc: emacs-devel

    1998-06-23  Richard Stallman  <rms@psilocin.ai.mit.edu>

	    * cus-edit.el (custom-buffer-create-internal): New optional arg LOCAL;
	    set custom-local-buffer locally to that.
	    (custom-buffer-create): New optional arg LOCAL.
	    (customize-local-variables): New function.
	    (custom-default-value): New function.
	    (custom-variable-value-create): Use custom-default-value.
	    (customize-set-variable): Use custom-set-default.
	    (customize-save-variable): Likewise.
	    (custom-variable-set, custom-variable-reset-standard): Likewise.
	    (custom-variable-save, custom-variable-reset-saved): Likewise.

    My guess is that the UI was supposed to be the
    customize-local-variables function.  The "customize-" prefix is
    reserved for UI commands.  However, no such function is found in the
    source.  Nor does custom-buffer-create have an optional LOCAL arg, or
    customize-set-variable use custom-set-default.

It looks like I made a mistake and failed to check in the code that
goes with the change log entry.  I must have thought I had done so.

It would be a lot of work to try to find that code on backups, and
probably would fail anyway.  But it would not be terribly hard to
write it afresh based on the change log entry.  I could do it, but I
am awfully overloaded.  Would anyone else like to do it?

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style, alternative patch.
  2003-03-23  2:52             ` Richard Stallman
@ 2003-03-23  3:45               ` Luc Teirlinck
  0 siblings, 0 replies; 24+ messages in thread
From: Luc Teirlinck @ 2003-03-23  3:45 UTC (permalink / raw)
  Cc: emacs-devel

Richard Stallman wrote:   
   
   Can you install the patch?  If not, would someone else please?

I can not install it, because I do not have write access to the CVS.


2003-03-20  Luc Teirlinck  <teirllm@mail.auburn.edu>

        * cus-edit.el (custom-mode): Make custom-local-buffer local.

Patch:

===File ~/cus-edit-newdiff==================================
cd /usr/local/share/emacs/21.3.50/lisp/
diff -c /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el /usr/local/share/emacs/21.3.50/lisp/cus-edit.el
*** /usr/local/share/emacs/21.3.50/lisp/cus-edit.old.el	Fri Mar 14 15:09:47 2003
--- /usr/local/share/emacs/21.3.50/lisp/cus-edit.el	Thu Mar 20 11:07:35 2003
***************
*** 4058,4063 ****
--- 4058,4064 ----
    (use-local-map custom-mode-map)
    (easy-menu-add Custom-mode-menu)
    (make-local-variable 'custom-options)
+   (make-local-variable 'custom-local-buffer)
    (make-local-variable 'widget-documentation-face)
    (setq widget-documentation-face 'custom-documentation-face)
    (make-local-variable 'widget-button-face)

Diff finished at Thu Mar 20 11:14:29
============================================================

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: customize-style
  2003-03-22 21:43         ` customize-style John Paul Wallington
@ 2003-03-24  2:04           ` Richard Stallman
  0 siblings, 0 replies; 24+ messages in thread
From: Richard Stallman @ 2003-03-24  2:04 UTC (permalink / raw)
  Cc: emacs-devel

    >     I guess custom-theme-create should be autoloaded.
    >
    > I agree.  Can someone install that?

    I have installed that.  But having a command with the prefix custom-
    isn't good for completion in `executed-extended-command'; the
    convention is that it have a customize- prefix instead.

If the name is to start with `customize-', customize-create-theme
seems like the best name to use.

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2003-03-24  2:04 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-17 14:22 customize-style Stephan Stahl
2003-03-17 15:43 ` customize-style Stefan Monnier
2003-03-17 23:25   ` customize-style Richard Stallman
2003-03-18  0:09     ` customize-style Alex Schroeder
2003-03-19  8:49       ` customize-style Richard Stallman
2003-03-19 20:30         ` customize-style Alex Schroeder
2003-03-21  8:10           ` customize-style Stephan Stahl
2003-03-21 19:06           ` customize-style Richard Stallman
2003-03-22 21:43         ` customize-style John Paul Wallington
2003-03-24  2:04           ` customize-style Richard Stallman
2003-03-17 23:28   ` customize-style Alex Schroeder
2003-03-17 21:16 ` customize-style David Masterson
2003-03-17 23:24 ` customize-style Richard Stallman
2003-03-18 13:08   ` customize-style Per Abrahamsen
2003-03-19  0:05     ` customize-style Luc Teirlinck
2003-03-20  8:45       ` customize-style Richard Stallman
2003-03-20 10:44         ` customize-style Per Abrahamsen
2003-03-20 18:39           ` customize-style Luc Teirlinck
2003-03-21  8:49             ` customize-style Per Abrahamsen
2003-03-23  2:53               ` customize-style Richard Stallman
2003-03-20 15:56         ` customize-style Luc Teirlinck
2003-03-20 17:32           ` customize-style, alternative patch Luc Teirlinck
2003-03-23  2:52             ` Richard Stallman
2003-03-23  3:45               ` Luc Teirlinck

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).