unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* command to customize the thing at point?
@ 2006-02-21 21:57 Drew Adams
  2006-02-22 10:11 ` Mathias Dahl
  0 siblings, 1 reply; 6+ messages in thread
From: Drew Adams @ 2006-02-21 21:57 UTC (permalink / raw)


How about having a single command that would call customize-face,
customize-option, or customize-group, as appropriate, on the name at point
or under the mouse pointer?

Whenever there is more than one customizable object that has the same name,
the command could ask which you want.

This would be simpler for users. It might even warrant a global key binding
or at least a key binding in modes like Help mode.

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

* Re: command to customize the thing at point?
  2006-02-21 21:57 command to customize the thing at point? Drew Adams
@ 2006-02-22 10:11 ` Mathias Dahl
  2006-02-22 15:23   ` Drew Adams
  0 siblings, 1 reply; 6+ messages in thread
From: Mathias Dahl @ 2006-02-22 10:11 UTC (permalink / raw)
  Cc: Emacs-Devel

> How about having a single command that would call customize-face,
> customize-option, or customize-group, as appropriate, on the name at point
> or under the mouse pointer?

In what contexts/places would it be useful?

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

* RE: command to customize the thing at point?
  2006-02-22 10:11 ` Mathias Dahl
@ 2006-02-22 15:23   ` Drew Adams
  2006-02-24  0:32     ` Juri Linkov
  2006-02-25  7:57     ` Mathias Dahl
  0 siblings, 2 replies; 6+ messages in thread
From: Drew Adams @ 2006-02-22 15:23 UTC (permalink / raw)


    > How about having a single command that would call customize-face,
    > customize-option, or customize-group, as appropriate, on the
    > name at point or under the mouse pointer?

    In what contexts/places would it be useful?

Any context in which, today, you might use `customize-face',
`customize-option', or `customize-group'. These are essentially just
different manifestations of the same `customize' method applied to different
kinds of "objects".

The point is that you're already pointing at the name of the thing in
question (via point or mouse pointer), and that "object" should "know" what
the "method" `customize' means to it (to descend to oopspeak).

(No, I'm not advocating any oopness for Emacs here; I just thought that
phrasing it ooply might make the point clearer to those born post Oop (other
than Alley, that is).)

In only relatively few cases is the object in question ambiguous; in those
cases, the command would ask you which is the intended target. It could
either ask you explicitly (y/n) or just let you cycle through the possible
values ("foo (function)", "foo (option)", "foo (face)").

The same idea might be used for `describe-variable', `describe-function',
etc. when it picks up the default value - much of the time the name is
unambiguous.

This could mean fewer keys to learn for gnubees.

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

* Re: command to customize the thing at point?
  2006-02-22 15:23   ` Drew Adams
@ 2006-02-24  0:32     ` Juri Linkov
  2006-02-25  7:57     ` Mathias Dahl
  1 sibling, 0 replies; 6+ messages in thread
From: Juri Linkov @ 2006-02-24  0:32 UTC (permalink / raw)
  Cc: emacs-devel

>     > How about having a single command that would call customize-face,
>     > customize-option, or customize-group, as appropriate, on the
>     > name at point or under the mouse pointer?

`customize-thing-at-point'?

> In only relatively few cases is the object in question ambiguous; in those
> cases, the command would ask you which is the intended target. It could
> either ask you explicitly (y/n) or just let you cycle through the possible
> values ("foo (function)", "foo (option)", "foo (face)").

`M-x customize-thing-at-point RET M-n M-n M-n RET'?

> The same idea might be used for `describe-variable', `describe-function',
> etc. when it picks up the default value - much of the time the name is
> unambiguous.

`M-x describe-thing-at-point RET M-n M-n M-n RET'?

-- 
Juri Linkov
http://www.jurta.org/emacs/

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

* Re: command to customize the thing at point?
  2006-02-22 15:23   ` Drew Adams
  2006-02-24  0:32     ` Juri Linkov
@ 2006-02-25  7:57     ` Mathias Dahl
  2006-02-25 16:28       ` Drew Adams
  1 sibling, 1 reply; 6+ messages in thread
From: Mathias Dahl @ 2006-02-25  7:57 UTC (permalink / raw)
  Cc: Emacs-Devel

>     > How about having a single command that would call customize-face,
>     > customize-option, or customize-group, as appropriate, on the
>     > name at point or under the mouse pointer?
>
>     In what contexts/places would it be useful?
>
> Any context in which, today, you might use `customize-face',
> `customize-option', or `customize-group'. These are essentially just
> different manifestations of the same `customize' method applied to different
> kinds of "objects".
>
> The point is that you're already pointing at the name of the thing in
> question (via point or mouse pointer), and that "object" should "know" what
> the "method" `customize' means to it (to descend to oopspeak).

I think I understand how the command is supposed to work, what I was
curious about was in what situations a user would want to use it. Is
it when reading the manual maybe, having point over a "thing", or
maybe when browsing Emacs lisp code?

I would guess that your answer to the above will be "yes", and "yes,
for example", respectively... :)

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

* RE: command to customize the thing at point?
  2006-02-25  7:57     ` Mathias Dahl
@ 2006-02-25 16:28       ` Drew Adams
  0 siblings, 0 replies; 6+ messages in thread
From: Drew Adams @ 2006-02-25 16:28 UTC (permalink / raw)


    >     > How about having a single command that would call
    >     > customize-face, customize-option, or customize-group,
    >     > as appropriate, on the
    >     > name at point or under the mouse pointer?

    I think I understand how the command is supposed to work, what I was
    curious about was in what situations a user would want to use it. Is
    it when reading the manual maybe, having point over a "thing", or
    maybe when browsing Emacs lisp code?

Anywhere you might find the name of an Emacs thingy: *Help*; *Apropos*,
Emacs or Emacs-Lisp or Ediff or ... manual (*Info*); browsing Emacs-Lisp
code; reading email about Emacs; consulting a message in *Messages* that
suggests using an option;...

Of course, in some of these places some of the thingies are already linked
to *Help* descriptions, which in turn have links to Customize.

The point is that we already have `customize-face', `customize-option', and
`customize-group' - whenever & wherever you might use one of those, you
might use `customize-thing-at-point' (or -at-mouse-pointer). If the former
commands are useful, then so should be the latter command(s) - especially,
but not only, for gnubies.

Such a command (sh|c)ould be bound to a key, to make it even more useful for
gnubies. And, since accessing the Custom information about an option or face
is useful not only to change it but also to learn about it (doc string,
current state, possible alternative values,...), the `customize-*' commands
could be considered to be part of the `C-h' family. IOW, why not bind
`customize-thing-at-point' to, say, `C-h o'? (`C-h c' would be better, of
course.)

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

end of thread, other threads:[~2006-02-25 16:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-02-21 21:57 command to customize the thing at point? Drew Adams
2006-02-22 10:11 ` Mathias Dahl
2006-02-22 15:23   ` Drew Adams
2006-02-24  0:32     ` Juri Linkov
2006-02-25  7:57     ` Mathias Dahl
2006-02-25 16:28       ` Drew Adams

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