darcs

Issue 1372 "--external-merge" should have ability to store multiple configurations (ala git-mergetool)

Title "--external-merge" should have ability to store multiple configurations (ala git-mergetool)
Priority wishlist Status wont-fix
Milestone Resolved in
Superseder Nosy List SamB, darcs-devel, dmitry.kurochkin, jaredj, kowey, thorkilnaur, twb
Assigned To
Topics Git, ProbablyEasy, UI

Created on 2009-02-27.23:48:10 by SamB, last changed 2009-08-27.14:30:34 by admin.

Messages
msg7361 (view) Author: SamB Date: 2009-02-27.23:48:03
You could probably learn a lot from git-mergetool:

manpage: http://www.kernel.org/pub/software/scm/git/docs/git-mergetool.html

code: http://github.com/git/git/blob/master/git-mergetool.sh
msg7523 (view) Author: twb Date: 2009-03-28.11:10:05
On Fri, Feb 27, 2009 at 12:48:03PM +0000, Samuel Bronson wrote:
> You could probably learn a lot from git-mergetool:
> manpage: http://www.kernel.org/pub/software/scm/git/docs/git-mergetool.html
> code: http://github.com/git/git/blob/master/git-mergetool.sh

IMO that would be a third-party wrapper, separate from the Darcs
binary itself.  If you like, you can provide a patch adding such a
wrapper to the tools/ subdir.  There are already examples in the user
manual giving example invocations for some tools.
msg7550 (view) Author: SamB Date: 2009-03-29.02:22:42
On Sat, Mar 28, 2009 at 7:10 AM, Trent Buck <bugs@darcs.net> wrote:
> IMO that would be a third-party wrapper, separate from the Darcs
> binary itself.  If you like, you can provide a patch adding such a
> wrapper to the tools/ subdir.  There are already examples in the user
> manual giving example invocations for some tools.

Well, okay, but you can still only store one of those commands in the
configuration file at a time, and I'm not going to buy that people are
actually expected to type those long messy flags in during normal
usage ...
msg7551 (view) Author: twb Date: 2009-03-29.03:08:33
On Sun, Mar 29, 2009 at 02:22:44AM -0000, Samuel Bronson wrote:
> 
> Samuel Bronson <naesten@gmail.com> added the comment:
> 
> On Sat, Mar 28, 2009 at 7:10 AM, Trent Buck <bugs@darcs.net> wrote:
> > IMO that would be a third-party wrapper, separate from the Darcs
> > binary itself.  If you like, you can provide a patch adding such a
> > wrapper to the tools/ subdir.  There are already examples in the user
> > manual giving example invocations for some tools.
> 
> Well, okay, but you can still only store one of those commands in the
> configuration file at a time, and I'm not going to buy that people are
> actually expected to type those long messy flags in during normal
> usage ...

Are you saying that you want to be able to regularly use more than one
merge tool, and switch between them using some kind of dedicated
command-line option?  I don't understand why -- surely you find a
merge tool you like, and then you stick with it?
msg7552 (view) Author: SamB Date: 2009-03-29.03:15:56
On Sat, Mar 28, 2009 at 11:08 PM, Trent Buck <bugs@darcs.net> wrote:

> Are you saying that you want to be able to regularly use more than one
> merge tool, and switch between them using some kind of dedicated
> command-line option?  I don't understand why -- surely you find a
> merge tool you like, and then you stick with it?

What if my preferred tool uses X, but sometimes I'm SSHing in with, oh, PuTTY?
msg7558 (view) Author: twb Date: 2009-03-29.08:15:58
On Sun, Mar 29, 2009 at 03:15:59AM -0000, Samuel Bronson wrote:
> On Sat, Mar 28, 2009 at 11:08 PM, Trent Buck <bugs@darcs.net> wrote:
> 
>> Are you saying that you want to be able to regularly use more than one
>> merge tool, and switch between them using some kind of dedicated
>> command-line option?  I don't understand why -- surely you find a
>> merge tool you like, and then you stick with it?
> 
> What if my preferred tool uses X, but sometimes I'm SSHing in with, oh, PuTTY?

The wrapper would obviously be smart enough to detect that.  I have
such wrappers for $BROWSER and $EDITOR, and I see no reason it could
not apply equally well to a wrapper to select the appropriate merge
tool.

http://twb.ath.cx/Preferences/.bin/twb-browser
http://twb.ath.cx/Preferences/.bin/twb-editor
http://twb.ath.cx/Preferences/.bin/twb-emacsclient
msg8395 (view) Author: kowey Date: 2009-08-23.12:09:40
While I agree that having to pass in complex command line arguments to
--external-merge is a problem, I think we should avoid making darcs more complex
to deal with this case.

For what it's worth, on my Mac, I have
  alias darcs-gdiff='darcs diff --diff-command '\''opendiff %1 %2'\'
and on Linux
  alias darcs-gdiff='darcs diff --diff-command='\''meld %1 %2'\'''

Note also that I would not particularly mind seeing a single distinguished merge
tool and diff command to which darcs will automatically pass in the right arguments.

In other words that if you do "darcs apply --external-merge='git-mergetool
--tool=opendiff --foo'", it is equivalent to "darcs apply
--external-merge="'git-mergetool --tool=opendiff --foo %1 %2 %a %b'"

Basically, if you can find a way to keep darcs simple while achieving the
objective of making external merge easier to use, then great!
History
Date User Action Args
2009-02-27 23:48:10SamBcreate
2009-03-28 11:10:08twbsetstatus: unread -> unknown
nosy: + twb
messages: + msg7523
2009-03-28 11:10:29twbsetpriority: feature -> wishlist
nosy: kowey, SamB, simon, twb, thorkilnaur, jaredj, dmitry.kurochkin
2009-03-29 02:22:44SamBsetnosy: kowey, SamB, simon, twb, thorkilnaur, jaredj, dmitry.kurochkin
messages: + msg7550
2009-03-29 03:08:38twbsetnosy: kowey, SamB, simon, twb, thorkilnaur, jaredj, dmitry.kurochkin
messages: + msg7551
2009-03-29 03:15:59SamBsetnosy: kowey, SamB, simon, twb, thorkilnaur, jaredj, dmitry.kurochkin
messages: + msg7552
2009-03-29 08:16:02twbsetnosy: kowey, SamB, simon, twb, thorkilnaur, jaredj, dmitry.kurochkin
messages: + msg7558
2009-08-23 01:16:37koweysettopic: + Git
nosy: kowey, SamB, simon, twb, thorkilnaur, jaredj, dmitry.kurochkin
2009-08-23 12:09:49koweysetstatus: unknown -> wont-fix
nosy: kowey, SamB, simon, twb, thorkilnaur, jaredj, dmitry.kurochkin
messages: + msg8395
2009-08-25 17:41:22adminsetnosy: + darcs-devel, - simon
2009-08-27 14:30:34adminsetnosy: kowey, darcs-devel, SamB, twb, thorkilnaur, jaredj, dmitry.kurochkin