.glua.json is validated against
glua.bluejutzu.dev/schemas/glua.schema.json,
the same schema glua init and GLua: Create Linter Config File point
$schema at. This page documents every property it accepts. For a shorter,
example-first walkthrough see Config Files.
The schema sets
additionalProperties: false at every level shown below, so
a typo’d key is flagged in your editor rather than silently ignored.Top level
format
Only these keys have any effect here: maxLineWidth, quoteStyle,
operatorStyle, commentStyle, spaceInsideParens, keepSingleLineBlocks,
maxBlankLines, semicolons. The schema does not reject the rest of
.gluafmtrc.json’s keys here, but
useTabs, indentSize and endOfLine are silently ignored when written
inside .glua.json — indentation and line endings come from your editor (or
.editorconfig) instead. Put those two in an actual .gluafmtrc.json file if
you need to pin them for the whole team.
diagnostics
Every property accepts a severity — "error", "warning", "information",
"hint" or "off" — except enable and scope, which are about how the
server runs rather than any one rule. See the
rule reference for what each rule actually catches; the
settings key here is the same one shown under each rule there.
workspace
workspace.gamePath completes and checks asset paths against a full Garry’s Mod install. It is not part of this schema — set it as the VS Code setting glua.workspace.gamePath instead, described on the Asset Paths page.