mergetools: simplify how we handle "vim" and "defaults"
Remove the exceptions for "vim" and "defaults" in the mergetool library so that every filename in mergetools/ matches 1:1 with the name of a valid built-in tool. Define the trivial fallback definition of shell functions in-line in git-mergetool-lib script, instead of dot-sourcing them from another file. The result is much easier to follow. [jc: squashed in an update from John Keeping as well] Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
62957bea0c
commit
073678b8e6
36
mergetools/vimdiff
Normal file
36
mergetools/vimdiff
Normal file
@ -0,0 +1,36 @@
|
||||
diff_cmd () {
|
||||
"$merge_tool_path" -R -f -d \
|
||||
-c 'wincmd l' -c 'cd $GIT_PREFIX' "$LOCAL" "$REMOTE"
|
||||
}
|
||||
|
||||
merge_cmd () {
|
||||
touch "$BACKUP"
|
||||
case "$1" in
|
||||
gvimdiff|vimdiff)
|
||||
if $base_present
|
||||
then
|
||||
"$merge_tool_path" -f -d -c 'wincmd J' \
|
||||
"$MERGED" "$LOCAL" "$BASE" "$REMOTE"
|
||||
else
|
||||
"$merge_tool_path" -f -d -c 'wincmd l' \
|
||||
"$LOCAL" "$MERGED" "$REMOTE"
|
||||
fi
|
||||
;;
|
||||
gvimdiff2|vimdiff2)
|
||||
"$merge_tool_path" -f -d -c 'wincmd l' \
|
||||
"$LOCAL" "$MERGED" "$REMOTE"
|
||||
;;
|
||||
esac
|
||||
check_unchanged
|
||||
}
|
||||
|
||||
translate_merge_tool_path() {
|
||||
case "$1" in
|
||||
gvimdiff|gvimdiff2)
|
||||
echo gvim
|
||||
;;
|
||||
vimdiff|vimdiff2)
|
||||
echo vim
|
||||
;;
|
||||
esac
|
||||
}
|
||||
Reference in New Issue
Block a user