diff options
author | Daniel Shahaf <d.s@daniel.shahaf.name> | 2016-08-04 15:54:26 +0000 |
---|---|---|
committer | Daniel Shahaf <d.s@daniel.shahaf.name> | 2016-08-05 12:37:30 +0000 |
commit | dfae92c483e78119222d48e924f3f338053eaa93 (patch) | |
tree | 4530f5cc9ff5eb59e83df821b936a551a2edee25 /Completion/Unix | |
parent | 71f1653020563696b162753539137e355f585c4d (diff) | |
download | zsh-dfae92c483e78119222d48e924f3f338053eaa93.tar.gz zsh-dfae92c483e78119222d48e924f3f338053eaa93.tar.xz zsh-dfae92c483e78119222d48e924f3f338053eaa93.zip |
38996: _man: Support _correct_word.
Since compfiles is undocumented, avoid its use altogether, replacing it by a construct that blackbox analysis suggests to be equivalent. The compfiles call being removed effected the following change (when completing «man -S 8:1 getc<TAB>»): BEFORE THE CALL: typeset -a pages=( /home/daniel/prefix/zsh/share/man/man1/ /usr/share/man/man8/ /usr/share/man/man1/ ) AFTER THE CALL: typeset -a pages=( '/home/daniel/prefix/zsh/share/man/man1/getc*(8|1)*' '/usr/share/man/man8/getc*(8|1)*' '/usr/share/man/man1/getc*(8|1)*' ) This patch effects the same transformation (modulo doubling the final slash). Any -M parameter will be passed to compadd.
Diffstat (limited to 'Completion/Unix')
-rw-r--r-- | Completion/Unix/Command/_man | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/Completion/Unix/Command/_man b/Completion/Unix/Command/_man index ffe53be5e..ae6ac38cc 100644 --- a/Completion/Unix/Command/_man +++ b/Completion/Unix/Command/_man @@ -103,7 +103,7 @@ _man() { } _man_pages() { - local matcher pages dummy sopt + local pages sopt # What files corresponding to manual pages can end in. local suf='.((?|<->*)(|.gz|.bz2|.Z|.lzma))' @@ -121,17 +121,8 @@ _man_pages() { return $? fi - zparseopts -E M+:=matcher - - if (( $#matcher )); then - matcher=( ${matcher:#-M} ) - matcher="$matcher" - else - matcher= - fi - pages=( ${(M)dirs:#*$sect_dirname/} ) - compfiles -p pages '' '' "$matcher" '' dummy "*${sect}*" + pages=( ${^pages}/"*$sect${sect:+"*"}" ); pages=( ${^~pages}(N:t) ) (($#mrd)) && pages[$#pages+1]=($(awk $awk $mrd)) |