On 11. Feb 2021, at 10.30, Bart Schaefer <schaefer@brasslantern.com> wrote:
This is my fault for not re-verifying that the file locations in the
sample did not conflict with any of my defaults.  I point it out
because something like this is one of the reasons that
zsh-newuser-install asks questions before choosing file locations,
which is part of what we're supposed to be discussing in this thread.

Sure, I think that’s at least one thing that’s safe to ask. Something like this:

Where do you want to store Zsh config, cache and history files?

1. All in your $HOME dir.
2. All in another dir of you choosing
3. In the standard locations defined by the XDG Base Directory Specification (subdirs in ~/.config, ~/.cache and ~/.local/share, respectively, by default).


Incidentally, I append -$ZSH_VERSION to the compdump file name.

That’s not necessary. compdump saves $ZSH_VERSION in the compdump file and compinit checks for it: https://github.com/zsh-users/zsh/blob/2cf6032a301d994c578e5e1942c4815e85651647/Completion/compinit#L491


zmodload -F zsh/zutil b:zstyle    # Load `zstyle` builtin.

Hmm, I wouldn't think this was necessary after compinit.

No, but it is necessary _before_ compinit. And compinit even has a style it checks and which should thus be set before running compinit: https://github.com/zsh-users/zsh/blob/2cf6032a301d994c578e5e1942c4815e85651647/Completion/compinit#L566


zstyle ':completion:*' completer _expand _complete _history _correct _ignored

Did I miss the reason for removing _oldlist?

No, I didn’t give a reason. I tried out both _list and _oldlist, but both seemed unnecessary to get the behavior I’m after.