Volt
00000000

Guide

The best way to open a big file on a Mac

less will show you a 4 GB log instantly. Nothing on your Mac will let you change a line of it and save it back — which is the part that matters, and the part Volt was built for.

The short answer

For a quick look at a big log, less is already installed and already instant. For everything else — changing a line and saving it back, a file that is not UTF-8, a file with no line endings at all — that is what Volt is for, and it is the only one on this page that publishes a benchmark you can reproduce on your own file: 4.23 GB open in 2 milliseconds, on a few megabytes of memory.

Where the usual answers stop

What you probably useWhere it stopsWhat Volt does instead
less, tail Instant on any size, and the right answer for a look. Cannot edit, cannot save. Opens just as fast and lets you change the line, then writes it back in the character set and line ending the file arrived with.
grep, ripgrep Very fast over bytes, but there is no document afterwards — every question costs another full pass. Literal search at 2.8 GB/s, and it keeps what it learned, so the next jump, search and scroll in that file is instant.
split Leaves you with a directory of fragments and no way to save a change back into the original. One file, opened whole, edited in place.
Visual Studio Code Excellent for everyday work, but it is a browser engine and a Node runtime around a text box, and it reads the file into memory to work on it. Swift and the system frameworks, no third-party code: one binary of about six megabytes, and past a size you set it does not read the file at all.
Sublime Text Genuinely fast and native, with a strong plugin ecosystem for ordinary editing. Adds the part a general editor has no reason to have: 219 character sets, 62 EBCDIC code pages, nine line endings, mainframe records.
BBEdit The Mac editor with a real reputation for big files, and the closest thing here to a direct comparison. Volt is narrower and says so with numbers: 2 ms to open 4.23 GB, 41 µs to read a random line, a few megabytes of memory. Run Volt --benchmark against whatever you use and compare.
Vim / Neovim At home over SSH, and better on large files than most — with the right settings turned off. A Mac application with a gutter, split view, multiple cursors and a preview — and a Vim mode, with registers, marks and macros, for the hands that already know it. It opens files on your servers too, over the ssh you already use.

What none of them do at all

The comparison above is about speed, which is where most of these tools at least compete. This part is not a comparison, because there is nothing to compare against.

  • EBCDIC, in sixty-two code pages, read and written, with the page chosen by which reading looks most like language. How that works.
  • Files with no line endings. IBM RDW records and fixed-width 80- and 132-column extracts become lines when they open and go back as records when they save. More on mainframe files.
  • Nine kinds of line ending, NEL and LS and PS among them — which is why a mainframe export opens as lines here and as one enormous line elsewhere.
  • 219 character sets detected with the evidence shown, and converted on save only when you ask.
  • Invisible and dangerous characters found and removed as one undoable change: zero-width characters, bidirectional controls — the Trojan Source attack — homoglyphs, stray controls, a trailing Ctrl-Z.

The numbers, and how to check them

OperationTimeOn a 4.23 GB, 50.4 M line log
Open the file2 msCharacter set and line ending settled
Read a random line41 µsLine 40 million as quickly as line 40
Literal search1.50 s2.8 GB/s; 0.52 s when the needle is absent
First regex match12 msNever over a decoded copy of the file
Memory while opena few MBFor a file of 4.23 GB

For scale, rg -F -j 1 — a dedicated search tool with no editable document to keep — takes 1.55 s and 0.69 s on the same file and machine. Every figure comes from Volt --benchmark, which runs on your own file, so none of this has to be taken on trust.

Two things worth saying plainly, since we make Volt: the figures above are ours and measured on our file — the descriptions of other editors are descriptions, not benchmarks we ran against them, so run your own. And Volt is macOS 13 or later on Apple silicon, in private beta, with no extension marketplace: if your files are small and ordinary, the editor you already have is fine.

Questions

Which Mac editor is best for very large files?

For reading only, less is already installed and opens anything instantly. For editing, Volt is built for the case: a 4.23 GB log of 50.4 million lines opens in 2 milliseconds on a few megabytes of memory, a random line reads in 41 microseconds, and literal search runs at 2.8 GB/s. Every figure is reproducible with Volt --benchmark on your own file.

Is Volt faster than BBEdit on large files?

Volt publishes its numbers and they are reproducible: 2 milliseconds to open 4.23 GB, 41 microseconds for a random line, 2.8 GB/s for literal search, single-digit megabytes of memory while the file is open. We have not benchmarked BBEdit and will not publish a figure we did not measure — run Volt --benchmark against whatever you use now.

Why not use VS Code with an extension?

Because the difference is structural rather than a missing feature. Visual Studio Code is built on Electron, so the download contains a browser engine and a Node runtime, and it reads a file into memory to work on it. Volt is one binary of about six megabytes, written in Swift with no third-party code, and past a size you set it does not read the file at all.

What can Volt open that other editors cannot?

EBCDIC in sixty-two code pages, read and written. IBM RDW and fixed-width 80- and 132-column records, which have no line endings at all. Nine kinds of line ending including NEL, LS and PS. 219 character sets in total, detected with the evidence shown and converted only when you ask.

Is Volt free?

It is in private beta and free for the people in it. Pricing is not settled; the waitlist hears about it first and is asked before it is decided.

Try it on your own file

Volt is in private beta. Join the waitlist and you will be invited when the next round goes out — one email, and then one question about what to build next.

Join the waitlist