{"thread":{"id":"39308","subject":"[PATCH] mergetools: add winmerge as a builtin tool","startedAt":"2015-05-12T09:29:37Z","lastAt":"2015-05-12T15:03:51Z","messageCount":2,"participants":["David Aguilar","Johannes Schindelin"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"261045","messageId":"1431422977-61243-1-git-send-email-davvid@gmail.com","threadId":"39308","inReplyTo":null,"subject":"[PATCH] mergetools: add winmerge as a builtin tool","fromName":"David Aguilar","fromEmail":"davvid@gmail.com","sentAt":"2015-05-12T09:29:37Z","receivedAt":"2015-05-12T09:29:37Z","isPatch":true,"sender":{"key":"davvid@gmail.com","avatar":"https://avatars.githubusercontent.com/u/13196?v=4"},"body":"Add a winmerge scriptlet with the commands described in [1] so\nthat users can use winmerge without needing to perform any\nadditional configuration.\n\n[1] http://thread.gmane.org/gmane.comp.version-control.git/268631\n\nHelped-by: Philip Oakley <philipoakley@iee.org>\nSigned-off-by: David Aguilar <davvid@gmail.com>\n---\n\nPhil and Philip, can either of you test this patch in your environment\nso that we can add a Tested-by footer above?\n\n mergetools/winmerge | 37 +++++++++++++++++++++++++++++++++++++\n 1 file changed, 37 insertions(+)\n create mode 100644 mergetools/winmerge\n\ndiff --git a/mergetools/winmerge b/mergetools/winmerge\nnew file mode 100644\nindex 0000000..c3d13b1\n--- /dev/null\n+++ b/mergetools/winmerge\n@@ -0,0 +1,37 @@\n+diff_cmd () {\n+\t\"$merge_tool_path\" -u -e \"$LOCAL\" \"$REMOTE\"\n+\treturn 0\n+}\n+\n+merge_cmd () {\n+\t# mergetool.winmerge.trustExitCode is implicitly false.\n+\t# touch $BACKUP so that we can check_unchanged.\n+\ttouch \"$BACKUP\"\n+\t\"$merge_tool_path\" -u -e -dl Local -dr Remote \\\n+\t\t\"$LOCAL\" \"$REMOTE\" \"$MERGED\"\n+\tcheck_unchanged\n+}\n+\n+translate_merge_tool_path() {\n+\t# Use WinMergeU.exe if it exists in $PATH\n+\tif type WinMergeU.exe >/dev/null 2>&1\n+\tthen\n+\t\techo WinMergeU.exe\n+\t\treturn\n+\tfi\n+\n+\t# Look for WinMergeU.exe in the typical locations\n+\twinmerge_exe=\"WinMerge/WinMergeU.exe\"\n+\tif test -n \"$PROGRAMFILES\" && test -x \"$PROGRAMFILES/$winmerge_exe\"\n+\tthen\n+\t\tprintf '%s' \"$PROGRAMFILES/$winmerge_exe\"\n+\telif test -x \"/c/Program Files (x86)/$winmerge_exe\"\n+\tthen\n+\t\tprintf '%s' \"/c/Program Files (x86)/$winmerge_exe\"\n+\telif test -x \"/c/Program Files/$winmerge_exe\"\n+\tthen\n+\t\tprintf '%s' \"/c/Program Files/$winmerge_exe\"\n+\telse\n+\t\techo WinMergeU.exe\n+\tfi\n+}\n-- \n2.4.0.194.gc518059\n"},{"id":"261050","messageId":"f44bed1d712b4be11ee143cc33ef0bb1@www.dscho.org","threadId":"39308","inReplyTo":"1431422977-61243-1-git-send-email-davvid@gmail.com","subject":"Re: [PATCH] mergetools: add winmerge as a builtin tool","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2015-05-12T15:03:51Z","receivedAt":"2015-05-12T15:03:51Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi David,\n\nOn 2015-05-12 11:29, David Aguilar wrote:\n\n> +\t# Look for WinMergeU.exe in the typical locations\n> +\twinmerge_exe=\"WinMerge/WinMergeU.exe\"\n> +\tif test -n \"$PROGRAMFILES\" && test -x \"$PROGRAMFILES/$winmerge_exe\"\n> +\tthen\n> +\t\tprintf '%s' \"$PROGRAMFILES/$winmerge_exe\"\n> +\telif test -x \"/c/Program Files (x86)/$winmerge_exe\"\n\nAt this stage you probably want to look for \"$ProgramW6432\" first.\n\n> +\tthen\n> +\t\tprintf '%s' \"/c/Program Files (x86)/$winmerge_exe\"\n> +\telif test -x \"/c/Program Files/$winmerge_exe\"\n> +\tthen\n> +\t\tprintf '%s' \"/c/Program Files/$winmerge_exe\"\n> +\telse\n> +\t\techo WinMergeU.exe\n> +\tfi\n> +}\n\nCiao,\nJohannes\n"}]}