summaryrefslogtreecommitdiffstats
path: root/completions/cvsps
diff options
context:
space:
mode:
Diffstat (limited to 'completions/cvsps')
-rw-r--r--completions/cvsps58
1 files changed, 58 insertions, 0 deletions
diff --git a/completions/cvsps b/completions/cvsps
new file mode 100644
index 0000000..4fdfefc
--- /dev/null
+++ b/completions/cvsps
@@ -0,0 +1,58 @@
+# 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
+ ;;
+ -s)
+ COMPREPLY=($(compgen -W "$($1 2>/dev/null |
+ awk '/^PatchSet:?[ \t]/ { print $2 }')" -- "$cur"))
+ return
+ ;;
+ -a)
+ COMPREPLY=($(compgen -W "$($1 2>/dev/null |
+ awk '/^Author:[ \t]/ { print $2 }')" -- "$cur"))
+ return
+ ;;
+ -b)
+ COMPREPLY=($(compgen -W "$($1 2>/dev/null |
+ awk '/^Branch:[ \t]/ { print $2 }')" -- "$cur"))
+ return
+ ;;
+ -r)
+ COMPREPLY=($(compgen -W "$($1 2>/dev/null |
+ awk '/^Tag:[ \t]+[^(]/ { print $2 }')" -- "$cur"))
+ return
+ ;;
+ -p)
+ _filedir -d
+ return
+ ;;
+ --test-log)
+ _filedir
+ return
+ ;;
+ -Z)
+ COMPREPLY=($(compgen -W '{1..9}' -- "$cur"))
+ return
+ ;;
+ --root)
+ _xfunc cvs _cvs_roots
+ return
+ ;;
+ esac
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=($(compgen -W '$(_parse_help "$1" -h)' -- "$cur"))
+ else
+ _xfunc cvs _cvs_roots
+ fi
+} &&
+ complete -F _cvsps cvsps
+
+# ex: filetype=sh