Version 0.2.0 behavior is documented here. Thesupport record separates local verification frompublished MoonX behavior; moonx examples use registry releases.
Edit byte-oriented text streams with p, d, q, =, and substitutions/REGEXP/REPLACEMENT/. Hold-space commands h/H/g/G/x, labels and branches:/b/t/T, nested addressed groups, and n/N/P/D/a/i/c are available.Read stdin when no input file is given or an operand is -. Multiple inputfiles share line numbering, address ranges and thelast-line address $.
-n/--quiet/--silent suppresses automatic output. Use repeated -e/--expressionand -f/--file options to combine scripts in order. -E or -r selects extendedregular expressions; basic expressions are the default. A first-line #ncomment also disables automatic output.
Addresses accept positive line numbers, $, /REGEXP/, two-address rangesand ! inversion. Substitution supports &, replacement captures \1 through\9, g, a positive occurrence number, and p. An empty expression reusesthe last executed regular expression. Unterminated input records retain theirmissing final newline; later output inserts the required record separator.
Pattern and hold spaces retain their final-newline state. Branches use the lastdefinition of a label; t/T consume substitution success, and a new input readresets it. D restarts without reading. Appended text is deferred to the inputcycle boundary; inserted text is immediate. Multiple files share these states.Scripts compile before input is opened, including label and group resolution.
The shared C-byte BRE/ERE matcher supports pattern backreferences, byte classesand word assertions. Repeated nullable captures follow the tested GNU candidateand capture-register selection, including counted repeats and references. See theworkspace support record.In-place editing and locale-aware matching remain outside this profile.Unsupported syntax is rejected before input is processed.--help and --version are available. Exit status is 0 on success, 1 for aninvalid script or evaluation error, 2 for an unreadable input file, and 4 for amissing branch label. Diagnostics follow the project's format rather than GNU'sscript-position wording. Pattern/hold growth and branch termination are controlledby the script; no hidden execution-step limit is imposed.
Standalone --version prints exactly sed 0.2.0 followed by onenewline. Standalone --help starts with Usage: sed, lists bothmetadata options, and ends with a newline. Both write to stdout, leave stdinunread, and exit with status 0. Exact-version publication and verificationremain recorded separately in the support record.