Subject: Re: bug#25046: 26.0.50; Arguments of `ediff-janitor' undocumented

From: Eli Zaretskii <[email-masked]>
Date: Fri, 02 Dec 2016 16:37:48 +0200

> From: Philipp Stephani <[email-masked]>
> Date: Fri, 02 Dec 2016 13:47:33 +0000
> Cc: [email-masked]
> 
> Thanks, however I'm still not quite sure about the meaning.
> "ASK non-nil means ask the user whether to keep each unmodified buffer, unless KEEP-VARIANTS is
> non-nil, in which case buffers are killed unconditionally."
> So if ASK = nil, KEEP-VARIANTS = nil: kill buffers, don't ask about any buffer

Yes.

> ASK = (nil or non-nil), KEEP-VARIANTS = non-nil: don't kill any buffer, don't ask

Yes, I've goofed.  KEEP-VARIANTS non-nil means never kill.  Now fixed.

> ASK = non-nil, KEEP-VARIANTS = nil: ask about each buffer

Yes.

> If that's the case, shouldn't the documentation rather be something like:
> "If KEEP-VARIANTS is non-nil, only indirect buffers are killed [what does that mean for the user?], and ASK is
> ignored. Otherwise, if ASK is non-nil, ask the user for each unmodified buffer whether it should be killed.
> Otherwise (both ASK and KEEP-VARIANTS) are nil, all unmodified buffers are killed without confirmation."
> WDYT? 

I don't think mentioning indirect buffers will add anything but
confusion.

I fixed the incorrect meaning of KEEP-VARIANTS, and I think the result
is okay, definitely so for an internal utility function.

Thanks.