Estimated reading time at 200 wpm: 6 minutes
Meld is a free, open-source comparison tool. It runs on Windows, Linux and Mac. Its job is simple to state: put two versions of a document side by side and show you exactly where they differ.
Whether or not you agree our Fat Disclaimer applies
Programmers have used it for years to compare code. But nothing about it is limited to code. Any plain text will do — Markdown, drafts, notes, reports, letters. If you keep versions of your writing, Meld will show you what happened between them.
For authors, it’s a great piece of free software. MS Word is good for drafting and comparing document versions. However, not everybody has MS Word or like how hefty it is in terms occupancy of hundreds of megabytes of space. If it’s part of O365 expect the package to occupy 5GB of space. Meld occupies only about 105MB of space when installed.
Many like me have discovered the true value of using basic text in Markdown, using lean and efficient software that creates small file sizes. Those can then be easily worked with MS Word when needed.
What Meld does
Open two files and Meld lines them up in parallel panes. Changed passages are shaded. Within a changed passage, the individual words that differ are highlighted separately. Deleted text, added text and altered text each get their own treatment. Curved bands link each change on the left to its counterpart on the right, so your eye never loses the thread.
It also compares whole folders. Point it at two directories and it lists which files match, which differ and which exist on one side only. Three-way comparison is available too, for those who need to reconcile a pair of edits against a common original.
Changes can be merged with a click. An arrow sits beside each difference. Press it and the text moves across. This makes Meld useful not just for inspection but for reconciling versions — keeping the best of each.
How I use it
My interest is in comparing drafts. When a document passes through several hands, or several revisions, the differences between versions carry real information. Which sentences survived? Which were cut? What was softened, sharpened, or quietly removed? Reading two versions separately hides this. Reading them in Meld makes it plain.
This matters for any careful reading of revised text: contracts, reports, successive drafts of one’s own writing. The changes are the story.
A note on colours
Out of the box, Meld’s highlighting can be muted, and on some themes the differences are easy to miss. A fair amount of effort went into tuning the colour scheme so that changed and deleted words stand out at a glance. That work was worth it. When the differences are instantly visible, the mind is free to think about what the changes mean, rather than hunting for where they are.
Meld Colour Customisation Notes (Windows 11) — Resolved
Goal: Improve visibility of deleted / changed text, especially word-level differences, while keeping the Oblivion syntax scheme. Status: Solved. Works on Oblivion and Cobalt themes.
1. Key Files Location
Meld installation path:
C:\Users\USER\AppData\Local\Programs\Meld\_internal\share\meld\styles\
Important files:
meld-base.style-scheme.xml→ appears in UI as “Classic (Meld)”meld-dark.style-scheme.xml→ appears in UI as “Meld dark scheme”
Standard GtkSourceView schemes (Oblivion, Cobalt, Kate, etc.) live under _internal\share\gtksourceview-4\styles\ and contain no meld:* styles at all.
2. How Meld Diff Colours Actually Work
There are two layers:
- Syntax highlighting scheme (Oblivion, Classic, Cobalt…) Controls normal text colours and background.
- Meld difference colours (
meld:insert,meld:replace,meld:delete,meld:inline…) Defined only in the two special files above.
The rule that cleared the roadblock:
When the selected syntax scheme does not define the meld:* styles (none of the standard schemes do), Meld falls back to one of the two special files. It chooses the fallback by the darkness of the selected scheme, not by which file the user edited.
- Dark scheme selected (Oblivion, Cobalt…) → diff colours come from
meld-dark.style-scheme.xml - Light scheme selected (Kate, Classic…) → diff colours come from
meld-base.style-scheme.xml
3. Why the Earlier Tests Misled Us
Two separate errors combined to fake a dead end:
- The extreme diagnostic colours were only ever placed in meld-base. Under Oblivion, Meld was reading meld-dark, so the edits appeared to be “ignored”.
- A later edit to meld-dark changed only
meld:delete. That style rarely renders in ordinary side-by-side comparisons (Meld mostly drawsmeld:replaceandmeld:inline), so the edit produced no visible change and wrongly “confirmed” that meld-dark was ignored too.
The earlier experimentation led to the conclusion — “Oblivion does not honour edits to the Meld style files”. That turned out to be wrong. The edits were in the wrong file, and the one edit in the right file touched a style that seldom appears.
Verification: placing extreme colours (#FF00FF replace, #FFA500 inline) in meld-dark and selecting Oblivion made them appear immediately.
4. Final Working Colours (meld-dark.style-scheme.xml)
Replace the meld:insert, meld:replace and meld:inline lines with:
<style name="meld:insert" background="#1e4620" foreground="#8ae234" line-background="#2a5a2a"/>
<style name="meld:replace" background="#3d3526" foreground="#eeeeec" line-background="#4a4030"/>
<style name="meld:inline" background="#b36b00"/>
Design logic:
meld:replaceputs changed chunks on a warm dark tan — quiet enough to preserve Oblivion’s mood.meld:inlinemarks the individual differing words (including words removed from one side) in mid-strength amber. It only sets a background; the text colour on top comes from the syntax scheme, so the amber must be dark enough for light grey text to stay legible.meld:insertkeeps inserts green, dimmed to suit a dark background.
Restart Meld after editing. The same colours apply automatically to every dark scheme (confirmed on Oblivion and Cobalt).
5. Housekeeping
- Keep a backup of the finished
meld-dark.style-scheme.xmloutside the Meld folder. A Meld update will overwrite_internal\share\meld\styles\without asking. Restoring after an update is a ten-second paste. meld-base.style-scheme.xmlstill contains the garish diagnostic set. Restore it from the original backup, or any light scheme (Kate, Classic…) will display magenta and yellow.
6. Summary of Style Roles
meld:replace— colours the whole changed line/chunk.meld:inline— colours the individual differing words; sits on top of the replace background. This is the style that matters most for spotting deletions and changes.meld:delete— rarely used in normal two-way text comparisons; not worth tuning first.meld:insert— added lines.











