How would you change FileMerge?

  • I'm thinking about some ideas for merge tool of my own and I thought
    I'd take an informal survey of the Mac OS X people here.

    What do you think of FileMerge/opendiff?

    Is it perfect? Is there anything that you would like to do with it
    that you can't? Is there information that is hard to visualize using
    FileMerge? Are there ways that editing the result file could be made
    any easier?

    Some things I can think of:

    - No Undo/Redo.
    - Can't see the ancestor file.
    - Can't diff the ancestor against left/right.
    - Can't see the colored "tics" in the scrollbar when the thumb covers them.
    - No horizontal scrollbar
    - Doesn't keep track of if I have made a choice about a conflict.

    Have you ever noticed these things? Do you think they are important?
    Are there things you could add to this list?

    What do you find confusing about FileMerge?

    Michael
  • Michael,

    I'd say that all of the things you mentioned would improve FileMerge.

    Another really good UI idea that could be pretty easy to add in Cocoa,
    is the ability to zoom the views, and to have a separate "landmark" view
    that shows the entire file at 1 pixel per line, and lets you control the
    scrolling that way.

    According to a recent talk I heard about Usability Engineering in the
    context of parallel programming tools, programmers are surprisingly good
    at understanding the structure of their code from the indentation and
    block structure - just shape - and I think it'd be pretty cool to have
    that in FileMerge* to help scan through code...

    best of luck,
    mike

    * - And Project Builder too... Time for a PBXPlugin hack?

    -mike

    On Tuesday, June 25, 2002, at 05:53  PM, Michael Bishop wrote:

    >
    > I'm thinking about some ideas for merge tool of my own and I thought
    > I'd take an informal survey of the Mac OS X people here.
    >
    > What do you think of FileMerge/opendiff?
    >
    > Is it perfect? Is there anything that you would like to do with it that
    > you can't? Is there information that is hard to visualize using
    > FileMerge? Are there ways that editing the result file could be made
    > any easier?
    >
    > Some things I can think of:
    >
    > - No Undo/Redo.
    > - Can't see the ancestor file.
    > - Can't diff the ancestor against left/right.
    > - Can't see the colored "tics" in the scrollbar when the thumb covers
    > them.
    > - No horizontal scrollbar
    > - Doesn't keep track of if I have made a choice about a conflict.
    >
    > Have you ever noticed these things? Do you think they are important?
    > Are there things you could add to this list?
    >
    > What do you find confusing about FileMerge?
    >
    > Michael
    > _______________________________________________
    > MacOSX-dev mailing list
    > <MacOSX-dev...>
    > http://www.omnigroup.com/mailman/listinfo/macosx-dev
    >
    --
    Michael McCracken
    <michael_mccracken...>
    http://radio.weblogs.com/0101358
  • Michael,

    I'd add tolerance of line endings with the ability to match/change them if
    desired. Little gremlins change your line endings on you sometimes and it's
    an inconvenience when they do.

    Brock Brandenberg

    ----- industrial design @ www.bergdesign.com ------
  • If you have a convenient way (fink, perhaps), take a look at tkcvs. Yes,
    I know that it goes beyond just file merge into revision control, but
    that's most of what I used diff-like tools for anyway.

    tkcvs has some very powerful features such as the ability to click on
    any revision for either side and instantly see the diffs.

    -gm

    On Tuesday, June 25, 2002, at 09:44  PM, Brock Brandenberg wrote:

    > Michael,
    >
    > I'd add tolerance of line endings with the ability to match/change them
    > if
    > desired. Little gremlins change your line endings on you sometimes and
    > it's
    > an inconvenience when they do.
    >
    > Brock Brandenberg
    >
    > ----- industrial design @ www.bergdesign.com ------
    >
    >
    > _______________________________________________
    > MacOSX-dev mailing list
    > <MacOSX-dev...>
    > http://www.omnigroup.com/mailman/listinfo/macosx-dev
  • - Add support for ignoring differences that are only RCS keywords.
    - Add a configurable list of keywords since VSS has a larger set of
    keywords that cvs
    - Remember the size of the merge window across merges
    - Add a 'next file' hot key that replaces the contents of the current
    window with the next diff set
    - Add threaded pre-caching of diff sets so that the 'next file' hot key
    is instantaneous
    - Add support for loading a file and a patch file and seeing the
    differences
    - Add support for generating patch files

      In my case a spend a lot of time running FileMerge on a large source
    bases and wanting to quickly go through the whole set, ideally w/o
    switching between the mouse and keyboard a lot.

    -tim

    On Tuesday, June 25, 2002, at 05:53  PM, Michael Bishop wrote:

    >
    > I'm thinking about some ideas for merge tool of my own and I thought
    > I'd take an informal survey of the Mac OS X people here.
    >
    > What do you think of FileMerge/opendiff?
    >
    > Is it perfect? Is there anything that you would like to do with it that
    > you can't? Is there information that is hard to visualize using
    > FileMerge? Are there ways that editing the result file could be made
    > any easier?
    >
    > Some things I can think of:
    >
    > - No Undo/Redo.
    > - Can't see the ancestor file.
    > - Can't diff the ancestor against left/right.
    > - Can't see the colored "tics" in the scrollbar when the thumb covers
    > them.
    > - No horizontal scrollbar
    > - Doesn't keep track of if I have made a choice about a conflict.
    >
    > Have you ever noticed these things? Do you think they are important?
    > Are there things you could add to this list?
    >
    > What do you find confusing about FileMerge?
    >
    > Michael
    > _______________________________________________
    > MacOSX-dev mailing list
    > <MacOSX-dev...>
    > http://www.omnigroup.com/mailman/listinfo/macosx-dev
  • the ability to change the "differences" from blue to something else, eg.
    bold, underline, another color, another font; for printing out sections
    for review.
    -rick

    On Wednesday, June 26, 2002, at 12:26 PM, Timothy J. Wood wrote:

    >
    >
    > - Add support for ignoring differences that are only RCS keywords.
    > - Add a configurable list of keywords since VSS has a larger set
    > of keywords that cvs
    > - Remember the size of the merge window across merges
    > - Add a 'next file' hot key that replaces the contents of the current
    > window with the next diff set
    > - Add threaded pre-caching of diff sets so that the 'next file' hot key
    > is instantaneous
    > - Add support for loading a file and a patch file and seeing the
    > differences
    > - Add support for generating patch files
    >
    > In my case a spend a lot of time running FileMerge on a large source
    > bases and wanting to quickly go through the whole set, ideally w/o
    > switching between the mouse and keyboard a lot.
    >
    > -tim
    >
    >
    >
    > On Tuesday, June 25, 2002, at 05:53  PM, Michael Bishop wrote:
    >
    >>
    >> I'm thinking about some ideas for merge tool of my own and I thought
    >> I'd take an informal survey of the Mac OS X people here.
    >>
    >> What do you think of FileMerge/opendiff?
    >>
    >> Is it perfect? Is there anything that you would like to do with it
    >> that you can't? Is there information that is hard to visualize using
    >> FileMerge? Are there ways that editing the result file could be made
    >> any easier?
    >>
    >> Some things I can think of:
    >>
    >> - No Undo/Redo.
    >> - Can't see the ancestor file.
    >> - Can't diff the ancestor against left/right.
    >> - Can't see the colored "tics" in the scrollbar when the thumb covers
    >> them.
    >> - No horizontal scrollbar
    >> - Doesn't keep track of if I have made a choice about a conflict.
    >>
    >> Have you ever noticed these things? Do you think they are important?
    >> Are there things you could add to this list?
    >>
    >> What do you find confusing about FileMerge?
    >>
    >> Michael
    >> _______________________________________________
    >> MacOSX-dev mailing list
    >> <MacOSX-dev...>
    >> http://www.omnigroup.com/mailman/listinfo/macosx-dev
    >
    > _______________________________________________
    > MacOSX-dev mailing list
    > <MacOSX-dev...>
    > http://www.omnigroup.com/mailman/listinfo/macosx-dev
    >
  • Oh, FileMerge drives me CRAZY!  There are so many things I'd
    like to change!

    * 99% of the time, I want to apply my changes to one of the
    original files.  I hate having to specify new destinations.
    Just let me save over my original, either the left or the
    right -- maybe have little "lock" icons to specify whether you
    can overwrite a file directly....

    * Make the text editable.  Often, when I'm choosing between the
    left and the right, I want a to make a little tweak to the one
    I'm going to keep

    * Lots of tolerance options for white space, for instance so one
    block of code that is indented differently than the other will
    compare as the same.

    * Scroll to the first difference so I don't have to hunt for
    little tiny lines in the scrollbar.

    * Horizontal scrollbars for each side, so I can see the whole
    file if the line is wide.

    * How about a 128x128 icon for the app?

    Dan

    On Tuesday, June 25, 2002, at 05:53 PM, Michael Bishop wrote:

    >
    > I'm thinking about some ideas for merge tool of my own and I
    > thought I'd take an informal survey of the Mac OS X people here.
    >
    > What do you think of FileMerge/opendiff?
    >
    > Is it perfect? Is there anything that you would like to do with
    > it that you can't? Is there information that is hard to
    > visualize using FileMerge? Are there ways that editing the
    > result file could be made any easier?
    >
    > Some things I can think of:
    >
    > - No Undo/Redo.
    > - Can't see the ancestor file.
    > - Can't diff the ancestor against left/right.
    > - Can't see the colored "tics" in the scrollbar when the thumb
    > covers them.
    > - No horizontal scrollbar
    > - Doesn't keep track of if I have made a choice about a conflict.
    >
    > Have you ever noticed these things? Do you think they are
    > important? Are there things you could add to this list?
    >
    > What do you find confusing about FileMerge?
    >
    > Michael
    > _______________________________________________
    > MacOSX-dev mailing list
    > <MacOSX-dev...>
    > http://www.omnigroup.com/mailman/listinfo/macosx-dev
    >
    >

    --
    Dan Wood
    Karelia Software, LLC
    <dwood...>
    http://www.karelia.com/
    Watson for Mac OS X: http://www.karelia.com/watson/
  • At 10:53 AM -0700 6/26/02, Dan Wood wrote:
    > * Scroll to the first difference so I don't have to hunt for little
    > tiny lines in the scrollbar.
    >

    Down-arrow jumps to the next difference.

    --Andy
  • This is already there.

    look at the bottom of the window there is a separator,
    pull it up and edit your hearts desire.

    Thanks,
    Andrew Pinski

    On Wednesday, June 26, 2002, at 01:53 , Dan Wood wrote:

    >
    > * Make the text editable.  Often, when I'm choosing between the
    > left and the right, I want a to make a little tweak to the one
    > I'm going to keep
  • On Wednesday, June 26, 2002, at 10:53  AM, Dan Wood wrote:

    > * 99% of the time, I want to apply my changes to one of the original
    > files.  I hate having to specify new destinations.  Just let me save
    > over my original, either the left or the right -- maybe have little
    > "lock" icons to specify whether you can overwrite a file directly....

    Can't you just specify one of the original's as the destination?

    > * Make the text editable.  Often, when I'm choosing between the left
    > and the right, I want a to make a little tweak to the one I'm going to
    > keep

    Just grab the handle at the bottom and drag up, then you open a new pane
    that allows direct editing.

    > * Lots of tolerance options for white space, for instance so one block
    > of code that is indented differently than the other will compare as the
    > same.

    Pretty sure there is an "Ignore Whitespace" option in the Prefernces.

    > * Scroll to the first difference so I don't have to hunt for little
    > tiny lines in the scrollbar.

    Down-arrow will jump to the next difference.

    > * Horizontal scrollbars for each side, so I can see the whole file if
    > the line is wide.

    In preferences, unselect "wrap text" and you should get scrollbars.
    Alternatively, select it and you should be able to see the whole file
    without scrolling.

    Karl

    --

    What do you get if you cross an elephant with a grape?
    |grape| * |elephant| * sin(theta).

    Homepage:
          http://homepage.mac.com/khsu/index.html
  • On Wed, 26 Jun 2002 22:03:52 -0700, Hsu wrote:
    > On Wednesday, June 26, 2002, at 10:53  AM, Dan Wood wrote:
    >
    >> * 99% of the time, I want to apply my changes to one of the original
    >> files.  I hate having to specify new destinations.  Just let me save
    >> over my original, either the left or the right -- maybe have little
    >> "lock" icons to specify whether you can overwrite a file directly....
    >
    > Can't you just specify one of the original's as the destination?

    Yes.

    Alternatively if you're a commandline weenie like me, you can say:

      openfile original new -merge original

    >> * Lots of tolerance options for white space, for instance so one block
    >> of code that is indented differently than the other will compare as
    >> the same.
    >
    > Pretty sure there is an "Ignore Whitespace" option in the Prefernces.

    But that's an all or nothing choice.

    Since FileMerge uses gnu diff underneath anyway, it could/should expose
    more of gnu diffs filter/configuration options (in a pretty UI of course).

    >> * Horizontal scrollbars for each side, so I can see the whole file if
    >> the line is wide.
    >
    > In preferences, unselect "wrap text" and you should get scrollbars.
    > Alternatively, select it and you should be able to see the whole file
    > without scrolling.

    ...except it doesn't.

    Some more nits of my own:

    * Make the default size of the diff-window configurable, or at least wider.

    * Make the Page-Up/Down keys work correctly.  Currently it scrolls either
    the left- or the right view, and doesn't keem 'em synced.

    * Make the width of the bottom (Merge) view follow the width of the
    window.  Currently there is a maximum that you see if you make the window
    wider that the standard size.  You can see this in eg. the background of a
    difference that stops short of the width of the window.

    --
    __/__/__/__/  Tom Hageman  <trh...> (home)  [NeXTmail/Mime OK]
      __/ __/_/        <t.hageman...> (work)  [Mime OK]
    __/__/__/
    __/  _/_/                                              [ObjC retain];
    objc: FREED(id): message retain sent to freed object=0xdeadcafe
  • On Thursday, June 27, 2002, at 06:55  pm, Tom Hageman wrote:
    > On Wed, 26 Jun 2002 22:03:52 -0700, Hsu wrote:
    >> On Wednesday, June 26, 2002, at 10:53  AM, Dan Wood wrote:
    >>
    >>> * 99% of the time, I want to apply my changes to one of the original
    >>> files.  I hate having to specify new destinations.  Just let me save
    >>> over my original, either the left or the right -- maybe have little
    >>> "lock" icons to specify whether you can overwrite a file directly....
    >>
    >> Can't you just specify one of the original's as the destination?
    >
    > Yes.
    >
    > Alternatively if you're a commandline weenie like me, you can say:
    >
    > openfile original new -merge original

    This is great when you invoke it from the command-line.
    But most of the time, I use it from PB and what we need in that context
    is some way to specify "merge original".
    You can do "Save Merge" but then you have to navigate to where the file
    is and then click on it. Instead what I would like (and what I suspect
    Dan Wood had been asking for) is a way to set it up to overwrite the
    right or the left file automatically upon Save (without asking me to
    confirm).
    ... Cameron
    --
    Cameron Hayne (<hayne...>)
    Hayne of Tintagel
  • On Wednesday, June 26, 2002, at 11:34 AM, Rick Sanford wrote:

    >>
    >>
    >> - Add support for ignoring differences that are only RCS keywords.
    >> - Add a configurable list of keywords since VSS has a larger set
    >> of keywords that cvs
    >> - Remember the size of the merge window across merges
    >> - Add a 'next file' hot key that replaces the contents of the current
    >> window with the next diff set
    >> - Add threaded pre-caching of diff sets so that the 'next file' hot
    >> key is instantaneous
    >> - Add support for loading a file and a patch file and seeing the
    >> differences
    >> - Add support for generating patch files
    >>
    >> In my case a spend a lot of time running FileMerge on a large source
    >> bases and wanting to quickly go through the whole set, ideally w/o
    >> switching between the mouse and keyboard a lot.
    >>

    I agree on the complete keyboard navigation.  It's almost there, but not
    quite.

    One feature which should definitely be in there is support for copying
    multi-fork files.  Currently, if you have a multi-fork file on say the
    left side that doesn't exist on the right and you choose "Use left" to
    copy the file over, the file will be copied, but it will be corrupted
    since FileMerge doesn't understand multi-fork files.  I've filed a bug
    against FileMerge on this issue.

    Wade
  • Along the lines of making it easier to navigate to things, I would like
    to see something like a "Recent Compares" on the File menu.  I often use
    it to compare a directory of files that someone sends me to files that
    are on my machine.  I am always comparing the same sets of directories.
    It probably doesn't make sense to remember this when you run it from PB
    to compare with CVS, but when I give it two directories to compare, I
    would like it to remember those directories so that I can just pick that
    session from a list and run the comparison again.

    For those of you that also run on Windows, I would suggest looking at a
    program called BeyondCompare.  It does a great job of comparing files
    and directories and letting you do manual merges.  It lets you define
    sessions where you can set the directories to compare and filters to use
    when doing the comparisons.  The one thing that it doesn't do is a three
    way compare with a baseline and an automatic merge, so it is really only
    useful for doing manual merges.
previous month june 2002 next month
MTWTFSS
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Go to today
MindNode
MindNode offered a free license !