60 lines
1.6 KiB
Groff
60 lines
1.6 KiB
Groff
.TH GASM-FMT 1 "2026-09-19" "gasm" "User Commands"
|
|
.SH NAME
|
|
gasm-fmt \- canonicalise the formatting of Plan 9 assembly sources
|
|
.SH SYNOPSIS
|
|
.B gasm fmt [\-w|\-l|\-d] [path...]
|
|
.SH DESCRIPTION
|
|
Canonicalise the formatting of Plan 9 assembly sources: indentation,
|
|
operand spacing, per-function mnemonic alignment and blank-line layout
|
|
(exactly one blank line before each label, TEXT and GLOBL block).
|
|
Formatting is idempotent and preserves every line, comments included.
|
|
.PP
|
|
With no paths, or a directory path, every
|
|
.I .s
|
|
file below it is reformatted in place and the changed files are listed,
|
|
the way
|
|
.B go fmt
|
|
does;
|
|
.B .
|
|
and
|
|
.B _
|
|
directories are skipped. Explicit file paths print to stdout unless
|
|
.B \-w
|
|
is given.
|
|
.PP
|
|
.B \-l
|
|
and
|
|
.B \-d
|
|
rewrite nothing:
|
|
.B \-l
|
|
prints the paths whose formatting differs from gasm's (empty output
|
|
means everything is formatted, which is what a CI check wants),
|
|
.B \-d
|
|
prints the diffs. They are mutually exclusive.
|
|
.SH OPTIONS
|
|
.TP
|
|
.B \-d
|
|
Print diffs instead of rewriting files.
|
|
.TP
|
|
.B \-l
|
|
List files whose formatting differs from gasm's.
|
|
.TP
|
|
.B \-w
|
|
Write the result to the source file.
|
|
.SH EXIT STATUS
|
|
Exits 0 on success, 1 when a path cannot be read or written, and 2 on a
|
|
usage error (combining
|
|
.B \-l
|
|
and
|
|
.BR \-d ,
|
|
or an unknown flag).
|
|
.SH EXAMPLES
|
|
.nf
|
|
gasm fmt reformat every .s below here
|
|
gasm fmt \-w kernel_amd64.s canonicalise one file in place
|
|
gasm fmt \-l *.s list files whose formatting differs
|
|
gasm fmt \-d kernel_amd64.s print a unified diff instead
|
|
.fi
|
|
.SH SEE ALSO
|
|
.BR gasm (1)
|