Via explorer: put oldest file on the left.

Support for our DiffMerge utility.

Moderator: SourceGear

Post Reply
Robert Webb
Posts: 9
Joined: Sun Jul 06, 2008 7:37 pm
Location: Melbourne, Australia
Contact:

Via explorer: put oldest file on the left.

Post by Robert Webb » Thu Sep 11, 2008 3:30 am

Hi,

When selecting two files in Explorer and doing a diff, the files (I think) are put in random order. Firstly, rather than showing a dialog box at start up where the order can be changed, I'd rather the files just appear in random order with a button to swap if I wish, but no extra dialog box first. Secondly, the best guess for ordering the files would probably be to look at the modification date and put the oldest file on the left. That would probably be right 90% of the time, and all the more reason to avoid having to hit Enter for every diff at startup. I'd even like to see this auto-ordering used when doing a diff in two steps via Explorer, ie add to list, then diff with item from list.

If the program doesn't know whether it was started from random Explorer order, or via a command line where the user probably knows what they want, just add a command line option to auto-order the files, for use when starting from Explorer (and maybe other times).

The auto-ordering would also be handy if you ever support 3-way diff/merge via Explorer. Oldest file is the original.
Rob.

jeffhostetler
Posts: 534
Joined: Tue Jun 05, 2007 11:37 am
Location: SourceGear
Contact:

Re: Via explorer: put oldest file on the left.

Post by jeffhostetler » Thu Sep 11, 2008 10:46 am

You're right, Explorer hands us the files in random order.

We can tell the difference (in the Shell Extension) between the
two ways of starting a diff, but we currently don't make much
use of that. (I thought about having the "Compare File with ..."
also include another menu item or sub-menu for "...on the left"
or "...on the right", but that seemed like overkill and menu clutter.)
So right now, either way we launch DiffMerge with the same command
line arguments. We could change that.

Also, trying to choose an order based upon file mod-times would
be a nice alternative to what we have.

I'll log a feature request to make this better.

Having a swap button to be able to swap the files after they have
been loaded has been requested several times, I'll add your vote.

BTW, there is a command line argument /SHEX that we use in the
Shell Extension to tell DiffMerge that we don't know the order of
the args and force the interlude dialog. It is possible to turn that
off if you want (and don't mind digging in the registry). Let me know
if you're interested and I'll post details.

Thanks for the note,
jeff



13687

Robert Webb
Posts: 9
Joined: Sun Jul 06, 2008 7:37 pm
Location: Melbourne, Australia
Contact:

Re: Via explorer: put oldest file on the left.

Post by Robert Webb » Thu Sep 11, 2008 6:12 pm

I don't mind digging in the registry, so yes please post it. Most of the time I don't care which way around the files are since I can tell which one's which.

If you did the ordering based on mod-time, and had the swap button in the interface, I don't think you would even need that initial dialog available as an option in future versions.

Thanks,
Rob.

jeffhostetler
Posts: 534
Joined: Tue Jun 05, 2007 11:37 am
Location: SourceGear
Contact:

Re: Via explorer: put oldest file on the left.

Post by jeffhostetler » Fri Sep 12, 2008 7:06 am

To disable the interlude dialog when DiffMerge is launched by Explorer,
visit HKCU\Software\SourceGear\SourceGear DiffMerge\ShellExtension
in the registry. (You should see the 2 MRU lists.)

Add a string value called "CLARGS" with value "/nosplash". (If the CLARGS
value is not present in the registry we default to "/nosplash /shex".)
(This value should be a peer of the MRU values.)

Let me know if you have any questions or problems.
jeff

Robert Webb
Posts: 9
Joined: Sun Jul 06, 2008 7:37 pm
Location: Melbourne, Australia
Contact:

Re: Via explorer: put oldest file on the left.

Post by Robert Webb » Fri Sep 12, 2008 7:50 am

Awesome, problem solved.

Thanks,
Rob.

Beth
Posts: 8550
Joined: Wed Jun 21, 2006 8:24 pm
Location: SourceGear
Contact:

Re: Via explorer: put oldest file on the left.

Post by Beth » Tue Sep 16, 2008 1:55 pm

Thanks for the update. Feel free to let us know if you have any questions or problems.
Beth Kieler
SourceGear Technical Support

jeffhostetler
Posts: 534
Joined: Tue Jun 05, 2007 11:37 am
Location: SourceGear
Contact:

Re: Via explorer: put oldest file on the left.

Post by jeffhostetler » Thu Apr 09, 2009 9:43 am

SourceGear Diffmerge 3.3.0 is now available.

Lots of enhancements were made to the Explorer Integration feature. When Explorer
gives us 2 files, we have 2 context menu items to let you pick the ordering; when we
get 1 file and you pick one from the remembered list, we now put the older one on the left.

Full details can be found at http://www.sourcegear.com/diffmerge/index.html.

jeff hostetler

Post Reply