chiark / gitweb /
Merge branch 'master' into refs/top-bases/debian/locations
[topgit.git] / contrib / tg-completion.bash
index 67f820e8d55068697490ac537f27cede4ba46fd2..0ee233c4781b1fe8d3a84772c59373e30ed2f06f 100755 (executable)
@@ -359,6 +359,35 @@ _tg_patch ()
        local cur="${COMP_WORDS[COMP_CWORD]}"
 
        case "$cur" in
+       -*)
+               __tgcomp "
+                       -i
+                       -w
+               "
+               ;;
+       *)
+               __tgcomp "$(__tg_topics)"
+       esac
+}
+
+_tg_push ()
+{
+       local cur="${COMP_WORDS[COMP_CWORD]}"
+
+       __tg_complete_arg "-r" && {
+               __tgcomp "$(__tg_remotes)"
+               return
+       }
+
+       case "$cur" in
+       -*)
+               __tgcomp "
+                       --no-deps
+                       --dry-run
+                       --tgish-only
+                       -r
+               "
+               ;;
        *)
                __tgcomp "$(__tg_topics)"
        esac
@@ -369,6 +398,11 @@ _tg_remote ()
        local cur="${COMP_WORDS[COMP_CWORD]}"
 
        case "$cur" in
+       -*)
+               __tgcomp "
+                       --populate
+               "
+               ;;
        *)
                __tgcomp "$(__tg_remotes)"
        esac
@@ -376,7 +410,15 @@ _tg_remote ()
 
 _tg_summary ()
 {
-       COMPREPLY=()
+       local cur="${COMP_WORDS[COMP_CWORD]}"
+
+       case "$cur" in
+       *)
+               __tgcomp "
+                       --graphviz
+                       -t
+               "
+       esac
 }
 
 _tg_update ()
@@ -430,6 +472,7 @@ _tg ()
        info)        _tg_info ;;
        mail)        _tg_mail ;;
        patch)       _tg_patch ;;
+       push)        _tg_push ;;
        remote)      _tg_remote ;;
        summary)     _tg_summary ;;
        update)      _tg_update ;;