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

Re: git-completion 1.2 released

On Sat, Nov 21, 2020 at 10:05 AM Daniel Shahaf <d.s@xxxxxxxxxxxxxxxxxx> wrote:
> Felipe Contreras wrote on Thu, 19 Nov 2020 16:05 +00:00:
> > Git-completion is a friendly fork of the official Git completion and
> > prompt scripts for Zsh and Bash.
> >
> > The main goal is to provide a more up-to-date completion for Zsh (I'm
> > the developer), which is basically just a wrapper around the Bash
> > completion.
> I was going to invite you to send patches to zsh's own _git, but then I
> noticed that in README.asciidoc you claim that you've sent patches to
> zsh's completion and "many" of them have been "ignored":

Git's zsh completion, not Zsh's Git completion.

> > Compared to Git upstream, you get many benefits for Zsh, for example:
> > no extra unnecessary spaces, correct auto suffix removal, colors
> > without PROMPT_COMMAND, custom aliases, fixed --no-options, and many
> > more.
> I suspect some of these have been fixed in zsh's _git since you last
> looked and others are configurable.  (E.g., git-send-email(1), which you
> mention below, completes not only files but also recent commits, and has
> done so for a while.)

But the main use of "git send-email" is not to receive random files,
it's to receive comittishes, and potentially some .patch files.

If I do "git send-email master..<tab>" nothing completes with Zsh's
official completion. It does with mine.

> I also suspect that zsh's _git has features that yours lacks.

Of course, but unlikely any that Git developers themselves consider
essential, since they are fine with Git's Bash completion.

> > If you use the official Zsh completion the main benefit is that it's
> > blazingly fast. Simply doing "git log <tab>" on the Linux kernel (with
> > 3k+ refs) takes several seconds on the official Zsh completion (about
> > 3 seconds on my machine), with git-complete it's *instantaneous*.
> >
> Are you comparing apples to apples or to oranges?  I.e., does it take
> more time to produce the _same set_ of result, or to produce a
> different set?

I don't personally care. Git's official completion returns a list of
more than 3,000 items. I don't think Zsh's Git completion returning
*more* helps anyone.

If it takes more for the completion system to return a completion;
it's defeating its purpose. I'd rather type it myself.


Felipe Contreras

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