Erse transforms text files in bulk using a stack of rules. You drop in any number of .txt, .csv, .tsv, .log, or Markdown files, build a stack of transformations, watch a live side-by-side preview update, then export clean copies. Your originals stay untouched unless you choose to overwrite them. This guide covers every part of the app.
Rules are applied in order, top to bottom — each rule's output feeds the next. Drag to reorder; toggle a rule off to disable it without removing it; click × to delete it. You can use the same rule type more than once.
Find & Replace
Replaces matching text. Choose a matching mode: literal text, wildcards (* any run, ? any single character, {number} a run of digits, {text} a run of letters), or full regular expressions with backreferences in the replacement. Toggle case sensitivity on or off.
Change Case
Converts text to UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, kebab-case, or CONSTANT_CASE.
Trim
Cleans whitespace: strip leading and trailing spaces, collapse internal runs of whitespace to a single space, remove or collapse blank lines, and convert tabs to spaces.
Insert
Adds a prefix or suffix, with optional separators. Enable auto line numbering to prepend a running number to each line.
Strip / Filter
Keeps or removes whole lines based on a pattern — like grep. Use it to drop blank lines, remove duplicate lines, or keep only lines that match (or don't match) a search.
Sort
Reorders lines ascending or descending. Sort alphabetically (case-sensitive or not), numerically, or by line length. For CSV and TSV files you can sort by a specific column and pin the header row so it stays on top.
Combine
Appends or prepends the contents of another document to each file in your batch. Configure the joiner between the two, and use CSV-aware row merging to combine tabular data cleanly. On macOS, Erse keeps a security-scoped reference to the combined file so it stays available on the next export.
Every rule has a scope that controls how much text it touches:
Choosing the right scope means a rule changes exactly the text you intend — for example, Title Case on each field instead of across the whole document.
The preview panel shows the result of your full rule stack on the selected file and updates in real time as you adjust any setting. Switch on the side-by-side view to see the original and the transformed text together, so you can confirm exactly what changed.
Very large files are previewed safely — Erse limits the preview to the first several thousand lines so the interface stays responsive. The full file is still processed in full on export.
Erse detects each file's text encoding, byte-order mark (BOM), and line endings — LF (Unix), CRLF (Windows), or CR — and preserves them on export. An empty rule stack writes a byte-identical copy.
If a transformation introduces characters the original encoding can't represent, Erse promotes the file to UTF-8 so no data is lost, and tells you it did so.
Erse ships with built-in presets for common jobs: Tidy Whitespace, Sort & Dedupe Lines, and lowercase Everything. Click a preset to load its rule stack and apply it immediately.
To save your own, build a rule stack, click Save Preset, and name it. Your custom presets appear alongside the built-in ones and persist between sessions.
By default Erse saves transformed copies with a “-erse” suffix, leaving your sources untouched. You can choose to overwrite the originals instead, or pick a different destination and naming template. When an output name already exists, Erse asks how to resolve the conflict — keep both, overwrite, or skip.
Made a mistake? Undo the last apply moves every file written in that run to the Trash and restores anything it overwrote, in one action.
{number} and {text} handle most “match a run of digits or letters” jobs without a regular-expression cheat sheet.What file types can Erse open?
Plain-text files including .txt, .csv, .tsv, .log, and Markdown (.md). Any UTF-8 or common-encoding text file will work.
Does Erse change my original files?
Not by default — it writes new copies with a “-erse” suffix. You can opt to overwrite originals, and even then a single Undo restores them.
Do I need to know regular expressions?
No. Most jobs are covered by literal find & replace and simple wildcards. Regular expressions are available when you want them, but they're never required.
Will Erse mangle my Windows line endings?
No. Erse detects and preserves CRLF, LF, or CR exactly as the file had them, so output files stay compatible with the tools that read them.
A rule isn't changing anything
Check the rule's scope and that it's enabled. A whole-document rule won't behave the same as a per-line one, and a disabled rule is skipped in both the preview and the export.
My export shows a UTF-8 conversion notice
A transformation introduced a character the file's original encoding couldn't store, so Erse saved it as UTF-8 to avoid losing data. This is expected and safe.
The Combine rule can't find its second file
On macOS, re-select the file in the Combine rule so Erse can re-establish access to it. Moving or renaming the combined file after you picked it can break the reference.