Docs menu

No non-printable control characters

WARN Frame encoding/no-non-printable

Warn on C0 control characters (U+0000–U+001F, excluding tab / LF / CR) and C1 control characters (U+0080–U+009F). These typically arrive from raw paste of terminal output, screen capture, or copy-from-PDF; they render invisibly but break diff / grep / search / JSON encoding.

A frequent source is the literal ESC byte (U+001B) leaked from ANSI color codes when log output is pasted into source.

Severity WARN, not BLOCK, because rare binary fixtures legitimately contain control bytes.

Fix#

Remove the offending bytes:

LC_ALL=C sed -i 's/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f-\x9f]//g' <file>

Or for the specific ESC byte from ANSI:

sed -i 's/\x1b\[[0-9;]*[A-Za-z]//g' <file>

WARN lets the push through and records the finding. Turn frames on per repo on the dashboard's Policy page - see choosing what the gate checks.

Source on GitHub Live demo How it works Questions: contact@nimblegate.com