Re: [PATCH] Open external merge tool with original file extensions for all three files
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:43:56
Pini Reznik [off-list ref] writes:
Before this fix conflicted files were open in external merge tool with temporal extensions like REMOTE.$$ and LOCAL.$$. This way meld was unable to recognize these files and syntax highlighting feature was unusable. Signed-off-by: Pini Reznik <redacted>
I have to wonder if it is fashionable to use overlooooong lines on this list today... Please linewrap commit log message. Ted, you added meld from the beginning to git-mergetool. Does the patch look good?
quoted hunk
--- git-mergetool.sh | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-)diff --git a/git-mergetool.sh b/git-mergetool.sh index 5587c5e..2f31fa2 100755 --- a/git-mergetool.sh +++ b/git-mergetool.sh@@ -152,10 +152,11 @@ merge_file () { exit 1 fi - BACKUP="$path.BACKUP.$$" - LOCAL="$path.LOCAL.$$" - REMOTE="$path.REMOTE.$$" - BASE="$path.BASE.$$" + ext="$$$(expr "$path" : '.*\(\.[^/]*\)$')" + BACKUP="$path.BACKUP.$ext" + LOCAL="$path.LOCAL.$ext" + REMOTE="$path.REMOTE.$ext" + BASE="$path.BASE.$ext"
I realize '.*\(\.[^./]*\)$' might have been better, as the above expression as written will slurp ".b.c" as ext from "foo.b.c", but probably for "merger knows the file type with file extension" purpose, it does not make a difference.