From: David Aguilar Date: Mon, 28 Jan 2013 00:52:23 +0000 (-0800) Subject: mergetool--lib: simplify command expressions X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=80ff2b68f28193af70d4c0bb9d363531eb1c3d23;p=git.git mergetool--lib: simplify command expressions Update variable assignments to always use $(command "$arg") in their RHS instead of "$(command "$arg")" as the latter is harder to read. Make get_merge_tool_cmd() simpler by avoiding "echo" and $(command) substitutions completely. Signed-off-by: David Aguilar Signed-off-by: Junio C Hamano --- diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh index 211ffe5d3..2a6738308 100644 --- a/git-mergetool--lib.sh +++ b/git-mergetool--lib.sh @@ -32,17 +32,10 @@ check_unchanged () { fi } -valid_tool_config () { - if test -n "$(get_merge_tool_cmd "$1")" - then - return 0 - else - return 1 - fi -} - valid_tool () { - setup_tool "$1" || valid_tool_config "$1" + setup_tool "$1" && return 0 + cmd=$(get_merge_tool_cmd "$1") + test -n "$cmd" } setup_tool () { @@ -96,14 +89,13 @@ setup_tool () { } get_merge_tool_cmd () { - # Prints the custom command for a merge tool merge_tool="$1" if diff_mode then - echo "$(git config difftool.$merge_tool.cmd || - git config mergetool.$merge_tool.cmd)" + git config "difftool.$merge_tool.cmd" || + git config "mergetool.$merge_tool.cmd" else - echo "$(git config mergetool.$merge_tool.cmd)" + git config "mergetool.$merge_tool.cmd" fi } @@ -114,7 +106,7 @@ run_merge_tool () { GIT_PREFIX=${GIT_PREFIX:-.} export GIT_PREFIX - merge_tool_path="$(get_merge_tool_path "$1")" || exit + merge_tool_path=$(get_merge_tool_path "$1") || exit base_present="$2" status=0 @@ -145,7 +137,7 @@ run_merge_tool () { # Run a either a configured or built-in diff tool run_diff_cmd () { - merge_tool_cmd="$(get_merge_tool_cmd "$1")" + merge_tool_cmd=$(get_merge_tool_cmd "$1") if test -n "$merge_tool_cmd" then ( eval $merge_tool_cmd ) @@ -158,11 +150,11 @@ run_diff_cmd () { # Run a either a configured or built-in merge tool run_merge_cmd () { - merge_tool_cmd="$(get_merge_tool_cmd "$1")" + merge_tool_cmd=$(get_merge_tool_cmd "$1") if test -n "$merge_tool_cmd" then - trust_exit_code="$(git config --bool \ - mergetool."$1".trustExitCode || echo false)" + trust_exit_code=$(git config --bool \ + "mergetool.$1.trustExitCode" || echo false) if test "$trust_exit_code" = "false" then touch "$BACKUP" @@ -253,7 +245,7 @@ guess_merge_tool () { # Loop over each candidate and stop when a valid merge tool is found. for i in $tools do - merge_tool_path="$(translate_merge_tool_path "$i")" + merge_tool_path=$(translate_merge_tool_path "$i") if type "$merge_tool_path" >/dev/null 2>&1 then echo "$i" @@ -300,7 +292,7 @@ get_merge_tool_path () { fi if test -z "$merge_tool_path" then - merge_tool_path="$(translate_merge_tool_path "$merge_tool")" + merge_tool_path=$(translate_merge_tool_path "$merge_tool") fi if test -z "$(get_merge_tool_cmd "$merge_tool")" && ! type "$merge_tool_path" >/dev/null 2>&1 @@ -314,11 +306,11 @@ get_merge_tool_path () { get_merge_tool () { # Check if a merge tool has been configured - merge_tool="$(get_configured_merge_tool)" + merge_tool=$(get_configured_merge_tool) # Try to guess an appropriate merge tool if no tool has been set. if test -z "$merge_tool" then - merge_tool="$(guess_merge_tool)" || exit + merge_tool=$(guess_merge_tool) || exit fi echo "$merge_tool" }