unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
Subject: RE: Inconsistency in meaning of "user options"
Date: Mon, 12 Dec 2005 14:23:35 -0800	[thread overview]
Message-ID: <DNEMKBNJBGPAOPIJOOICOEBPDAAA.drew.adams@oracle.com> (raw)
In-Reply-To: <E1ElqNm-0008No-CD@fencepost.gnu.org>

    Sometimes we use the term "user options" to mean
    "customizable variable" or "variable meant for the user to set".
    But sometimes we use it to mean "any settings you can customize",
    which includes faces as well.

    I think we should make this consistent.  There is more than
    one way to do it; all of them will take work.
    The question is, which one is better?

We discussed this a while back, but I agree that it would be good to come to
a conclusion. Are you proposing that we discuss and decide this _now_, and
make the necessary changes before the 22.1 release?

If so, here are a few thoughts:

 - "Option" means choice. All user settings involve choice, so they are all
user options in this general sense. Another term for this is "user setting"
or simply "setting". "Option" is usually better than setting to indicate
something that can be changed at runtime.

 - If we chose to reserve "user option" for user-settable variables (those
that have `*' as doc-string first char or are defined with defcustom), then
we would have the least amount of work to do. This is because that is what
"user option" has meant, historically (with perhaps a few more recent
exceptions). In that case, since all faces are customizable, the terminology
would be: 1) "user option or face" (all), 2) "customizable user option"
(defcustom), 3) "user option" (which includes #2), and 4) "face".

 - If we decide to start from scratch, then the terms might be 1) "user
option" (all), 2) "customizable user variable", 3) "user variable" (which
includes #2), and 4) "face".

 - One problem with the previous choice is that it might not always be clear
that "user option" includes faces, especially given our legacy terminology.
If we want to be sure people understand that faces are included, we could
say "user variable or face". In that case, the only difference between the
two would be "option" vs "variable".

 - There is also the need to refer to non-user variables (all faces are
user-settable). "Internal variable" is one possibility, but some such
variables are not so internal. I would prefer "non-user variable" for this.

 - When there is a need to distinguish customizable from non-customizable
user variables (or options), those terms are sufficient: "customizable" vs
"non-customizable".


On another subject, I think it's unfortunate that the terms "customize" and
"customizable" have been appropriated for a particular kind of customization
(using Custom buffers) - especially in an editor (++) that is all about
customization (not Customization). It makes communicating about
customization much more complex and confusing. It would be a lot better if
Customize were called Foobar or Whatever.

<Heresy>
 If we rework Customize substantially for Emacs 23 (which I
 hope we do), how about renaming Customize something else?
</Heresy>

Of course, if we intend to do that, we should not decide now upon terms like
"customizable" (whateverable?).

Nested cans of worm-eating worms...

  reply	other threads:[~2005-12-12 22:23 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-12 16:18 Inconsistency in meaning of "user options" Richard M. Stallman
2005-12-12 22:23 ` Drew Adams [this message]
2005-12-12 23:33   ` Lennart Borgman
2005-12-13  0:02     ` Drew Adams
2005-12-13  0:23       ` Lennart Borgman
2005-12-13  0:29         ` Drew Adams
2005-12-13 23:33         ` Richard M. Stallman
2005-12-13 23:32   ` Richard M. 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=DNEMKBNJBGPAOPIJOOICOEBPDAAA.drew.adams@oracle.com \
    --to=drew.adams@oracle.com \
    /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).