On Sat, Mar 22, 2025 at 2:50 AM Eli Zaretskii <eliz@gnu.org> wrote:
> From: Ship Mints <shipmints@gmail.com>
> Date: Fri, 21 Mar 2025 16:02:34 -0400
> Cc: 77157@debbugs.gnu.org
>
>  Please tell in the doc string that changing the style in the middle of
>  an Emacs session must be done via Customize or by using setopt, but
>  not by setting the variable directly (unless uniquify--set-option is
>  then invoked).
>
> Eli, how is this wording which I'll put in each docstring?
>
> "To reflect a change to this option's value in your live buffer names,
> use `customize' interactively, or use `setopt' in Elisp, both of which
> call `uniquify--set-option' (setq will not do that for you)."

We usually use the following style for such variables:

  Setting this variable directly will not usually take effect;
  use either \\[customize] or `setopt', or call `uniquify--set-option'
  or restart `uniquify-mode' after setting the variable directly.

I'll adapt this language.  Uniquify isn't implemented as a mode.  It's a rename buffer hook in buffer.c and depends on 'uniquify-buffer-name-style' to have a defined style.

Even the function 'uniquify-unload-function' doesn't attempt to remove the hook (it probably should set 'uniquify-buffer-name-style' to nil as part of its business).  It's not even clear if unload ever gets called by anyone.  Perhaps a candidate to obsolete.