contrib/completion: extract common diff/difftool options
difftool parses its own options and then passes the remaining options onto diff. As a result, they share common command-line options. Instead of duplicating the list, use a shared $__git_diff_difftool_options list. The completion for diff is missing --relative and the completion for difftool is missing --no-index. Add both of these to the common list. Signed-off-by: Denton Liu <liu.denton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
a8fa6a08f4
commit
308d7a7dc9
@ -1691,6 +1691,10 @@ __git_diff_common_options="--stat --numstat --shortstat --summary
|
|||||||
--textconv --no-textconv
|
--textconv --no-textconv
|
||||||
"
|
"
|
||||||
|
|
||||||
|
__git_diff_difftool_options="--cached --staged --pickaxe-all --pickaxe-regex
|
||||||
|
--base --ours --theirs --no-index --relative
|
||||||
|
$__git_diff_common_options"
|
||||||
|
|
||||||
_git_diff ()
|
_git_diff ()
|
||||||
{
|
{
|
||||||
__git_has_doubledash && return
|
__git_has_doubledash && return
|
||||||
@ -1713,10 +1717,7 @@ _git_diff ()
|
|||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
--*)
|
--*)
|
||||||
__gitcomp "--cached --staged --pickaxe-all --pickaxe-regex
|
__gitcomp "$__git_diff_difftool_options"
|
||||||
--base --ours --theirs --no-index
|
|
||||||
$__git_diff_common_options
|
|
||||||
"
|
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@ -1738,11 +1739,7 @@ _git_difftool ()
|
|||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
--*)
|
--*)
|
||||||
__gitcomp_builtin difftool "$__git_diff_common_options
|
__gitcomp_builtin difftool "$__git_diff_difftool_options"
|
||||||
--base --cached --ours --theirs
|
|
||||||
--pickaxe-all --pickaxe-regex
|
|
||||||
--relative --staged
|
|
||||||
"
|
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
Loading…
Reference in New Issue
Block a user