Merge branch 'jn/mergetools-examdiff'
"git mergetools" learned to drive ExamDiff. * jn/mergetools-examdiff: mergetools: add support for ExamDiff mergetools: create mergetool_find_win32_cmd() helper function for winmergemaint
commit
34e859d372
|
@ -372,3 +372,28 @@ get_merge_tool () {
|
|||
fi
|
||||
echo "$merge_tool"
|
||||
}
|
||||
|
||||
mergetool_find_win32_cmd () {
|
||||
executable=$1
|
||||
sub_directory=$2
|
||||
|
||||
# Use $executable if it exists in $PATH
|
||||
if type -p "$executable" >/dev/null 2>&1
|
||||
then
|
||||
printf '%s' "$executable"
|
||||
return
|
||||
fi
|
||||
|
||||
# Look for executable in the typical locations
|
||||
for directory in $(env | grep -Ei '^PROGRAM(FILES(\(X86\))?|W6432)=' |
|
||||
cut -d '=' -f 2- | sort -u)
|
||||
do
|
||||
if test -n "$directory" && test -x "$directory/$sub_directory/$executable"
|
||||
then
|
||||
printf '%s' "$directory/$sub_directory/$executable"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
printf '%s' "$executable"
|
||||
}
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
diff_cmd () {
|
||||
"$merge_tool_path" "$LOCAL" "$REMOTE" -nh
|
||||
}
|
||||
|
||||
merge_cmd () {
|
||||
touch "$BACKUP"
|
||||
if $base_present
|
||||
then
|
||||
"$merge_tool_path" -merge "$LOCAL" "$BASE" "$REMOTE" -o:"$MERGED" -nh
|
||||
else
|
||||
"$merge_tool_path" -merge "$LOCAL" "$REMOTE" -o:"$MERGED" -nh
|
||||
fi
|
||||
check_unchanged
|
||||
}
|
||||
|
||||
translate_merge_tool_path() {
|
||||
mergetool_find_win32_cmd "ExamDiff.com" "ExamDiff Pro"
|
||||
}
|
|
@ -13,24 +13,5 @@ merge_cmd () {
|
|||
}
|
||||
|
||||
translate_merge_tool_path() {
|
||||
# Use WinMergeU.exe if it exists in $PATH
|
||||
if type -p WinMergeU.exe >/dev/null 2>&1
|
||||
then
|
||||
printf WinMergeU.exe
|
||||
return
|
||||
fi
|
||||
|
||||
# Look for WinMergeU.exe in the typical locations
|
||||
winmerge_exe="WinMerge/WinMergeU.exe"
|
||||
for directory in $(env | grep -Ei '^PROGRAM(FILES(\(X86\))?|W6432)=' |
|
||||
cut -d '=' -f 2- | sort -u)
|
||||
do
|
||||
if test -n "$directory" && test -x "$directory/$winmerge_exe"
|
||||
then
|
||||
printf '%s' "$directory/$winmerge_exe"
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
printf WinMergeU.exe
|
||||
mergetool_find_win32_cmd "WinMergeU.exe" "WinMerge"
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue