ludic fmt for editors: --lint --json, and a buffer on stdin (R9)
ludic-fmt --lint --json prints the violations --lint reports as one JSON array on stdout,
[{file, line, col, rule, message}] ordered by file, line and column (col where the rule knows it),
the summary on stderr, --lint's exit status, and never rewrites the baseline. ludic-fmt - refuses a
buffer that does not read as Ludic (a string/template/key literal left open, a bracket never closed
or closed by the wrong one) with exit 2 and name:line:col on stderr; - --lint judges a buffer as the
file --stdin-name names (--stdin-rel: that path relative to the project), against its baseline and
lint paths. ludic fmt --lint and ludic fmt - run it from the nearest package.ludic upwards (from
--stdin-name's directory when given). Hooks read nothing and write to stderr under --json or -.
Regression cases added to test-tools and ludic-dev test (fmt_editor_cases), not run.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
c804c4b0ee
commit
047bdf4189
13 changed files with 405 additions and 17 deletions
|
|
@ -79,6 +79,9 @@ program Ludic {
|
|||
print(" upgrade [version] reinstall from the docs site (the same script that installed it)")
|
||||
print(" doctor check that the install is complete and usable")
|
||||
print(" fmt [--check] [paths...] format Ludic source in place (--check: report, write nothing)")
|
||||
print(" fmt --lint [--json] check the project's `lint` rules (--json: one JSON array on stdout)")
|
||||
print(" fmt - [--stdin-name PATH] format stdin to stdout under the project's rules, as if it were PATH")
|
||||
print(" fmt - --lint [--json] [--stdin-name PATH] lint stdin as PATH")
|
||||
print(" lsp run the language server on stdio (what editors spawn)")
|
||||
print(" ui-preview [--font DIR] preview a game's ludic.ui components for a studio, on stdio")
|
||||
print(" help this message")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue