LibreMerge 1.1: the table comparison in full, Tree-sitter highlighting, and French
This release completes the table comparison as WinMerge has it, brings in WinMerge's new Tree-sitter syntax highlighting and its Compare > Image options, opens items with different names from a folder comparison, and adds French. The comparison engine moves to WinMerge's current master.
Added
- The table comparison, complete. Options > Compare > Table is WinMerge's page: the file patterns that open as CSV, TSV or with a delimiter of your choice, the quote character, and line breaks inside quoted cells, which now stay in one row. Three tables compare side by side. Cells edit in place (F2, or just type) with undo, and the selected cells copy to the other side. The column header's menu has WinMerge's Ignore This Column, in all panes or in one, which leaves that column out of the comparison.
- Tree-sitter syntax highlighting, which WinMerge has just added: its grammars color 23 more languages. With the default mode, the built-in parsers first, YAML, TOML, Markdown, TypeScript, TSX, properties files and F# signatures are colored, and so are the code blocks inside Markdown, each in its own language. Options > Editor holds Highlight syntax and WinMerge's four modes (built-in only, built-in first, Tree-sitter first, Tree-sitter only). LibreMerge fixes three things in WinMerge's Tree-sitter code: the grammars' query predicates are evaluated, nested captures get their own color, and long files no longer mix colors between blocks.
- Options > Compare > Image, WinMerge's page: the patterns of the files that open as images, and whether a folder comparison opens images that way.
- Compare items with different names from a folder comparison (#14, thanks @hendev1): select two files (three in a 3-way comparison) and Compare opens them together. Compare Non-horizontally pairs them the other ways, the first left item with the second one and so on, as in WinMerge.
- French, from WinMerge's French translation (maintained by Lolo S.), extended to LibreMerge's own texts. Thanks @madum31 for asking in #5; a native speaker's review of LibreMerge's own texts is welcome there.
Changed
- The comparison engine follows WinMerge's master, 159 commits newer than in 1.0.
- Going to a difference scrolls as little as WinMerge does (thanks @KrokusPokus): the panes stay put when the difference is already on screen, and otherwise show it five lines from the top. The table comparison does the same.
- German: two texts of the binary comparison's dialogs, after the review by @KrokusPokus in #8.
- Building from source downloads the sources of WinMerge's Tree-sitter grammars on the first configure, about 12 MB, pinned by commit and checksum (
-DLM_TREE_SITTER_GRAMMARS=OFFbuilds without them).
Fixed
- The colors the built-in parsers give their user keyword sets (WinMerge's User 1 and User 2 colors) never showed.
Downloads
- macOS: universal dmg (Intel + Apple Silicon, macOS 14.4+), also
brew install --cask iagodpassos/tap/libremerge - Linux: AppImage for x86_64 and arm64 (any distro with glibc 2.35+, nothing to install), also
brew install --cask iagodpassos/tap/libremergewith Homebrew on Linux