id = "proselint" name = "proselint" homepage = "https://github.com/amperser/proselint" # The project's own repository description. description = "A linter for prose." # The square mark from the project's own site assets; the logo.png beside it # is a wordmark. icon = "https://raw.githubusercontent.com/amperser/proselint/main/site/images/android-icon-192x192.png" executables = ["proselint"] [dotfiles] # The project's own README documents the search order — the path given to # `--config`, then `proselint.json` in the working directory or any parent, # then "$XDG_CONFIG_HOME/proselint/config.json, defaulting to # ~/.config/proselint/config.json if XDG_CONFIG_HOME is not set". Only the last # is under the user's home, and because proselint reads the variable itself it # is [configHome] rather than a hard-coded ~/.config — the XDG spelling on # macOS too. paths = ["[configHome]/proselint/config.json"] exclude = [] # A map of check names to booleans, plus `max_errors`. No account, no # credential. secret = [] # Read once per run, so a rewrite between runs is harmless. side_effect = false # No machine_lines: every key is which style check to enable, which is exactly # what a writer wants to follow them between machines. [commands] format = 1 label = "Check prose" description = "Lint one or more text files with proselint and print suggestions. Only the check command and config/output options are covered." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false } [[commands.source]] id = "readme" kind = "help" url = "https://github.com/amperser/proselint" revision = "2026-10-27" evidence = """ proselint check text.md The command-line utility can also print suggestions in JSON using the `--output-format json` option. 1. The file given by the `--config` flag, if specified """ [[commands.field]] id = "check" label = "Check command" fixed = ["check"] sources = ["readme"] [[commands.field]] id = "files" label = "Files" type = "path" path = { kind = "file", role = "input" } position = 0 multiple = true min = 1 sources = ["readme"] [[commands.field]] id = "output_format" label = "Output format" type = "enum" option = ["--output-format"] choices = [{ value = "json", label = "JSON" }] sources = ["readme"] [[commands.field]] id = "config" label = "Config file" type = "path" path = { kind = "file", role = "input" } option = ["--config"] sources = ["readme"] [[commands.task]] id = "check_files" label = "Check files" fields = ["files", "config"] required = ["files"] [[commands.task]] id = "check_json" label = "Check, JSON output" fields = ["files", "output_format"] required = ["files", "output_format"] set = { output_format = ["json"] } [[commands.group]] id = "basic" label = "Basic" fields = ["check", "files", "output_format", "config"]