59 lines
1.5 KiB
Bash
59 lines
1.5 KiB
Bash
# bash completion for cvsps -*- shell-script -*-
|
|
|
|
_cvsps()
|
|
{
|
|
local cur prev words cword
|
|
_init_completion -n : || return
|
|
|
|
case $prev in
|
|
-h|-z|-f|-d|-l|--diff-opts|--debuglvl)
|
|
return 0
|
|
;;
|
|
-s)
|
|
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
|
|
awk '/^PatchSet:?[ \t]/ { print $2 }' )" -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
-a)
|
|
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
|
|
awk '/^Author:[ \t]/ { print $2 }' )" -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
-b)
|
|
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
|
|
awk '/^Branch:[ \t]/ { print $2 }' )" -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
-r)
|
|
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
|
|
awk '/^Tag:[ \t]+[^(]/ { print $2 }' )" -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
-p)
|
|
_filedir -d
|
|
return 0
|
|
;;
|
|
--test-log)
|
|
_filedir
|
|
return 0
|
|
;;
|
|
-Z)
|
|
COMPREPLY=( $( compgen -W '{1..9}' -- "$cur" ) )
|
|
return 0
|
|
;;
|
|
--root)
|
|
_xfunc cvs _cvs_roots
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
if [[ "$cur" == -* ]] ; then
|
|
COMPREPLY=( $( compgen -W '$( _parse_help "$1" -h )' -- "$cur" ) )
|
|
else
|
|
_xfunc cvs _cvs_roots
|
|
fi
|
|
} &&
|
|
complete -F _cvsps cvsps
|
|
|
|
# ex: ts=4 sw=4 et filetype=sh
|