Skip to content
lawlint
Esc
navigateopen⌘Jpreview
On this page

File formats

How lawlint reads plain text, Markdown, and Word documents — and what it preserves when it writes them back.

The CLI and desktop app lint plain text, Markdown, and Word documents.

Format Extensions Notes
Plain text .txt, anything else Linted verbatim.
Markdown .md Fenced code blocks are skipped automatically.
Word .docx Text is projected out for linting; --fix writes back tracked changes.

Passing - — or no file at all — reads stdin.

Markdown

For a .md file, lawlint strips fenced code blocks before linting, so a code sample full of em dashes and delve never produces findings.

Piped input has no filename to infer from, so ask for it:

cat draft.md | lawlint --markdown

Word documents

.docx files are read into the same text model as everything else. With --fix, machine-applicable fixes are written back as native Word tracked changes, each accompanied by a review comment naming the rule — so every change lands in Word’s normal review flow and can be accepted or rejected one at a time.

Everything else in the document is preserved byte for byte: styles, numbering, headers, embedded images, and any tracked changes already in the file.

Stdin

cat memo.txt | lawlint - --format json
lawlint < memo.txt

Reading stdin is what makes lawlint composable in editors and pipelines — see Continuous integration. Since there is no file to write back to, --fix has nothing to modify; use --format prompt or --diff instead.

Last updated on July 24, 2026