BigText

Open huge text files instantly

1 GB, 10 GB, 50 GB and beyond — no freezing, no waiting.

BigText is a free, open-source desktop editor for log files, CSV exports, database dumps and any other file that is too big for ordinary editors. It never loads the whole file into memory: a 10 GB log opens in milliseconds and uses about 100 MB of RAM.

Windows · Linux · macOS · MIT license · Written in Rust

BigText showing line 45,357,933 of a 10 GB log file with log highlighting; the performance overlay reports 99 MB of private memory
  • 41 msto the first screen of a 50 GB file
  • 2.5 GB/sfull-text search speed
  • 107 MBof RAM with a 50 GB file open
  • < 3 msUI frame time while indexing

Everything you need for giant files

Made for logs, CSV and SQL dumps, JSON exports and any text file that makes other editors hang.

Opens files of any size

Only the visible part is read, through memory-mapped windows. Background work streams the rest, and network or USB drives fall back to cached chunked reads, so a slow disk never blocks the window.

Instant go to line

A sparse line index (8 bytes per 64 KB) is built in the background at 2.5 GB/s. Go to line and the scrollbar work immediately, even before indexing finishes.

Fast search and regex

Plain text at 2.5 GB/s and linear-time regular expressions with case, whole-word and multiline options. Find All lists up to a million results; F3 works right away.

Replace across gigabytes

Replace with $1 and named groups. Up to 50,000 changes are one undoable edit; bigger jobs stream to a new file: 22 million replacements in a 10 GB file took 11 s and 46 MB of RAM.

Real editing

Type, cut, copy, paste, undo and redo, duplicate or delete lines, auto-indent — on top of a piece table, so edits never rewrite the file until you save.

Crash-safe saving

Saving writes a temporary file, flushes it to disk and atomically replaces the original. A crash or power cut never leaves a half-written file. Optional .bak backups.

Encodings and hex view

UTF-8, UTF-16 LE/BE, Windows-1251, Windows-1252 and ISO-8859-1 are detected automatically; LF, CRLF and CR line endings are kept or converted. Binary files open in a hex view.

Tools for logs

Follow mode (like tail -f) for growing logs, syntax highlighting for logs, JSON, XML, CSV, SQL and INI, bookmarks and a split view of one file.

Compare huge files

A streaming line diff of two multi-gigabyte files: 1 GB against 1 GB in 0.6 s using about 2 MB of memory. Click a difference to jump to it.

Filter and highlight

Show only the lines that match, or only those that don't, like grep over the whole file, and save them to a new file. Paint patterns such as ERROR in their own colours and see on the scrollbar where the matches cluster.

Jump to a time

Type 14:32:05 and land on the first log line at that time: a binary search reads a few hundred kilobytes of a 50 GB log. Select lines to see the time between them.

Compressed logs and pipes

Open .gz and .zst files directly, pipe a command into BigText (journalctl -f | bigtext -), or open app.log:120 at a line from the command line.

CSV tables

CSV and TSV files open as a table that scrolls as fast as text. Sort by a column, get column statistics, filter by a column, and rename, move, export or delete columns.

Text tools

Sort, de-duplicate and reverse lines, change case, trim whitespace, pretty-print or minify JSON, and edit many lines at once with an Alt+drag column selection.

Your way

A command palette (Ctrl+Shift+P), shortcuts you can change, any monospaced font, and an interface in English, Russian or Uzbek.

Log analysis

A level bar with ERROR, WARN, INFO and DEBUG filters and F8 to the next error, a time histogram, log fields, message patterns, top values, time gaps, and the lines around each match or with the same request id.

Logs side by side in time

Merge several logs by timestamp into one coloured view, or line up the open logs and scroll them together by time, with a clock skew you can set. Following survives log rotation.

JSON and XML

A structure panel, the JSON path of the caret in the status bar, folding, JSON Lines as a table with queries, a strict check that points at the error, conversion between JSON, JSON Lines and logfmt, and a structural diff.

Tables that calculate

Group by with sums, pivot tables, a join of two files by a key, computed columns, column charts, frozen and hidden columns, row checks, and export to JSON, Markdown or Excel.

Compare your way

Side by side or as a unified diff, next and previous difference, ignore white space, case or timestamps, lines found in only one file, CSV compared by key, and patches applied.

Archives and big edits

Files inside zip and tar archives, .xz and .bz2 files shown while they unpack, saving straight to .gz or .zst, multiple cursors, a column editor, and sort, de-duplicate or run any command on a file of any size.

Find in files and scripts

Search a whole folder with file:line results, and use bigtext-cli for count, head, tail, slice, replace, CSV tools and JSON output in scripts. Sessions, portable mode, and a second launch opens in the running window.

Comfortable for everyone

High-contrast and colour-blind-safe themes, interface scaling, screen reader support, zen mode, wrapping at a column with a ruler, a clickable status bar, and settings remembered for each file.

Screenshots

How BigText stays fast

Ordinary editors read the entire file before they show anything. BigText reads only what is on screen and does everything else on background threads, so the window answers in under 3 ms.

Memory-mapped windows

The file is mapped in 256 MB windows and only the bytes you look at are touched. Search, indexing and saving use separate streaming reads.

Sparse line index

One 8-byte checkpoint per 64 KB: 8 MB of index for a 50 GB file. Line positions between checkpoints are counted on demand with SIMD.

Piece table

Edits are stored as small pieces over the original file, so inserting a line into a 50 GB file costs a few bytes, and undo is instant.

Atomic save

A temporary file next to the original, fsync, then an atomic replace (ReplaceFileW on Windows keeps attributes and permissions).

Measured performance

Results of the built-in benchmarks on 1 GB, 10 GB and 50 GB test files on Windows 11. The method and the full results are in the README. README

TaskResult
Open → first screen of text (1–50 GB)41–46 ms
Jump to a line in a 50 GB fileunder 1 ms
Build the line index2.2–2.7 GB/s (50 GB in about 20 s)
Plain-text search2.4–2.5 GB/s
Regex search2.3–2.8 GB/s with a literal part, 672 MB/s without
Replace All in a 10 GB file11.3 s, 46 MB peak memory
Memory with a 50 GB file open107 MB
Start → first frame159–185 ms

Download BigText

Free for personal and commercial use. No account, no telemetry, one executable.

Linux x64

An AppImage that runs on most distributions, a .deb package for Debian and Ubuntu, or a portable .tar.gz.

macOS

BigText.app for Apple Silicon and Intel. The app is not signed: right-click → Open on first launch.

All releases and release notes

Install with Cargo

Install Rust from rustup.rs, then run:

cargo install bigtext

Or build it from source:

git clone https://github.com/Erkinbek/bigtext.git
cd bigtext
cargo build --release

Frequently asked questions

How do I open a 50 GB text file?

Install BigText and open the file with File → Open, by dragging it onto the window, or with right-click → “Open with BigText”. The first screen appears in about 40 ms whatever the size; scrolling and go to line work while the line index is built in the background.

Does BigText load the whole file into memory?

No. It maps only the part on screen and streams everything else in the background. With a 50 GB file open it uses about 107 MB of RAM, most of which is the user interface itself.

Can I edit and save very large files?

Yes. Edits are kept in a piece table over the original file, so typing is instant at any size. Saving streams the result to a temporary file and replaces the original atomically, so the original is never damaged if something goes wrong.

How fast is search in huge files?

Plain text is searched at 2.4–2.5 GB/s and typical regular expressions at 2.3–2.8 GB/s, so a 10 GB log takes about 4 seconds. F3 finds the next match immediately, without waiting for a full search.

Can it follow a growing log file like tail -f?

Yes. View → Follow keeps the view at the end of the file and indexes new lines as they arrive. BigText also notices when a file changes on disk and offers to reload it.

Can it open a file that is one huge line, like minified JSON?

Yes. Lines longer than 64 KB are shown as soft-broken rows, so even a single 2 GB line scrolls smoothly.

Which encodings and line endings are supported?

UTF-8, UTF-16 LE/BE (with or without BOM), Windows-1251, Windows-1252 and ISO-8859-1, detected automatically and switchable with File → Reopen with encoding. LF, CRLF, CR and mixed line endings are detected and can be converted on save.

Is BigText free, and which systems does it run on?

BigText is free and open source under the MIT license. Windows 10 and 11 is the main, fully tested platform; Linux and macOS (Apple Silicon and Intel) builds are made and tested by CI on every change.