Options dialog can be opened from View-menu or from toolbar button. Changes made are saved when dialog is closed using OK-button (or pressing Enter-key).
When this option is enabled backup copy of file is created every time before saving the file. Filename for backup file is generated by replacing filename extension with "BAK".
When this option is enabled:
after directory compare selection is moved to first different files or directories |
after opening files for compare first difference in files is scrolled visible and selecteds |
User can disable splash screen appearing when WinMerge is started. It does not make WinMerge start faster (splash screen can be missed by clicking it with mouse) but it saves one click.
User can allow WinMerge to close compare statepane automatically after directory compare is ready. After compare statuspane is closed it can be reopened from View-menu (Compare Statepane).
If this option is enabled, WinMerge closes document windows and application with ESC key. One window is closed with one keypress, so if user has file compare window open one needs three keypresses to close WinMerge: file compare window, directory compare window and then the application.
When enabled: Open-dialog checks both paths given for validity and doesn't enable "OK" button until both paths are valid. Unfortunately this checking needs little delay and some users find this delay annoying.
When disabled: Open-dialog enabled "OK" button by default and lets user to try to open all paths. However error message is shown if path is not valid. This is faster to use, there is no any delay in enabling "OK". But user must look at error-dialogs.
WinMerge allows user to hide (suppress) some common messageboxes. For example if user doesn't want to see "The files are identical" messagebox every time two identical files are opened user can check checkbox in that messagebox and close messagebox. Then that messagebox will not be shown again.
However sometimes user may want to see again those hidden messageboxes. Selecting "Reset" button makes all messageboxes visible again.
![]() |
It is recommended to reset messageboxes when updating to newer version of WinMerge. Installer does that automatically but if installer is not used then it should be done using this "Reset" button. |
Several compare options allow to ignore some specific type of differences. This is useful in reducing insignificant differences for review purposes.
Ignored difference is shown with different color and it cannot be merged. Difference counts do not include ignored differences. So if files contains only ignored differences they are shown as identical in directory compare.
![]() |
Ignoring differences affects merging! If user ignores whitespace changes, then e.g. indentation changes in source code files are ignored. That means file's indentation gets messed up when merging. It is strongly recommended to turn off all difference ignore options before merging files! |
Compare Whitespace, Ignore whitespace change and Ignore all whitespace are three different levels for comparing/ignoring whitespace characters.
"Ignore whitespace change" ignores changes in whitespace chars. First three lines in example below illustrate this, those three lines are detected as identical if this option is set. However change between zero and more whitespace characters is NOT ignored. So fourth line is different from first two lines
Example 4. Ignore whitespace change
One space between words:
Two Words |
Two spaces between words:
Two Words |
Tab between words:
Two Words |
No spaces between words:
TwoWords |
"Ignore all whitespace" ignores all whitespace characters. All lines in example below are detected as identical.
Ignores differences that have only blank (empty) lines. Blank lines are shown in file view, but difference is shown with ignored difference colors and it cannot be merged.
If this option is enabled WinMerge ignores differences between lowercase and uppercase letters. For example "LowerCase" and "LOWERCASE" and "lowercase" are same.
If this option is not set WinMerge does not detect EOL style differences as differences. If two lines differ only by EOL characters (e.g. DOS EOL and Unix EOL) WinMerge detects files as identical.
When this option is enabled WinMerge tries to detect lines that are moved inside file. Moved lines have own difference colors. Also location pane can show moved lines with line between bars. This makes it easier to visualise changes in files. However if there are a lot of moved lines it may get messy looking.
File compare method has two choises:
Contents - compares files by content of files. This is accurate and recommended compare method.
Modified date - compares files by modified date. This can greatly speedup comparing lot of files. But on the other hand results may not be accurate.
From "Hilighting" -page user can enable/disable syntax highlighting. WinMerge can syntax highlight many programming language source codes, web formats etc. Syntax hilighting consumes some processing power, so if WinMerge screen updating seems to be slow, turning off this option might help.
When this options is enabled WinMerge applies known know file format's syntax highligh to another file even if that file's extension is not known. For example, if you compare files, file.cpp and file.cpp.bak, WinMerge detects file.cpp needs C++ syntax highlight. And then uses same rules for file.cpp.bak too.
Enabling automatic rescanning forces WinMerge to rescan after every change done to files, including typing. That's how WinMerge 1.7.1 behaves. For bigger files this can make editing files very slow. To make file editing faster edit events are 'delayed'.
Delaying means WinMerge waits one second after last edit event before rescanning. If new edit event happens during that time editing is done and counter reset to one second. So there should be no rescans during normal typing, but only after user stops typing.
When automatic rescan is disabled, rescan is done only when user selects "rescan" or user merges difference.
WinMerge 2.2 release delays more edit events than 2.0.x releases, so selecting between automatic and manual rescan is mostly a matter of taste.
![]() |
This is an advanced option for users who are familiar with EOL bytes and who want to compare files with different EOL styles inside ONE file. It is recommended that this option not be set unless this advanced functionality is needed. |
Setting this option allows handling and comparing files with different EOL styles inside ONE file. Two files with different EOL styles can be compared even without this option set! One example reveals functionality behind this option.
This is one example text. To show how smart WinMerge can be handling EOL differences. |
And same text in bytes:
5468 6973 2069 7320 6F6E 6520 6578 616D 706C 6520 0D0A 7465 7874 2E20 546F 2073 686F 7720 686F 7720 0D0A 736D 6172 7420 5769 6E4D 6572 6765 0D 6361 6E20 6265 2068 616E 646C 696E 6720 0D0A 454F 4C20 6469 6666 6572 656E 6365 732E |
The example presents one simplish text file with five lines of text. All lines, except third, are terminated with DOS style EOL (0D0A). Third line has Unix style EOL (0D).
If "Preserve original EOL chars" -option is not set WinMerge determines file is meant to be DOS style file and converts third line's last bytes to 0D0A before comparing. Missing EOL char is usually an error in file, so WinMerge is smart and fixes this error instead of reporting it as a difference. That's right, WinMerge changes user's file without telling about it to user. WinMerge also shows files EOL style as "DOS" in filecompare statusbar.
Advanced user might want to handle files without this automatic fixing, file might be handled in systems with different EOL styles (e.g. Windows and Linux). In that case, user can set this option and see WinMerge showing EOL style for every line.
When this options is enabled files and folders deleted in directory compare are put to Recycle Bin. Note that use of Recycle Bin may have disabled from system.
This option enables/disables shell integration. When enabled, new menuitem "WinMerge" is added to explorer's context menu. User can select one or two files/folders and then select that menuitem to open files/folders to WinMerge.
If this option is enabled there are two items shown in explorer's context menu. First item allows user to select path to "memory" and then pick another path and compare those two. This means user does not need to select both paths from same view, but user can select them from different drives etc. Path is forgotten from memory when its compared.
Second item in menu always opens WinMerge with selected path(s).
WinMerge has pretty good editor for most basic editing needs. But its not nowhere near comparable to many other editors in functionality. So WinMerge allows user to define ones personally preferred editor to external editor. Files can be opened to external editor from directory compare's context menu.
Notepad is used as default, because it is found from all Windows machines. Commandline parameters can be given, in format: <path to .exe> -option1 -option2 ...
These options allow selecting codepage WinMerge uses for ANSI files and if codepage should be read from file contents for specific file formats.
These three radiobuttons can be used to select default codepage WinMerge uses when handling ANSI files. Usually default choise of "System codepage" is best choise. However if user knows that files are not in same codepage than system uses then user can choose different codepage selecting "Custom codepage" and typing codepage number to textbox next to it.
![]() |
Uncheck this option in WinMerge.exe. Characters conversions can result in lossy conversions and the risk is very high. WinMerge.exe can display files only with your current codepage. |
This option is interesting when your documents use a codepage different from your current codepage (your current codepage is the codepage of your Windows configuration).
For example, you may merge two slovak or two japanese files in an english environment. With the required fonts, and this option set, your slovak, or japanese, files will be displayed with slovak, or japanese, characters.
Actually, WinMerge detects the codepage for these extensions : .html and .rc (resource files for VC++).
WinMerge also detects a codepage difference between the left/right files. To avoid lossy conversions during merge/copy/paste, WinMerges proposes you to ignore the codepage information.
![]() |
When you paste/copy text to an external application, the external application must use the same codepage as WinMerge does. If your external editor does not support custom codepages, disable this option. Refer to the documentation for your external editor (for copying to WinMerge, Internet Explorer offers codepage selection). |