On Fri, Feb 9, 2018 at 12:01 PM, Nguyễn Thái Ngọc Duy <pclo...@gmail.com> wrote:
> The new completable options are:
>
> --directory
> --exclude
> --gpg-sign
> --include
> --keep-cr
> --keep-non-patch
> --message-id
> --no-keep-cr
> --patch-format
> --quiet
> --reject
> --resolvemsg=
>
> In-progress options like --continue will be part of --git-completion-helper
> then filtered out by _git_am() unless the operation is in progress. This
> helps keep marking of these operations in just one place.
>
> Signed-off-by: Nguyễn Thái Ngọc Duy <pclo...@gmail.com>
> ---
>  contrib/completion/git-completion.bash | 11 ++++-------
>  parse-options.h                        |  4 ++--
>  rerere.h                               |  3 ++-
>  3 files changed, 8 insertions(+), 10 deletions(-)
>
> diff --git a/contrib/completion/git-completion.bash 
> b/contrib/completion/git-completion.bash
> index 1e0bd835fe..eba482eb9c 100644
> --- a/contrib/completion/git-completion.bash
> +++ b/contrib/completion/git-completion.bash
> @@ -1105,12 +1105,13 @@ __git_count_arguments ()
>  }
>
>  __git_whitespacelist="nowarn warn error error-all fix"
> +__git_am_inprogress_options="--skip --continue --resolved --abort"
>
>  _git_am ()
>  {
>         __git_find_repo_path
>         if [ -d "$__git_repo_path"/rebase-apply ]; then
> -               __gitcomp "--skip --continue --resolved --abort"
> +               __gitcomp "$__git_am_inprogress_options"
>                 return
>         fi
>         case "$cur" in
> @@ -1119,12 +1120,8 @@ _git_am ()
>                 return
>                 ;;
>         --*)
> -               __gitcomp "
> -                       --3way --committer-date-is-author-date --ignore-date
> -                       --ignore-whitespace --ignore-space-change
> -                       --interactive --keep --no-utf8 --signoff --utf8
> -                       --whitespace= --scissors
> -                       "
> +               __gitcomp_builtin am "--no-utf8" \
> +                       "$__git_am_inprogress_options"
>                 return
>         esac
>  }
> diff --git a/parse-options.h b/parse-options.h
> index 3c32401736..009cd863e5 100644
> --- a/parse-options.h
> +++ b/parse-options.h
> @@ -144,8 +144,8 @@ struct option {
>  #define OPT_STRING_LIST(s, l, v, a, h) \
>                                     { OPTION_CALLBACK, (s), (l), (v), (a), \
>                                       (h), 0, &parse_opt_string_list }
> -#define OPT_UYN(s, l, v, h)         { OPTION_CALLBACK, (s), (l), (v), NULL, \
> -                                     (h), PARSE_OPT_NOARG, 
> &parse_opt_tertiary }
> +#define OPT_UYN(s, l, v, h, f)      { OPTION_CALLBACK, (s), (l), (v), NULL, \
> +                                     (h), PARSE_OPT_NOARG|(f), 
> &parse_opt_tertiary }
>  #define OPT_DATE(s, l, v, h) \
>         { OPTION_CALLBACK, (s), (l), (v), N_("time"),(h), 0,    \
>           parse_opt_approxidate_cb }

Shouldn't this hunk go into a commit of its own?  Or at least it would
deserve a mention in the commit message.


> diff --git a/rerere.h b/rerere.h
> index c2961feaaa..5e5a312e4c 100644
> --- a/rerere.h
> +++ b/rerere.h
> @@ -37,6 +37,7 @@ extern void rerere_clear(struct string_list *);
>  extern void rerere_gc(struct string_list *);
>
>  #define OPT_RERERE_AUTOUPDATE(v) OPT_UYN(0, "rerere-autoupdate", (v), \
> -       N_("update the index with reused conflict resolution if possible"))
> +       N_("update the index with reused conflict resolution if possible"), \
> +       PARSE_OPT_NOCOMPLETE)
>
>  #endif
> --
> 2.16.1.207.gedba492059
>

Reply via email to