Пользовательское завершение zsh для функции на основе аргументов по умолчанию
Как настроить завершение для функции на основе существующих определений завершения и аргументов по умолчанию.
Упрощенный пример (который можно переписать как псевдоним):
gpl() {
git pull origin $@
}
Это должно иметь такое же завершение, как после git pull origin
,
1 ответ
Решение
compdef -e 'words[1]=(git pull origin); service=git; (( CURRENT+=2 )); _git' ggl
Это массажирует $words
, $service
а также $CURRENT
переменные, используемые системой завершения, а затем вызывает _git
функция завершения.
(Спасибо Микачу на #zsh).