On Tue, Mar 25, 2025 at 6:24 PM Fernando Ramos <greenfoo@xxxxxx> wrote: > > "mergetool.vimdiff.layout" is used to define the vim layout (ie. how > windows, tabs and buffers are physically organized) when resolving > conflicts. > > For example, if we set it to this: > > "(LOCAL,BASE,REMOTE)/MERGED" > > ...vim will open and show this layout: > > ------------------------------------------ > | | | | > | LOCAL | BASE | REMOTE | > | | | | > ------------------------------------------ > | | > | MERGED | > | | > ------------------------------------------ > > By default, whatever ends up been written to the "MERGED" window will > become the file which conflict we are resolving. > > However, it is possible to use the "@" symbol to specify a different > one. For example, if we use this slightly different version of the > previously used string: > > "(LOCAL,BASE,@REMOTE)/MERGED" > > ...then the user should proceed to edit the contents of the top right > window (instead of the bottom window) as *that* is what will become the > conflicts free file once vim is closed. > > Before this commit, the "@" marker worked for all targets *except* for > "REMOTE". In other words, these worked as expected: > > "(@LOCAL,BASE,REMOTE)/MERGED" > "(LOCAL,@BASE,REMOTE)/MERGED" > "(LOCAL,BASE,REMOTE)/@MERGED" > > ...but this didn't: > > "(LOCAL,BASE,@REMOTE)/MERGED" > > This commit fixes that. > > Reported-by: kawarimidoll <kawarimidoll+git@xxxxxxxxx> > Suggested-by: D. Ben Knoble <ben.knoble@xxxxxxxxx> > Signed-off-by: Fernando Ramos <greenfoo@xxxxxx> > --- > mergetools/vimdiff | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/mergetools/vimdiff b/mergetools/vimdiff > index ffc9be86c8..0e3785d230 100644 > --- a/mergetools/vimdiff > +++ b/mergetools/vimdiff > @@ -305,6 +305,9 @@ gen_cmd () { > elif echo "$LAYOUT" | grep @BASE >/dev/null > then > FINAL_TARGET="BASE" > + elif echo "$LAYOUT" | grep @REMOTE >/dev/null > + then > + FINAL_TARGET="REMOTE" > else > FINAL_TARGET="MERGED" > fi > -- > 2.49.0 > This looks pretty obviously correct to me, thanks!