Subject: Re: bug#7291: 24.0.50; `non-essential' is incomprehensible

From: James Cloos <[email-masked]>
Date: Thu, 28 Oct 2010 13:33:15 -0400

>>>>> "DA" == Drew Adams <[email-masked]> writes:

DA> Variable `non-essential' was introduced in Emacs 24.
DA> The name is bad - doesn't say anything.  Non-essential wrt what?
 
DA> The doc is bad:
 
DA> "Whether the currently executing code is performing an essential
DA> task.  This variable should be non-nil only when running code which
DA> should not disturb the user.  E.g. it can be used to prevent Tramp
DA> from prompting the user for a password when we are simply scanning a
DA> set of files in the background or displaying possible completions
DA> before the user even asked for it."

[Just translating between english and english here -JimC]

Seems clear here.  If the variable is nil tramp will be happy to do
user-interactive stuff, such as prompting the user for a password.

But tramp would prefer that the variable be set to non-nil in any
function which does remote work which will not require such user-
interaction.

DA> So does nil mean the code is performing an essential task?  Or does
DA> non-nil mean that?  What's an "essential task"?  A task that should
DA> disturb the user (because it is important) or a task that should not
DA> disturb the user?

I think you are thinking about it the wrong way -- or at least
sufficiently differently than the authors as to fail to see their
meaning.  (Please do not take that as a flame.)

Don't think "importance" but rather "will this require user interaction
to succeed?".

And set to nil if it will require user interaction to succeed.

-JimC
-- 
James Cloos <[email-masked]>         OpenPGP: 1024D/ED7DAEA6