David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 1 | diff_cmd () { |
David Aguilar | b2a6b71 | 2013-01-25 01:43:52 -0800 | [diff] [blame] | 2 | "$merge_tool_path" -R -f -d \ |
| 3 | -c 'wincmd l' -c 'cd $GIT_PREFIX' "$LOCAL" "$REMOTE" |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 4 | } |
| 5 | |
| 6 | merge_cmd () { |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 7 | case "$1" in |
pudinha | 1186897 | 2020-07-29 22:31:13 +0100 | [diff] [blame] | 8 | *vimdiff) |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 9 | if $base_present |
| 10 | then |
Dickson Wong | 2300328 | 2016-01-28 18:18:14 -0800 | [diff] [blame] | 11 | "$merge_tool_path" -f -d -c '4wincmd w | wincmd J' \ |
| 12 | "$LOCAL" "$BASE" "$REMOTE" "$MERGED" |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 13 | else |
| 14 | "$merge_tool_path" -f -d -c 'wincmd l' \ |
| 15 | "$LOCAL" "$MERGED" "$REMOTE" |
| 16 | fi |
| 17 | ;; |
Seth House | 30bb808 | 2021-02-13 19:28:40 -0700 | [diff] [blame] | 18 | *vimdiff1) |
| 19 | "$merge_tool_path" -f -d \ |
| 20 | -c 'echon "Resolve conflicts leftward then save. Use :cq to abort."' \ |
| 21 | "$LOCAL" "$REMOTE" |
| 22 | ret="$?" |
| 23 | if test "$ret" -eq 0 |
| 24 | then |
| 25 | cp -- "$LOCAL" "$MERGED" |
| 26 | fi |
| 27 | return "$ret" |
| 28 | ;; |
pudinha | 1186897 | 2020-07-29 22:31:13 +0100 | [diff] [blame] | 29 | *vimdiff2) |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 30 | "$merge_tool_path" -f -d -c 'wincmd l' \ |
| 31 | "$LOCAL" "$MERGED" "$REMOTE" |
| 32 | ;; |
pudinha | 1186897 | 2020-07-29 22:31:13 +0100 | [diff] [blame] | 33 | *vimdiff3) |
Felipe Contreras | 7c147b7 | 2014-04-20 19:24:20 -0500 | [diff] [blame] | 34 | if $base_present |
| 35 | then |
| 36 | "$merge_tool_path" -f -d -c 'hid | hid | hid' \ |
| 37 | "$LOCAL" "$REMOTE" "$BASE" "$MERGED" |
| 38 | else |
| 39 | "$merge_tool_path" -f -d -c 'hid | hid' \ |
| 40 | "$LOCAL" "$REMOTE" "$MERGED" |
| 41 | fi |
| 42 | ;; |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 43 | esac |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 44 | } |
| 45 | |
| 46 | translate_merge_tool_path() { |
| 47 | case "$1" in |
pudinha | 1186897 | 2020-07-29 22:31:13 +0100 | [diff] [blame] | 48 | nvimdiff*) |
| 49 | echo nvim |
| 50 | ;; |
| 51 | gvimdiff*) |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 52 | echo gvim |
| 53 | ;; |
pudinha | 1186897 | 2020-07-29 22:31:13 +0100 | [diff] [blame] | 54 | vimdiff*) |
David Aguilar | bc7a96a | 2011-08-18 00:23:46 -0700 | [diff] [blame] | 55 | echo vim |
| 56 | ;; |
| 57 | esac |
| 58 | } |
David Aguilar | 2967284 | 2016-11-29 01:38:20 -0800 | [diff] [blame] | 59 | |
| 60 | exit_code_trustable () { |
| 61 | true |
| 62 | } |
pudinha | 83bbf9b | 2020-07-29 22:31:12 +0100 | [diff] [blame] | 63 | |
| 64 | list_tool_variants () { |
pudinha | 1186897 | 2020-07-29 22:31:13 +0100 | [diff] [blame] | 65 | for prefix in '' g n; do |
Seth House | 30bb808 | 2021-02-13 19:28:40 -0700 | [diff] [blame] | 66 | for suffix in '' 1 2 3; do |
pudinha | 83bbf9b | 2020-07-29 22:31:12 +0100 | [diff] [blame] | 67 | echo "${prefix}vimdiff${suffix}" |
| 68 | done |
| 69 | done |
| 70 | } |