Commit 88d3406a authored by David Aguilar's avatar David Aguilar Committed by Junio C Hamano

mergetool--lib: improve show_tool_help() output

Check the can_diff and can_merge functions before deciding whether
to add the tool to the available/unavailable lists.  This makes
"--tool-help" context-sensitive so that "git mergetool --tool-help"
displays merge tools only and "git difftool --tool-help" displays
diff tools only.
Signed-off-by: David Aguilar's avatarDavid Aguilar <davvid@gmail.com>
Signed-off-by: 's avatarJunio C Hamano <gitster@pobox.com>
parent b2a6b712
......@@ -175,17 +175,33 @@ list_merge_tool_candidates () {
}
show_tool_help () {
list_merge_tool_candidates
unavailable= available= LF='
'
for i in $tools
scriptlets="$(git --exec-path)"/mergetools
for i in "$scriptlets"/*
do
merge_tool_path=$(translate_merge_tool_path "$i")
. "$scriptlets"/defaults
. "$i"
tool="$(basename "$i")"
if test "$tool" = "defaults"
then
continue
elif merge_mode && ! can_merge
then
continue
elif diff_mode && ! can_diff
then
continue
fi
merge_tool_path=$(translate_merge_tool_path "$tool")
if type "$merge_tool_path" >/dev/null 2>&1
then
available="$available$i$LF"
available="$available$tool$LF"
else
unavailable="$unavailable$i$LF"
unavailable="$unavailable$tool$LF"
fi
done
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment