124 lines
3.6 KiB
Plaintext
124 lines
3.6 KiB
Plaintext
#compdef prt-get prt-cache
|
|
|
|
local curcontext="$curcontext" expl ret=1 subcmd
|
|
|
|
_list_notinstalled() {
|
|
local liste expl pkgs
|
|
local -a disp
|
|
|
|
installed=($(prt-cache listinst))
|
|
pkgs=($(prt-cache list))
|
|
pkgs=(${pkgs:#${(j:|:)~${installed:q}}})
|
|
|
|
_wanted packages expl 'packages' \
|
|
compadd "$@" "$disp[@]" - "${(@)pkgs%%:*}"
|
|
|
|
}
|
|
|
|
_list() {
|
|
local liste expl pkgs installed
|
|
local -a disp
|
|
|
|
pkgs=($(prt-cache list))
|
|
|
|
_wanted packages expl 'packages' \
|
|
compadd "$@" "$disp[@]" - "${(@)pkgs%%:*}"
|
|
|
|
}
|
|
|
|
_listinstalled() {
|
|
local liste expl pkgs installed
|
|
local -a disp
|
|
|
|
pkgs=($(prt-cache listinst))
|
|
|
|
_wanted packages expl 'packages' \
|
|
compadd "$@" "$disp[@]" - "${(@)pkgs%%:*}"
|
|
|
|
}
|
|
|
|
_listlocked() {
|
|
local liste expl pkgs installed
|
|
local -a disp
|
|
|
|
pkgs=($(prt-cache listlocked))
|
|
|
|
_wanted packages expl 'packages' \
|
|
compadd "$@" "$disp[@]" - "${(@)pkgs%%:*}"
|
|
|
|
}
|
|
|
|
_listupdates() {
|
|
local liste expl pkgs installed
|
|
local -a disp
|
|
|
|
pkgs=($(prt-cache quickdiff))
|
|
|
|
_wanted packages expl 'packages' \
|
|
compadd "$@" "$disp[@]" - "${(@)pkgs%%:*}"
|
|
|
|
}
|
|
|
|
|
|
if (( CURRENT == 2 )); then
|
|
_describe 'prt-get command' '(
|
|
install:install\ package
|
|
depinst:install\ package\ including\ its\ dependencies
|
|
grpinst:install\ given\ packages\ but\ stop\ if\ installation\ of\ a\ package\ fails
|
|
update:update\ package
|
|
remove:remove\ package
|
|
sysup:update\ all\ installed\ packages\ which\ are\ outdated
|
|
lock:do\ not\ take\ into\ account\ these\ packages\ in\ sysup\ operation
|
|
unlock:remove\ lock\ from\ package
|
|
listlocked:list\ all\ locked\ packages
|
|
diff:show\ differences\ between\ installed\ packages\ and\ ports\ in\ the\ ports\ tree
|
|
quickdiff:print\ a\ simple\ list\ of\ packages\ whose\ versions\ differ\ from\ those\ in\ the\ ports\ tree
|
|
search:search\ ports\ tree\ for\ packages\ matching
|
|
dsearch:search\ ports\ tree\ for\ package\ name\ or\ description
|
|
fsearch:search\ for\ files\ in\ packages\ footprint
|
|
info:display\ information\ about\ a\ port
|
|
path:print\ path\ of\ a\ port
|
|
readme:print\ a\ ports\ readme
|
|
depends:print\ a\ recursive\ list\ of\ ports\ that\ are\ required\ by\ the\ given\ ports
|
|
quickdep:print\ a\ simple\ list\ of\ recursive\ dependencies\ of\ the\ given\ ports
|
|
dependent:print\ a\ list\ of\ ports\ depending\ on\ the\ given\ port
|
|
deptree:print\ a\ tree\ of\ dependencies\ of\ the\ given\ package
|
|
dup:list\ ports\ that\ can\ be\ found\ in\ multiple\ port\ directories
|
|
list:list\ ports\ available\ in\ the\ ports\ tree
|
|
printf:print\ formated\ port\ list
|
|
listinst:list\ installed\ ports
|
|
listorphans:list\ installed\ ports\ which\ have\ no\ no\ dependent\ packages
|
|
isinst:check\ wether\ a\ given\ package\ is\ installed
|
|
current:print\ version\ of\ an\ installed\ package
|
|
ls:print\ the\ the\ files\ of\ a\ package\ directory
|
|
cat:print\ the\ content\ of\ a\ file\ in\ a\ ports\ directory
|
|
edit:edit\ a\ packages\ file
|
|
help:show\ available\ options
|
|
dumpconfig:dump\ the\ current\ configuration
|
|
cache:create\ the\ cache\ file\ for\ prt-cache
|
|
version:show\ the\ current\ version\ of\ prt-get
|
|
)' && ret=0
|
|
|
|
else
|
|
shift words
|
|
(( CURRENT-- ))
|
|
subcmd="$words[1]"
|
|
curcontext="${curcontext%:*}-${subcmd}:"
|
|
|
|
if (( CURRENT == 2 )); then
|
|
case $subcmd in
|
|
remove|lock|current) _listinstalled && ret=0 ;;
|
|
path|depends|dependent|deptree|isinst|ls|cat|edit) _list && ret=0 ;;
|
|
unlock) _listlocked && ret=0 ;;
|
|
install|grpinst|depinst) _list_notinstalled && ret=0 ;;
|
|
info|readme|search) _list && ret=0 ;;
|
|
update) _listupdates && ret=0 ;;
|
|
*) _message 'unknown subcommand: $subcmd' ;;
|
|
esac
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
return ret
|