Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Where to put my own completions?

On 5/2/22 15:07, Daniel Shahaf wrote:
> Manfred Lotz wrote on Mon, 02 May 2022 11:31 +00:00:
>> I have some completions outsided of packages. Once I decided to put those
>> completions into ~/.zfunc directory and define things like follows
>> fpath+=~/.zfunc
>> autoload -Uz compinit
>> zstyle ':completion:*' menu select
>> compinit
>> Question: Is there a recommended directory where to put completions into, or is
>> it just like "Do what you want!" ?
> I tend to put them in my zshrc alongside the function definitions:
> f() { echo $1 $2 }
> _f() { _arguments "1:foo" "2:bar" }
> compdef _f f
> It's convenient since they tend to change in lockstep.

Thanks for your reply.

I personally prefer to have a single file for each completion. I don't want to
fill the .zshrc with different completions where each completion could have
40-70 lines or so.

> Or one could use the XDG envvars / default paths:
> https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
> And for system-wise completions there's the site-functions dir, part of the default $fpath.

From your reply I take that there is no recommendation from zsh perspective.


Messages sorted by: Reverse Date, Date, Thread, Author