Subject: bug#57321: 29.0.50; doc string and customization form for variable auto-save-file-name-transforms suboptimal

From: Gregor Zattler <[email-masked]>
Date: Mon, 22 Aug 2022 11:59:17 +0200

Hi Lars,
* Lars Ingebrigtsen <[email-masked]> [2022-08-22; 01:36]:
> Gregor Zattler <[email-masked]> writes:
>> (customize-variable 'auto-save-file-name-transforms)
>>
>> shows the customization form for this variable accompanied
>> by a doc string.
>>
>> According to the doc string the argument UNIQUIFY may have
>> on of more than two values but the form only gives access to
>> a toggle switch.
>
> I'm unable to reproduce this -- with "emacs -Q" in Emacs 29, I get:
> Hide Auto Save File Name Transforms:
> Repeat:
> [INS] [DEL] List:
>             Regexp: \`/[^/]*:\([^/]*/\)*\([^/]*\)\'
>             Replacement: /tmp/\2
>             Uniquify: [Toggle]  on (non-nil)
> [INS]

You get, what I got.

What I meant was, that one can only toggle the value of
UNIQUIFY from on to off and back, while this argument also
allows for the names of some secure hashes.  Therefore for
the sake of completeness the customization form should
feature a value menu instead of a toggle switch.

>> The documentation for UNIQUIFY, does not state clearly what
>> happens if UNIQUIFY is nil and what the perils are.
>
> Well, it doesn't make the names unique, so you could overwrite
> a different autosave file, but does that need to be said?
>
>> Where the doc now says "is non-nil" it probably should say
>> "is t" instead.
>
> No, all non-nil values (except the ones in secure-hash-algorithms) work
> fine.

The doc string is upside down.  Only after reading the
last part about the secure hashes one knows that "non-nil"
actually means "non-nil except for the names of secure
hashes".

Only when reading the part regarding UNIQUIFY being
"non-nil" one understands that the talk before about
replacing within the regex match actually is about the
directory the auto-saved-files are stored under.

That might not be important, though.  I can easily live
without the doc string being changed, now that I groked it.

Ciao,
--
Gregor