X-Git-Url: https://git.distorted.org.uk/~mdw/stgit/blobdiff_plain/ebbd6f00a745851a7c914b76bc963be50d12818e..302600dcf151882ac09cdee1dcec3ae7d42178e9:/contrib/stgit-completion.bash diff --git a/contrib/stgit-completion.bash b/contrib/stgit-completion.bash index 37277a9..09614dc 100644 --- a/contrib/stgit-completion.bash +++ b/contrib/stgit-completion.bash @@ -20,11 +20,13 @@ _stg_commands=" clean clone commit + cp export files float fold goto + hide id import init @@ -36,6 +38,7 @@ _stg_commands=" pop pull push + rebase refresh rename resolved @@ -43,9 +46,11 @@ _stg_commands=" series show status + sync top unapplied uncommit + unhide " # The path to .git, or empty if we're not in a repository. @@ -89,13 +94,13 @@ _all_other_patches () local b=$(_current_branch) local g=$(_gitdir) [ "$g" ] && cat "$g/patches/$b/applied" "$g/patches/$b/unapplied" \ - | grep -v "^$(< $g/patches/$b/current)$" + | grep -v "^$(cat $g/patches/$b/current 2> /dev/null)$" } # List the command options _cmd_options () { - stg $1 --help | grep -e " --[A-Za-z]" | sed -e "s/.*\(--[^ =]\+\).*/\1/" + stg $1 --help 2>/dev/null | grep -e " --[A-Za-z]" | sed -e "s/.*\(--[^ =]\+\).*/\1/" } # Generate completions for patches and patch ranges from the given @@ -186,18 +191,22 @@ _stg () # stack commands float) _stg_patches $command _all_patches ;; goto) _stg_patches $command _all_other_patches ;; + hide) _stg_patches $command _all_patches ;; pop) _stg_patches $command _applied_patches ;; push) _stg_patches $command _unapplied_patches ;; + series) _stg_patches $command _all_patches ;; + unhide) _stg_patches $command _all_patches ;; # patch commands delete) _stg_patches $command _all_patches ;; - export) _stg_patches_options $command _applied_patches "-r --range" ;; + export) _stg_patches $command _applied_patches ;; files) _stg_patches $command _all_patches ;; log) _stg_patches $command _all_patches ;; - mail) _stg_patches $command _applied_patches ;; + mail) _stg_patches $command _all_patches ;; pick) _stg_patches $command _unapplied_patches ;; refresh)_stg_patches_options $command _applied_patches "-p --patch" ;; rename) _stg_patches $command _all_patches ;; show) _stg_patches $command _all_patches ;; + sync) _stg_patches $command _applied_patches ;; # working-copy commands diff) _stg_patches_options $command _applied_patches "-r --range" ;; # all the other commands