67 lines
1.6 KiB
Plaintext
Raw Normal View History

2009-12-28 23:30:32 +02:00
# bash completion for cvsps
have cvsps || return
2009-12-28 23:30:32 +02:00
_cvsps()
{
local cur prev words cword
_init_completion -n : || return
2009-12-28 23:30:32 +02:00
case $prev in
2009-12-28 23:30:32 +02:00
-h|-z|-f|-d|-l|--diff-opts|--debuglvl)
return 0
;;
-s)
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
awk '/^PatchSet:?[ \t]/ { print $2 }' )" -- "$cur" ) )
2009-12-28 23:30:32 +02:00
return 0
;;
-a)
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
awk '/^Author:[ \t]/ { print $2 }' )" -- "$cur" ) )
2009-12-28 23:30:32 +02:00
return 0
;;
-b)
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
awk '/^Branch:[ \t]/ { print $2 }' )" -- "$cur" ) )
2009-12-28 23:30:32 +02:00
return 0
;;
-r)
COMPREPLY=( $( compgen -W "$( cvsps 2>/dev/null |
awk '/^Tag:[ \t]+[^(]/ { print $2 }' )" -- "$cur" ) )
2009-12-28 23:30:32 +02:00
return 0
;;
-p)
_filedir -d
return 0
;;
--test-log)
_filedir
return 0
;;
-Z)
COMPREPLY=( $( compgen -W '{1..9}' -- "$cur" ) )
2009-12-28 23:30:32 +02:00
return 0
;;
--root)
declare -F _cvs_roots &>/dev/null && _cvs_roots
2009-12-28 23:30:32 +02:00
return 0
;;
esac
if [[ "$cur" == -* ]] ; then
COMPREPLY=( $( compgen -W '$( _parse_help "$1" -h )' -- "$cur" ) )
2009-12-28 23:30:32 +02:00
else
declare -F _cvs_roots &>/dev/null && _cvs_roots
2009-12-28 23:30:32 +02:00
fi
} &&
complete -F _cvsps cvsps
# Local variables:
# mode: shell-script
# sh-basic-offset: 4
# sh-indent-comment: t
# indent-tabs-mode: nil
# End:
# ex: ts=4 sw=4 et filetype=sh