Compare Text For Mac

/ Comments off

I received a question about document comparison for the Mac by someone who came from a larger law firm where they used DeltaView. And since the topic has come up a couple of times on MILO, I wanted to provide more detail.

Document comparison is very important to lawyers since we’re regularly revising and exchanging drafts with colleagues and co-counsel. The task is not that essential to the rest of the world.

There are a handful of software tools developed for the legal profession to address this need. Many years ago, CompareRite was the tool of choice. Unfortunately, LexisNexis decided to “retire” the software in February 2002, although you will still find committed users of the product.

Most law firms use DeltaView from WorkShare, which has been re-branded as WorkShare Compare & Professional (although the software continues to assure everyone that it’s “DeltaView powered”). I reviewed DeltaView version 2.7.2 back in 2002 for


See what makes each Mac notebook and desktop computer different. And find the one that’s perfect for your life, your work and your budget. This article was written by Nicole Levine, MFA.Nicole Levine is a Technology Writer and Editor for wikiHow. She has more than 20 years of experience creating technical documentation and leading support teams at major web hosting and software companies. Feb 28, 2020 Sublime Text is probably one of the most famous text editors available for Mac and for all the right reasons. The software brings a ton of features including syntax highlighting and folding, a high level of customizability, easy to navigate interface, multiple selections, powerful API and package ecosystem, and more.

Other document comparison tools on the market for legal professionals include Change-Pro from Litera and compareDocs from DocsCorp. I reviewed compareDocs in 2008 for Legal Assistant Today magazine (PDF version).

These applications provide more capabilities than “Track Changes” built into Microsoft Word. Some people like the fact that the applications are separate from Word, and others are anxious about the potential risks in using the Track Changes functionality.


The main problem, of course, is that everything I’ve mentioned so far is Windows-specific. None of the tools mentioned above run natively on the Mac OS. You can certainly run the tools in a virtual environment through Parallels or VMware Fusion, but if you’re reading this post, you probably want something native to the Mac OS.

The bad news is that there is no direct equivalent for the Mac OS.

The good news is that there are a couple of workarounds.

First, there are some excellent text comparison applications for the Mac OS, but the emphasis there is on TEXT. Applications such as Kaleidoscope, Araxis Merge, Differences Examiner, and Differencia will compare the plain TEXT of a file, but they cannot compare native Word documents. Most of these applications are designed to compare plain text files used in database or web design but they are not meant to be full-powered Word DOCUMENT comparison tools.

You can use these tools to compare Word documents, but they will first strip out the text before comparison. That means you’re not getting the benefit of comparing any formatting or contextual differences between the documents – you’re just comparing the plain text.

Folder Compare For Mac

Now for many cases, that might be adequate. But most of the time, lawyers are looking for a comprehensive tool that will take into account the entire document. If you’re just concerned about comparing the text, I would recommend Kaleidoscope or Araxis Merge.

Second, Microsoft Word for Mac already has an acceptable document comparison tool built-in found under Tools > Track Changes > Compare Documents. Once you have a document open in Word, click the menu item, select another document, and you’ll get a third document with all of the changes marked either inline or as comment bubbles on the side.

If you’ve ever used Track Changes in Word before, you’ll be very comfortable with the way the changes appear. The Compare Documents feature marks all of the differences between two documents using Track Changes. The “Merge Documents” menu item is similar, but it actually merges the Track Changes from two or more documents into a single document. For the majority of document comparison needs for Mac-using lawyers, the Compare Document tool in Microsoft Word for Mac will work just fine.

Unfortunately, there is not a counterpart for Pages.

Third, you may consider using a cloud-based word processor such as Google Docs to “collaborate” on a document. You can upload and share a document via Google Docs which will keep track of all changes made by your collaborators. When the collaboration is done, you can export it out of Google Docs and then finalize the formatting in Microsoft Word or Pages (e.g. intricate bullets/numbering, line numbers, ToC, ToA, etc.).

(Thanks to Randy Singer, the Mac Attorney, for providing a list of Mac-native text comparison tools on MILO.)

Merge text comparisons make it possible for you to compare and merge text files, or text that you type into Merge. You can copy and paste text into Merge from other applications, or directly open and compare the text from Microsoft Office, OpenDocument, PDF and RTF files. Merge can also apply special formatting to XML and XHTML files (see below), helping you to see changes more clearly.

If you haven’t already, spending a few moments browsing the Instant Overview of File Comparison and Merging will help you quickly become familiar with Merge file comparisons.

Performing a comparison

By default, an empty, new text comparison is automatically opened when you start Merge. To open additional text comparisons:

Compare Mac Mini

  • click the New Text Comparison toolbar button;
  • or, choose the FileNewNew Text Comparison menu item;
  • or, press Shift+Cmd+T;
  • or, press Cmd+N (provided that Merge is configured to open a new text comparison when it starts).

You can have multiple comparison tabs or windows open at the same time.

Two empty areas where the compared files will be displayed take up the majority of the window. You can type directly into each file pane, or paste text copied from other applications. Alternatively, above each file pane is an entry field that you can use to enter the path to a file that you want to compare.

Specifying the files to compare

To compare two text files, you can type the paths of two files into the entry fields or use the buttons on the right-hand end of the entry fields to choose files to compare.

The Browse button opens a file-browsing sheet and the Show history button displays a list of files that you have recently compared.

When you have chosen two files to compare, to perform the comparison:

  • click the Start or Recompare toolbar button, alternatively press Enter;
  • or, select the FileStart or Recompare menu item, alternatively press Cmd+R;
  • or, drag and drop files from Finder on to the filename entry fields or on to the file panes.

As well as files on the local disk and network volumes, Merge is also able to directly access and compare files stored within Perforce, Subversion, and (local clones of) Mercurial and Git repositories. See Virtual File System (VFS) Plugins for more details.

Accessing other revisions of a file with the Versions button


If there are other versions of the file named in the entry field available for comparison, the Versions button displays a list of these other versions. You can open the same file in both the left and right comparison panes, then use this button to compare a file with an earlier revision of itself.

If enabled on the Preferences…ApplicationVersions page, Merge is able to find other versions of a file from the following sources:

  • Time Machine. Merge automatically searches the currently configured Time Machine backup disk to find any older versions of the file you are comparing. If the Time Machine disk is a network volume, Merge will endeavour to mount it.

    Time Machine backups will not occur while a Time Machine password-protected network volume is mounted by Merge. To allow Time Machine to make backups to the volume, eject the Time Machine network volume using Finder.

  • Perforce, Subversion, Mercurial, and Git repositories. Merge endeavours to find any older versions of the file you are comparing from the relevant Perforce, Subversion, Mercurial, or Git repository. If a Perforce, Subversion, Mercurial, or Git URI has been specified in the filename entry field, Merge will search the repository from which it loaded the file for any other revisions. Otherwise, if a file has been loaded from the local disk or a network volume and is part of a client workspace, Merge will search the relevant repository for which credentials have been supplied on the Credentials preference page.

If the Versions button is not enabled, check the relevant options on the Versions and Credentials preference pages.

Three-way file comparisons

In addition to two-way file comparison, the Professional Edition of Merge enables you to compare (and, for text files, merge) three files. Please see the Three-Way File Comparisons topic for more information. The Professional Edition also supports the automatic merging of text files.

Unicode/MBCS and other character encodings

Merge can compare files encoded with Unicode, MBCS and other character encodings as well as ASCII files. Merge can compare files even if they were saved with different encodings. Please see Working with Character Encodings for more information.

Comparing the text content of Microsoft Office,, PDF, RTF and HTML files

Merge comes with a number of filters that can automatically extract the text content from certain common types of files when they are loaded. This means, for example, that you can drag and drop a pair of Microsoft Word documents on to a Merge text comparison window and have the text comparison automatically extract and compare the text from those documents.

Merge includes text extraction filters for files from the following applications:

  • Microsoft Word 97 and later (.doc and .docx)
  • Microsoft Excel 97 and later (.xls and .xlsx)
  • Microsoft PowerPoint 97 and later (.ppt)
  • OpenDocument text, spreadsheet and presentation files (that is, Writer, Calc and Impress documents) from LibreOffice, and NeoOffice (.odt, .ods, .odp)
  • Unencrypted Adobe PDF files (.pdf)
  • Rich Text Files (.rtf)
  • HTML files (.html, .htm)

Note that Merge is only able to extract literal text stored in spreadsheet files. It is not able to perform calculations on spreadsheet cells.

These filters are all optional and not all of them are enabled by default. Thus, you can compare HTML and RTF files as they are, without conversion. Likewise, you may prefer to compare PDF files using an image comparison. The File Types preference page can be used to configure which filters Merge uses and what sort of comparison is started for different file types.

Compare Text Mac Free

When comparing text documents, it is usually helpful to have Merge wrap long lines of text, breaking them at word boundaries. You can choose this behaviour from the Display preference page.

Note that Merge can extract text, but not formatting, from the above file formats. Merge is not therefore able to show you formatting differences. The text filters for these file formats are also one-way – text can be extracted from these types of files, but not written to them. Please also be aware that the filters have various other limitations. They do not, for example, extract bullet and paragraph numbering information from Microsoft Word files, and password-protected documents are unsupported. For some documents, it may therefore be preferable to open them in their native application and copy and paste text from them into a text comparison pane. This will have the benefit of preserving details such as bullet and paragraph numbering.

Finally, be aware that you can use these filters to compare documents of different types. For example, perhaps a client has sent you a PDF of a final version of a contract, created from a Microsoft Word document that you had previously reviewed. You can use Merge to compare the text content of the PDF and Word documents to be sure that they are the same.

Comparing macOS property list (.plist) and executable files

Merge comes with filter (plistFilter) to convert macOS .plist files into XML text. This means that you can compare and modify binary .plist files using a Merge text comparison. When you save the .plist file, Merge will use the filter to turn the XML back into a binary .plist file.

Merge also comes with a filter (otoolFilter) to convert macOS binary executable files into (potentially) more meaningful text. This filter is one-way – you can’t save changes to an executable file. Please note that this filter requires the macOS command-line developer tools. If these are not already installed when you use this filter, macOS will prompt you to install them.

Neither of these filters is enabled by default. To enable them, visit the File Types preference page.

Comparing XML and XHTML files

The XML toolbar button menu and the Actions menu both contain commands to reformat XML and XHTML text (but not non-XHTML HTML). Reformatting enables XML/XHTML to be compared more easily, affecting the appearance and layout of the files on-screen and how they are compared. However, it does not change the content of the files: whitespace is not added or removed, neither is content re-ordered. This means that you can see changes clearly in even the most densely formatted XML files, without sacrificing the fidelity of a true textual comparison. Reformatted files can be edited, merged, and saved as usual.

You can use the File Types preference page to enable or disable the automatic reformatting of XML and XHTML files when they are opened in a new text comparison window.

Only use the XML toolbar menu and related Actions menu items (or the aforementioned automatic reformatting) on true XML/XHTML files. An error message will be displayed if these commands are used on non-XML text (e.g. HTML that is non-valid XHTML), and the results may be undefined.

When comparing re-formatted XML and XHTML files, it can be helpful to check the Show CR and LF characters option on the Display preference page. This will help you identify line breaks that are present in the original text files.

Comparing files with numeric data

Merge is able to compare corresponding numeric values within text files and, if desired, treat them as identical if they are within a certain tolerance of one another. One potential use for this is when comparing the output of numerical control (NC) code files from CNC machine tools. Thus, for example, if a numeric comparison tolerance of 0.002 has been defined, then 34.013 and 34.015 would be considered identical, whereas 34.012 and 34.015 would be treated as different.

Merge only makes allowance for numeric tolerance when comparing files whose type is defined as Text with numeric data on the File Types preference page. By default, new installations of Merge will treat files with the .ptp extension in this way. (Please note, however, that a .ptp file type is not automatically added when upgrading existing installations of Merge.)

The allowed numeric comparison tolerance for such files is specified on the Lines preference page.

Comparing Intel Hex files

Merge provides special handling for Intel Hex files. For this to take effect, the type of the file must be defined as Text Intel Hex on the File Types preference page. By default, new installations of Merge will treat files with the .hex extension in this way. (Please note, however, that a .hex file type is not automatically added when upgrading existing installations of Merge.)

For Intel Hex files, record lines (which start with a colon followed by eight hexadecimal characters of control data) are paired for comparison based on the control data only, ignoring any content data. Changed blocks consisting of multiple record lines are broken into individual lines, to show exactly how the lines are paired. The content data that follows the control data is then compared for each pair of lines, and changes are highlighted inline.

The file comparison display

Two sample text files (test1.txt and test2.txt) are provided in Sample Files folder on the Merge installation disk image. The following screenshot shows the results of a file comparison between these two files.

Changes between the two files are highlighted with colours and linking lines. Linking lines in the centre panel of the file comparison window connect related changes to show exactly how the files are related. You can modify the colours and fonts used in the file comparison window by using the controls in the Fonts/Colours preferences page.

A summary of the number of removals, insertions and changes that were found between the compared files is shown in the status bar at the bottom of the main Merge application window. The current line and column number for the editing caret is also displayed.

A disclosure button at the bottom-left corner of the comparison window can be used to reveal a panel showing the current lines from the text panels above, one above another. Whitespace and end-of-line characters are always shown in this panel.

Layout controls

You can use the Two-Way Vertical , Three-Way Vertical , Two-Way Horizontal and Three-Way Horizontal menu items in the Layout toolbar button, or Window menu to change the layout of the files within the file comparison window so that the compared files are displayed one above the other (stacked) or side-by-side (the default).

There are many options that you can set to customize how Merge compares and displays files. There are help topics that will enable you learn how to customize Merge so that it produces the best results for you.


As you scroll one file up and down using its scroll bar, the other file is scrolled so that the two files remain aligned in the centre of the display. The centre-point marker (a line of small indentations in the centre of the linking lines panel) indicates the point at which Merge tries to keep related parts of the files aligned. You can temporarily prevent Merge from keeping both files aligned by holding down the Ctrl+Cmd keys while scrolling. When you release Ctrl+Cmd, the files will snap back into alignment.

The small Previous change and Next change buttons below the scroll bars can be used to jump to the previous or next change.

There are thin overview strips next to the vertical scroll bars at the left and right edges of the file comparison window. These contain markings to indicate the position of changes within the compared files. You can quickly navigate to a change by clicking on the marks in the strip.

You can use the cursor keys to navigate within a file after clicking within it to give it keyboard focus. The following navigation shortcut keys are also available:

  • Ctrl+Option+ moves the editing cursor to the previous change.
  • Ctrl+Option+ moves the editing cursor to the next change.
  • Option+ and Option+ move the editing cursor left and right in word steps.
  • Cmd+ and Cmd+ move the editing cursor to the beginning or end of the file.
  • Cmd+L displays a window that you can use to navigate to a specific line number.

For a full list of keyboard shortcuts, see Keyboard Shortcuts.

Mouse and touchpad navigation

You can use your mouse wheel or touchpad to scroll up, down, left and right within the active file.

Unicode/MBCS character encodings and code pages

Merge can compare files encoded with Unicode or MBCS character encodings as well as ASCII files. For MBCS files, Merge can compare files even if they were saved using a codepage different to your default codepage. Please see Working with Character Encodings for more information.

Searching for text

You can search for text in the active file by clicking the Find toolbar button and selecting Find…. You can also select the EditFindFind… menu item, or press Cmd+F.

Switching between multiple file comparisons

Merge allows you to work with multiple file comparisons open at the same time. A tab strip along the top of the application window allows you to switch between file comparisons with a single mouse click.

Bookmarks and comments

As you are comparing or editing files, you may want to set bookmarks to enable you to return to locations of interest later on. Click the Bookmarks toolbar button and select Toggle Bookmark, to toggle a bookmark on or off on the current line. You can also select the EditBookmarksToggle Bookmark menu item, or press Cmd+F2.

To navigate between bookmarks, click the Bookmarks button and select Next Bookmark or Previous Bookmark. You can also select Next Bookmark or Previous Bookmark from the EditBookmarks menu, or press F2 or Shift+F2.

Comments can be added to bookmarks, making it easy to note important information or to record a question. To edit a bookmark’s comment, click the Bookmarks toolbar button and select Edit Comment…. You can also select the EditBookmarksEdit Comment… menu item, or right-click the bookmark and choose the Edit Comment… menu item. Bookmark comments are shown as tooltips when you hover the mouse pointer over a bookmark.

Bookmarks and comments are included when you save a comparison for archival or team collaboration. Bookmark comments are also shown in HTML comparison reports. They are therefore a useful tool for asking questions or making notes in a comparison that will later be emailed to other team members for review.

Editing files

In addition to the comparison features described above, Merge enables you to edit and merge the files being compared. Please see the Editing Files topic for more information.

Syntax highlighting

Merge provides syntax colouring support for a variety of programming languages:

LanguageFile extensions
C/C++/Obj-C.c, .cc, .cpp, .cxx, .h, .hh, .hpp, .hxx, .sma, .m, .mm
Windows resources.rc, .rc2, .dlg
IDL.idl, .odl, .asc, .jsfl
VB.vb, .bas, .frm, .cls, .ctl, .pag, .dsr, .dob
VBScript.vbs, .dsm
Pascal/Delphi.dpr, .dpk, .pas, .dfm, .inc, .pp
HTML/XML/PHP/VXML.html, .htm, .asp, .shtml, .htd, .php3, .phtml, .php, .htt, .cfm, .tpl, .dtd, .hta, .vxml, .xml, .xsl, .xslt, .svg, .xul, .xsd, .dtd, .axl, .xrc, .rdf, .vcproj, .wxs, .wxi, .docbook
Caml/OCaml/F#/SML.caml, .ml, .mli, .fs, .fsi
Erlang.erl, .hrl
Fortran.f90, .f95, .f2k, .f, .for
Lisp.lsp, .lisp, .scm, .smd, .ss, .pm, .cgi, .pod, .pyw, SConstruct, SConscript
Scala.sbt, .sc, .scala
Ruby.rb, .rbw, .pac
Visual DataFlex (using the Smalltalk parser).src, .pkg
SQL.sql, .spec, .body, .sps, .spb, .sf, .sp

Syntax highlighting can be enabled (and colours configured) using the controls in the Highlighting preferences page. File extensions and keywords for each language can be changed by editing the highlight.styles file in the Merge installation directory.