diff options
Diffstat (limited to 'plugins/pip/_pip')
-rw-r--r-- | plugins/pip/_pip | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/plugins/pip/_pip b/plugins/pip/_pip index df53ba5ce..7c1238db7 100644 --- a/plugins/pip/_pip +++ b/plugins/pip/_pip @@ -6,8 +6,8 @@ _pip_all() { # we cache the list of packages (originally from the macports plugin) if (( ! $+piplist )); then - echo -n " (caching package index...)" - piplist=($(pip search * | cut -d ' ' -f 1 | tr '[A-Z]' '[a-z]')) + zsh-pip-cache-packages + piplist=($(cat $ZSH_PIP_CACHE_FILE)) fi } @@ -20,6 +20,7 @@ _1st_arguments=( 'bundle:create pybundles (archives containing multiple packages)' 'freeze:output all currently installed packages (exact versions) to stdout' 'help:show available commands' + 'show:show information about installed packages' 'install:install packages' 'search:search PyPI' 'uninstall:uninstall packages' @@ -62,8 +63,13 @@ case "$words[1]" in '(--no-install)--no-install[only download packages]' \ '(--no-download)--no-download[only install downloaded packages]' \ '(--install-option)--install-option[extra arguments to be supplied to the setup.py]' \ + '(--single-version-externally-managed)--single-version-externally-managed[do not download/install dependencies. requires --record or --root]'\ + '(--root)--root[treat this path as a fake chroot, installing into it. implies --single-version-externally-managed]'\ + '(--record)--record[file to record all installed files to.]'\ + '(-r --requirement)'{-r,--requirement}'[requirements file]: :_files'\ + '(-e --editable)'{-e,--editable}'[path of or url to source to link to instead of installing.]: :_files -/'\ '1: :->packages' && return 0 - + if [[ "$state" == packages ]]; then _pip_all _wanted piplist expl 'packages' compadd -a piplist @@ -71,4 +77,7 @@ case "$words[1]" in uninstall) _pip_installed _wanted installed_pkgs expl 'installed packages' compadd -a installed_pkgs ;; + show) + _pip_installed + _wanted installed_pkgs expl 'installed packages' compadd -a installed_pkgs ;; esac |