summaryrefslogtreecommitdiff
path: root/mergetools
diff options
context:
space:
mode:
Diffstat (limited to 'mergetools')
-rw-r--r--mergetools/diffmerge1
-rw-r--r--mergetools/emerge1
-rw-r--r--mergetools/examdiff18
-rw-r--r--mergetools/kdiff31
-rw-r--r--mergetools/vimdiff4
-rw-r--r--mergetools/winmerge17
6 files changed, 37 insertions, 5 deletions
diff --git a/mergetools/diffmerge b/mergetools/diffmerge
index 85ac720157..f138cb4e73 100644
--- a/mergetools/diffmerge
+++ b/mergetools/diffmerge
@@ -11,5 +11,4 @@ merge_cmd () {
"$merge_tool_path" --merge \
--result="$MERGED" "$LOCAL" "$REMOTE"
fi
- status=$?
}
diff --git a/mergetools/emerge b/mergetools/emerge
index f96d9e550a..7b895fdb1f 100644
--- a/mergetools/emerge
+++ b/mergetools/emerge
@@ -15,7 +15,6 @@ merge_cmd () {
"$LOCAL" "$REMOTE" \
"$(basename "$MERGED")"
fi
- status=$?
}
translate_merge_tool_path() {
diff --git a/mergetools/examdiff b/mergetools/examdiff
new file mode 100644
index 0000000000..7b524d4088
--- /dev/null
+++ b/mergetools/examdiff
@@ -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"
+}
diff --git a/mergetools/kdiff3 b/mergetools/kdiff3
index a30034f116..793d1293b1 100644
--- a/mergetools/kdiff3
+++ b/mergetools/kdiff3
@@ -20,5 +20,4 @@ merge_cmd () {
-o "$MERGED" "$LOCAL" "$REMOTE" \
>/dev/null 2>&1
fi
- status=$?
}
diff --git a/mergetools/vimdiff b/mergetools/vimdiff
index 1ddfbfcd78..74ea6d5479 100644
--- a/mergetools/vimdiff
+++ b/mergetools/vimdiff
@@ -9,8 +9,8 @@ merge_cmd () {
gvimdiff|vimdiff)
if $base_present
then
- "$merge_tool_path" -f -d -c 'wincmd J' \
- "$MERGED" "$LOCAL" "$BASE" "$REMOTE"
+ "$merge_tool_path" -f -d -c '4wincmd w | wincmd J' \
+ "$LOCAL" "$BASE" "$REMOTE" "$MERGED"
else
"$merge_tool_path" -f -d -c 'wincmd l' \
"$LOCAL" "$MERGED" "$REMOTE"
diff --git a/mergetools/winmerge b/mergetools/winmerge
new file mode 100644
index 0000000000..f3819d316a
--- /dev/null
+++ b/mergetools/winmerge
@@ -0,0 +1,17 @@
+diff_cmd () {
+ "$merge_tool_path" -u -e "$LOCAL" "$REMOTE"
+ return 0
+}
+
+merge_cmd () {
+ # mergetool.winmerge.trustExitCode is implicitly false.
+ # touch $BACKUP so that we can check_unchanged.
+ touch "$BACKUP"
+ "$merge_tool_path" -u -e -dl Local -dr Remote \
+ "$LOCAL" "$REMOTE" "$MERGED"
+ check_unchanged
+}
+
+translate_merge_tool_path() {
+ mergetool_find_win32_cmd "WinMergeU.exe" "WinMerge"
+}