diff options
Diffstat (limited to 'Completion/User/_perl_basepods')
-rw-r--r-- | Completion/User/_perl_basepods | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/Completion/User/_perl_basepods b/Completion/User/_perl_basepods index f4e70382b..4478c5263 100644 --- a/Completion/User/_perl_basepods +++ b/Completion/User/_perl_basepods @@ -11,20 +11,22 @@ if [[ ${+_perl_basepods} -eq 0 ]]; then typeset -agU _perl_basepods - if which basdepods >/dev/null; then + if (( ${+commands[basepods]} )); then _perl_basepods=( ${$(basepods):t:r} ) else local podpath + podpath=$(perl -MConfig -e 'print "$Config{installprivlib}/pod"') + if [[ ! -e $podpath/perl.pod ]]; then echo "Couldn't find perl.pod from Config.pm; giving up." return 1 else - cd $podpath - _perl_basepods=( *.pod(:r:t) ) - cd $OLDPWD + _perl_basepods=( ${podpath}/*.pod(:r:t) ) fi fi fi -compadd - $_perl_basepods +local expl + +_wanted pods expl 'Perl base pods' compadd - $_perl_basepods |