ToolJovia
Files

ANSI Styled Log Exporter

Export selected ANSI SGR log colors and emphasis as standalone HTML with original source-span evidence, without running a terminal.

✓ Browser-local processing
Files are read locally and are not uploaded.

Loading tool…

How to use ANSI Styled Log Exporter

Share a readable original build or test log while keeping selected color/emphasis changes and the text they affected. A bounded state machine records every accepted style event, exact source ranges and normalized text runs, then exports an inert standalone HTML document. Source HTML, commands and hyperlinks remain literal text; the tool site displays the evidence and downloadable source without mounting the log as active content.

  1. Choose an actual UTF-8 log file or paste the original source containing real ESC SGR sequences. A selected file takes precedence over pasted text.
  2. Choose a page background and run the complete selected-profile parse. Inspect original source spans, style events and normalized plain text.
  3. Download the standalone HTML or evidence JSON. Open and verify the separate artifact before sharing it; it is not a terminal recording, color calibration or secret-removal service.

Good to know

  • One optional strict UTF-8 file of at most 200,000 bytes, or up to 50,000 UTF-16 source code units. A leading BOM is ignored only for display and remains in evidence. CRLF becomes LF; bare CR is refused. LF and HTAB are retained; HTML uses CSS tab-size 8 and does not model terminal cell widths or tab stops. Title is nonblank single-line text up to 160 characters.
  • Only real ESC [ decimal/semicolon m SGR sequences are accepted. Each sequence is at most 64 characters and 16 parameters; parameters have at most three digits, with an empty parameter meaning 0. Literal backslash-x1b text is not decoded as ESC. Up to 1,000 sequences, 1,001 text runs and 256 distinct effective styles are allowed.
  • Selected emphasis codes are 0, 1, 3, 4, 7, 9, 22, 23, 24, 27 and 29. Foreground/background support 30–37, 40–47, 90–97, 100–107, defaults 39/49, and explicit 38/48;2;r;g;b RGB components from 0 through 255. The first 16 colors use the fixed palette reported in JSON, not the palette or font of your terminal. Background choices are local presentation modes.
  • Indexed 256 colors, colon subparameters, dim, blink, conceal, alternate fonts, OSC/hyperlinks, cursor/erase commands, backspace, BEL, C1 controls, bare CR/overprinting and device responses are outside this profile. Any unknown or unsupported control rejects the entire output rather than being silently stripped. This is deliberately not a complete ANSI/xterm/ECMA-48 emulator.
  • The report retains original input, per-event controls and per-run original UTF-16 end-exclusive source ranges. Display text normalizes CRLF and removes only accepted style controls plus one initial BOM. Runs retain Unicode and source HTML as literal text. Logs may contain credentials/private content; no automatic redaction, anonymization or persistent storage occurs.
  • Standalone HTML uses escaped text, generated classes, fixed CSS properties and bounded numeric color values, with an exact stylesheet SHA-256 policy. It contains no executable script, links, external resources or user markup. Web Crypto SHA-256 is required. The product page never renders user HTML or relaxes its policy. HTML and readable evidence are each capped at 1,000,000 characters. Real browser font/layout/CSP and printing require separate checks; no exact terminal screenshot or calibrated-color claim.
  • Processing is local. Output is limited to 1,000,000 text characters unless a stricter file limit is stated.

Common questions

Will an escape sequence open a link, move a cursor or execute a command?

No. Only the listed style controls are parsed as data. Unknown terminal controls, including OSC links and cursor commands, refuse the whole input. The separate artifact contains escaped text and bounded generated styles only; the tool never opens a terminal, shell, URL or source program.

Is this input sent to a server?

No. The application processes this input inside your browser tab and does not save it to persistent storage.

Keep going with related tools

All files →