unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
Subject: RE: Improved help from minibuffer prompts
Date: Mon, 19 Apr 2004 10:32:06 -0700	[thread overview]
Message-ID: <FDELKNEBLPKKDCEBEJCBGEKBCDAA.drew.adams@oracle.com> (raw)
In-Reply-To: <w4dfzb0xv58.fsf@nanni.riic.uni-linz.ac.at>

Nothing wrong with a new convention to delimit help for each arg.

I've thought for a while that relying on just an UPPERCASE convention for
documenting arguments and their structural parts could be improved upon
somehow. (Did someone say XML doc strings? Elisp schemas? JavaDoc keywords?
:)) A more clearly defined doc-string convention (structure, order, style)
might be a start.

However:

1) As others have pointed out, functions looking for this delimiter stuff
couldn't do anything with older doc strings that lacked it. And updating all
the doc strings of the predefined functions would be OK, but it wouldn't
affect outside, contributed packages.

2) More importantly, we should make an effort (progressively) to create doc
strings that describe arguments first in a *user-centric* fashion. Nerdier
nitty-gritty explanations can be included in a doc string (if really
necessary - rare IMO), but they should come after a high-level,
user-understandable explanation. This effort would go a long way to solving
the perceived problem.

3) *Improve the prompts* for input arguments. A good prompt goes a long way
to helping users understand. I realize that some input args are so complex
that a user may need to understand more than can be put in a prompt, but
this can sometimes be an indicator that the command UI is in fact
ill-defined.

4) Keeping in mind #2 & #3, I agree with some others that it can be useful
for a user to get to the whole doc string. Wouldn't it be sufficient to
remind a user about `C-h f' at the point of the argument "help" call? Yes,
the user would have to start the command over after reading the doc, but is
that such a bad thing?

5) Often, a prefix arg (present/absent; positive, negative, zero; other
specific values) is very important to a command's functioning. It would not
be explained by the proposed arg help; users would have to consult the doc
string to get that info anyway. If they came to rely on the proposed arg
help, thinking they were getting the whole story that way, they would miss a
lot.

6) I'm not convinced of the utility of extra help for prompted parameters at
command call. I tend to think: a) the *prompt* itself should be able to do
the job, and b) if it cannot, the user should consult the doc string with
`C-h f'.

7) In sum, I like the *solution* (delimit parts of doc strings, or otherwise
structure them), but I am not sure of the importance of the *problem* it
tries to solve. Delimiting arg help might be a good idea for other possible
uses (apropos? JavaDoc-style doc?), but I'm not sure that dynamic help on
args is really needed/helpful. But then again, I haven't tried it...

 - Drew

-----Original Message-----
From: emacs-devel-bounces+drew.adams=oracle.com@gnu.org
[mailto:emacs-devel-bounces+drew.adams=oracle.com@gnu.org]On Behalf Of
Stefan Reichor
Sent: Monday, April 19, 2004 12:52 AM
To: emacs-devel@gnu.org
Subject: Re: Improved help from minibuffer prompts
...
>     The doc string is supposed to describe the arguments, so it is more
>     useful than no help.
>
> That is true--but its description of the arguments is often not
> very helpful for a situation like this.
>
> Here is a new idea.  We can develop a convention for delimiting, in
> the doc string, the help about each argument.  Then the help facility
> for entering an argument could look thru the doc string for the part
> that refers to the current argument.

That is a nice idea. Here are my thoughts:
* Often you are prompted for an argument in the minibuffer.
  - A specific help for this argument would be sometimes very nice,
    because the prompt is to short to provide all the information
  - Often you want to about the function that is actually in progress
    You want to get the "big picture". In this case the whole
    documentation would be nicer.

* The convention for delimiting the doc strings would require a
  rewrite of many docstrings.
  Many source code documentation tools solve it by putting an extra
  \param section for every parameter.

...
Consider the find-dired example. When asked for dir or args
I would like to get the whole docstring, because it covers the things
I need to know.

I am not sure about the benefit of stripping the information down for
every argument.

  parent reply	other threads:[~2004-04-19 17:32 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-13  6:26 Improved help from minibuffer prompts Stefan Reichör
2004-04-13  6:57 ` Miles Bader
2004-04-13 10:48   ` Stefan Reichör
2004-04-14  1:22     ` Miles Bader
2004-04-14  5:35       ` Stefan Reichör
2004-04-14  6:49         ` Miles Bader
2004-04-14 10:04           ` Kim F. Storm
2004-04-14 10:39             ` Stefan Reichör
2004-04-15 16:44               ` Richard Stallman
2004-04-16  6:15                 ` Stefan Reichör
2004-04-16 10:04                   ` Kim F. Storm
2004-04-16 13:12                   ` Kai Grossjohann
2004-04-14 22:53           ` Richard Stallman
2004-04-15  1:23             ` Kim F. Storm
2004-04-16 18:08               ` Richard Stallman
2004-04-14  3:43   ` Masatake YAMATO
2004-04-14 18:02   ` Richard Stallman
2004-04-14 18:02 ` Richard Stallman
2004-04-15  5:50   ` Stefan Reichör
2004-04-16 18:07     ` Richard Stallman
2004-04-16 21:55       ` Kim F. Storm
2004-04-17 19:47         ` Richard Stallman
2004-04-19  7:51           ` Stefan Reichör
2004-04-19 11:50             ` Kim F. Storm
2004-04-29 23:48               ` Juanma Barranquero
2004-04-30  5:32                 ` Stefan Reichör
2004-04-30  9:07                   ` Juanma Barranquero
2004-05-01 17:51                     ` Richard Stallman
2004-05-01 18:33                       ` Juanma Barranquero
2004-05-02 19:52                         ` Richard Stallman
2004-05-02 22:45                           ` Juanma Barranquero
2004-05-03 22:20                             ` Richard Stallman
2004-05-06  1:08                           ` Juanma Barranquero
2004-05-06 14:13                             ` Stefan Monnier
2004-05-07  1:11                               ` Juanma Barranquero
2004-05-09  2:03                               ` Juanma Barranquero
2004-05-07  0:29                             ` Richard Stallman
2004-04-30 10:08                 ` Kim F. Storm
2004-04-30 13:39                   ` Juanma Barranquero
2004-04-30 15:50                     ` Kim F. Storm
2004-04-30 22:20                       ` Juanma Barranquero
2004-04-30 15:57                     ` Stefan Monnier
2004-04-30 21:28                       ` Juanma Barranquero
2004-04-30 22:49                         ` Stefan Monnier
2004-05-01  2:17                           ` Juanma Barranquero
2004-05-01 20:23                             ` Stefan Monnier
2004-05-02  1:52                               ` Juanma Barranquero
2004-05-04  0:32                                 ` Juanma Barranquero
2004-05-04 20:07                                   ` Richard Stallman
2004-05-04 22:52                                     ` Juanma Barranquero
2004-04-19 17:32             ` Drew Adams [this message]
2004-04-20 20:47               ` Richard Stallman
2004-04-20 23:13                 ` Drew Adams
2004-04-21  6:25                   ` Eli Zaretskii
2004-04-19 18:20             ` Richard Stallman
2004-04-16 18:07     ` Richard Stallman
2004-04-15 11:42 ` Matthew Mundell
2004-04-16  6:05   ` Stefan Reichör
2004-04-18 21:47   ` Richard 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=FDELKNEBLPKKDCEBEJCBGEKBCDAA.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).