Re: [PATCH] completion: bash: support recursive aliases
- From
Felipe Contreras <felipe.contreras@gmail.com>
- Date
- Nov 10, 2020, 01:06 UTC
- Message-ID
- <CAMP44s2mZK2_aAepOQs-5fmrbYPJ74Jb4VaSgwMAEdzZXS+9ZA@mail.gmail.com>
- In-Reply-To
- <20201109221939.GA670413@coredump.intra.peff.net>
On Mon, Nov 9, 2020 at 4:19 PM Jeff King <peff@peff.net> wrote:
Show 8 quoted lines
> - there's no limit on the recursion if we do see a cycle. Doing: > > git config alias.foo foo > git foo <Tab> > > seems to fork-bomb the system with bash processes (well, perhaps not > a true fork-bomb because they expand linearly rather than > exponentially, but still...).
Yes. I opted for the quick and minimal solution. But if this is a concern it can be handled.
> We do have "git <cmd> --git-completion-helper" these days. I wonder if > something like "git --expand-alias-to-command" would be a useful > addition, as it would let us directly ask which Git command would be > executed (if any). And it would make both downsides go away.
Yes, but I don't think we need to wait in order to have a solution for both issues. I already sent an updated patch.
Additionally, it might not be what the user wants. For example the user might decide to have different completion for each one of the aliases (_git_l, _git_lg, etc.), and if so, we would want __git_aliased_command to exit once we find the correct completion function.
Cheers.
-- Felipe Contreras