mod lint#
- module lint#
Vale and Harper lint for the markdown corpus (CLI + in-process harper-core).
Functions
- fn binary_available(name: &str) -> bool#
Check whether a binary is on PATH and responds successfully to
--versionor--help.
- fn format_report(report: &LintReport) -> String#
Format a human-readable report to a string.
- fn harper_binary_name() -> Option<&'static str>#
Resolve which binary name to use for Harper CLI (optional fallback).
- fn harper_command_args(paths: &[PathBuf]) -> Vec<String>#
Construct Harper CLI args (best-effort across harper-cli naming).
- fn harper_core_available() -> bool#
In-process harper-core is always linked in this build.
- fn lint_paths(paths: &[PathBuf], engine: LintEngine) -> Result<LintReport>#
Lint the given paths with the selected engine(s). Missing optional tools produce explicit entries in
report.missingand do not panic. Harper always uses in-processharper-corewhen the Harper engine is selected.
- fn lint_text_harper_inprocess(text: &str) -> Vec<LintFinding>#
Lint a single text buffer with in-process harper-core (unit-testable pure path).
Spelling hits on domain vocabulary (Jira, Tantivy, …) are suppressed so CI can gate published responses without false positives on tooling jargon.
- fn vale_command_args(paths: &[PathBuf]) -> Vec<String>#
Construct the Vale command line for the given paths (tested without running Vale).
Enums
- enum LintEngine#
Which external (or in-process) lint engine to run.
- All#
Run Vale (if present) and Harper (in-process, plus CLI if present).
- Vale#
Run only Vale.
- Harper#
Run Harper via in-process
harper-core(and optional CLI if on PATH).
Structs and Unions
- struct LintFinding#
One lint finding from any engine.
- engine: String#
- path: String#
- message: String#
- severity: String#
- line: Option<u32>#
- struct LintReport#
Aggregated report from one or more engines.
- findings: Vec<LintFinding>#
- ran: Vec<String>#
Engines that ran successfully.
- missing: Vec<String>#
Engines that were requested but missing (explicit messages).
Implementations
- impl LintReport#
Functions
- fn is_clean(&self) -> bool#
- fn summary_line(&self) -> String#