Custom zsh completion for a function based on default arguments

zsh, zsh-completion

Solution

compdef -e 'words[1]=(git pull origin); service=git; (( CURRENT+=2 )); _git' ggl

This massages the `$words`, `$service` and `$CURRENT` vars used by the completion system, and then calls the `_git` completion function.

(Thanks to Mikachu on #zsh).

Problem

How can I setup completion for a function, based on existing completion definitions and default arguments. A simplified example (which could be rewritten as an alias): ``` gpl() { git pull origin $@ } ``` This should have the same completion as after `git pull origin`.

Original source