Re: Re: Remove your ZSH completion in favor of the completion script distributed and maintained by ZSH

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2024-07-07 at 14:47:06, Doron Behar wrote:
> They don't perform any version checks as far as I can see in their
> implementation.

This is true as far as I can tell.  In many cases, the built-in
completion can take advantage of --help output to find the proper
commands, and usually it can intuit expected arguments and such.

> Almost all commands that the ZSH team maintains completions for, don't
> perform version checks and the maintainers of the commands themselves
> don't bother taking responsibility for that and usually users don't
> complain. If a ZSH user notices a new command or new option missing from
> such a completion function, they can submit a patch to the ZSH project,
> and setup a workaround until there is a new ZSH release with their patch
> included.

The only downside of this is that zsh releases very infrequently, so it
may take a year to get these changes into distros.  I submitted a change
to zsh after some Git version changed one of the rebase files, which
broke rebase detection, and it took some time to get that out the door.

> Besides the option of living with this potential version mismatch
> imperfection, you could also ask the ZSH team to remove their
> implementation and start maintain their implementation here. However,
> they might object because not all distributions will accommodate to this
> change in both projects...

No, please don't do that.  I use the built-in zsh functionality for
completion and things like version control usage and it works very
nicely.  One of the advantages to using zsh is that it has completion
built in and doesn't require external dependencies for most of it.

The only time I've seen problems in the zsh built-in completion was when
I was dealing with a large repository where getting the list of files in
a repository to complete a filename (e.g., HEAD:<tab>foo) took too long,
and I've just made it use local files instead, which is acceptable.

> I personally think that Git is a stable enough project that the commands
> and options don't deviate enough between the different versions of it,
> So it'd be easier for you and for the distributions if you'd let go of
> your implementation.

I don't think it's super necessary to get rid of either one.  The Git
functionality is primarily based around bash, which does need this
functionality.  zsh doesn't, but it can be used there if you want things
to work exactly as it does in bash and want to have the latest version.
-- 
brian m. carlson (they/them or he/him)
Toronto, Ontario, CA

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux