From 0fbdf5741fbb06688ab6503f464dbeb31a2c70f8 Mon Sep 17 00:00:00 2001 From: Clint Adams Date: Sun, 1 Oct 2006 21:57:04 +0000 Subject: 22803: updates for dchroot and schroot completion, and new completion for dchroot-dsa. --- Completion/Debian/Command/_dchroot | 38 +++++++++++++++++++++------------- Completion/Debian/Command/_dchroot-dsa | 27 ++++++++++++++++++++++++ Completion/Debian/Command/_schroot | 30 +++++++++++++-------------- 3 files changed, 66 insertions(+), 29 deletions(-) create mode 100644 Completion/Debian/Command/_dchroot-dsa (limited to 'Completion/Debian') diff --git a/Completion/Debian/Command/_dchroot b/Completion/Debian/Command/_dchroot index 7a6973f1b..ba2c5b3fa 100644 --- a/Completion/Debian/Command/_dchroot +++ b/Completion/Debian/Command/_dchroot @@ -1,18 +1,28 @@ #compdef dchroot -local curcontext="$curcontext" state line expl ret=1 +local expl context state line +typeset -A opt_args -_arguments -C \ - '(-c -l -h -V)-a[execute in all known chroots]' \ - '(-a -l -h -V)-c[execute in specified chroot]:chroot:->chroots' \ - '(- *)-l[list available chroots]' \ - '(-l)-d[preserve environment in chroot]' \ - '(-h -l -V)-q[be quiet]' \ - '(- *)-h[display help information]' \ - '(- *)-V[display version information]' \ - '*::args: _normal' && ret=0 +_arguments -S \ + '(-h --help)'{-h,--help}'[help]' \ + '(-a --all)'{-a,--all}'[select all chroots]' \ + '*'{-c,--chroot=}'[use specified chroot]:chroot:->chroot' \ + '(-d --directory)'{-d,--directory=}'[directory to use]:dir:_files -W / -P /' \ + '(-l --list)'{-l,--list}'[list available chroots]' \ + '(-i --info)'{-i,--info}'[show information about selected chroots]' \ + '(-p --path)'{-p,--path}'[print path to selected chroot]' \ + '--config[dump configuration of selected chroots]' \ + '(-d --preserve-environment)'{-d,--preserve-environment}'[preserve user environment]' \ + '(-q --quiet)'{-q,--quiet}'[quiet]' \ + '(-v --verbose)'{-v,--verbose}'[verbose]' \ + '(-V --version)'{-V,--version}'[version]' \ + '(-):command name: _command_names -e' \ + '*::arguments: _normal' && return 0 -[[ -n $state ]] && _wanted chroots expl chroot \ - compadd ${${$(dchroot -l)[3,-1]%,}:#\[*\]} && ret=0 - -return ret +case "$state" in + (chroot) + _wanted tag expl 'chroot' \ + compadd ${(os:,:)${${${"$(dchroot -l)"#Available chroots: }/\[*\]/}//[ +]/}} + ;; +esac diff --git a/Completion/Debian/Command/_dchroot-dsa b/Completion/Debian/Command/_dchroot-dsa new file mode 100644 index 000000000..7eeb1371d --- /dev/null +++ b/Completion/Debian/Command/_dchroot-dsa @@ -0,0 +1,27 @@ +#compdef dchroot-dsa + +local expl context state line +typeset -A opt_args + +_arguments -S \ + '(-h --help)'{-h,--help}'[help]' \ + '(-a --all)'{-a,--all}'[select all chroots]' \ + '*'{-c,--chroot=}'[use specified chroot]:chroot:->chroot' \ + '(-d --directory)'{-d,--directory=}'[directory to use]:dir:_files -W / -P /' \ + '(-l --list)'{-l,--list}'[list available chroots]' \ + '(-i --info)'{-i,--info}'[show information about selected chroots]' \ + '(-p --listpaths)'{-p,--listpaths}'[print paths to available chroots]' \ + '--config[dump configuration of selected chroots]' \ + '(-q --quiet)'{-q,--quiet}'[quiet]' \ + '(-v --verbose)'{-v,--verbose}'[verbose]' \ + '(-V --version)'{-V,--version}'[version]' \ + '(-):command name: _command_names -e' \ + '*::arguments: _normal' && return 0 + +case "$state" in + (chroot) + _wanted tag expl 'chroot' \ + compadd ${(os:,:)${${${"$(dchroot -l)"#Available chroots: }/\[*\]/}//[ +]/}} + ;; +esac diff --git a/Completion/Debian/Command/_schroot b/Completion/Debian/Command/_schroot index 5e52f665d..f10236860 100644 --- a/Completion/Debian/Command/_schroot +++ b/Completion/Debian/Command/_schroot @@ -5,30 +5,30 @@ typeset -A opt_args _arguments -S \ '(-h --help)'{-h,--help}'[help]' \ - '(-a --all)'{-a,--all}'[all chroots and active sessions]' \ - '--all-chroots' \ - '--all-sessions' \ - '*'{-c,--chroot=}':chroot:->chroot' \ - '(-u --user)'{-u,--user=}':user:_users' \ + '(-a --all)'{-a,--all}'[select all chroots and active sessions]' \ + '--all-chroots[select all chroots]' \ + '--all-sessions[select all active sessions]' \ + '*'{-c,--chroot=}'[use specified chroot]:chroot:->chroot' \ + '(-d --directory)'{-d,--directory=}'[directory to use]:dir:_files -W / -P /' \ + '(-u --user)'{-u,--user=}'[username (default current user)]:user:_users' \ '(-l --list)'{-l,--list}'[list available chroots]' \ - '(-i --info)'{-i,--info}'[print detailed information about specified chroots]' \ - '--location[print location of specified chroots]' \ - '--config[print configuration of specified chroots]' \ - '(-p --preserve-environment)'{-p,--preserve-environment}'[preserve user environment within chroot]' \ + '(-i --info)'{-i,--info}'[show information about selected chroots]' \ + '--location[print location of selected chroots]' \ + '--config[dump configuration of selected chroots]' \ + '(-p --preserve-environment)'{-p,--preserve-environment}'[preserve user environment]' \ '(-q --quiet)'{-q,--quiet}'[quiet]' \ '(-v --verbose)'{-v,--verbose}'[verbose]' \ '(-V --version)'{-V,--version}'[version]' \ - '(-b --begin-session)'{-b,--begin-session}'[begin a session]' \ - '--recover-session}[recover an existing session]' \ - '(-e --end-session)'{-e,--end-session=}':session UUID:' \ - '(-f --force)'{-f,--force}'[force a session operation]' \ + '(-b --begin-session)'{-b,--begin-session}'[begin a session; returns a session ID]' \ + '--recover-session[recover an existing session]' \ + '(-e --end-session)'{-e,--end-session}'[end an existing session]' \ + '(-f --force)'{-f,--force}'[force operation]' \ '(-):command name: _command_names -e' \ '*::arguments: _normal' && return 0 case "$state" in (chroot) _wanted tag expl 'chroot' \ - compadd $(schroot -l) + compadd $(schroot -l -a) ;; - esac -- cgit 1.4.1