From afec5fb1360ea2dff19abe8ac7bfd10ccb4c5926 Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Thu, 17 May 2018 22:55:33 +0200 Subject: 42784: complete -s and -x options to the functions builtin --- ChangeLog | 5 +++++ Completion/Zsh/Command/_typeset | 14 ++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index d6f10e6b8..0d5a95d86 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-05-17 Oliver Kiddle + + * 42784: Completion/Zsh/Command/_typeset: complete -s and -x + options to the functions builtin + 2018-05-17 Peter Stephenson * 42793: Src/jobs.c, Src/zsh.h: Always define FDT_PROC_SUBST to diff --git a/Completion/Zsh/Command/_typeset b/Completion/Zsh/Command/_typeset index 14d5d371b..fb7189c77 100644 --- a/Completion/Zsh/Command/_typeset +++ b/Completion/Zsh/Command/_typeset @@ -55,9 +55,13 @@ case ${service} in ;; float) use="EFHghlprtux";; functions) - use="UkmTtuzMW" + use="UkmTtuzW" func=f - allargs[M]='(-k -t -T -u -U -z -M +M +k +t +z)-+M[define mathematical function]' + args=( + '(-k -t -T -u -U -W -x -z -M +M +k +t +W +z)-+M[define mathematical function]' + '(-k -m -t -T -u -U -W -x -z +M +k +t +W +z)-s[define mathematical function that takes a string argument]' + '(-M)-x+[specify spaces to use for indentation]:spaces' + ) ;; integer) use="Hghilprtux" @@ -89,8 +93,10 @@ if [[ "$state" = vars_eq ]]; then _wanted functions expl 'math function' compadd -F line - \ ${${${(f)"$(functions -M)"}##*-M }%% *} elif (( $+opt_args[-M] )); then - _arguments ':new math function:_functions' ':minimum arguments' \ - ':maximum arguments' ':shell function:_functions' + _arguments ':new math function:_functions' \ + ":minimum arguments${(k)opt_args[-s]:+:(1)}" \ + ":maximum arguments${(k)opt_args[-s]:+:(1)}" \ + ':shell function:_functions' elif (( $+opt_args[-w] )); then _wanted files expl 'zwc file' _files -g '*.zwc(-.)' elif [[ $service = autoload || -n $opt_args[(i)-[uU]] ]]; then -- cgit 1.4.1