cargo-spellcheck
cargo-spellcheck copied to clipboard
Checks all your documentation for spelling and grammar mistakes with hunspell and a nlprule based checker for grammar
cargo-spellcheck
Check your spelling with hunspell
and/or nlprule
.
Use Cases
Run cargo spellcheck --fix
or cargo spellcheck fix
to fix all your
documentation comments in order to avoid nasty typos all over your source tree.
Meant as a helper simplifying review as well as improving CI checks after a
learning phase for custom/topic specific lingo.
cargo-spellcheck
is also a valuable tool to run from git commit hooks or CI/CD
systems.
Check For Spelling and/or Grammar Mistakes
cargo spellcheck check
error: spellcheck
--> src/main.rs:44
|
44 | Fun facets shalld cause some erroris.
| ^^^^^^
| - shall or shall d
|
Apply Suggestions Interactively
cargo spellcheck fix
error: spellcheck(Hunspell)
--> /media/supersonic1t/projects/cargo-spellcheck/src/literalset.rs:291
|
291 | Returns literl within the Err variant if not adjacent
| ^^^^^^
(13/14) Apply this suggestion [y,n,q,a,d,j,e,?]?
lite
litter
litterer
liter l
liters
literal
liter
» a custom replacement literal
Installation
cargo install --locked cargo-spellcheck
The --locked
flag is the preferred way of installing to get the tested set of
dependencies.
Completions
cargo spellcheck completions
for autodetection of your current shell via
$SHELL
,
or
cargo spellcheck completions --shell zsh
to explicitly specify your shell type.
Commonly it's use like this from your shell's .rc*
file:
source <(cargo spellcheck completion)
Note: There is a relevant clap issue (#3508) that makes this fail in some cases.
🎈 Contribute!
Contributions are very welcome!
Generally the preferred way of doing so, is to comment in an issue that you would like to tackle the implementation/fix.
This is usually followed by an initial PR where the implementation is then discussed and iteratively refined. No need to get it all correct the first time!
Documentation
- Features and Roadmap
- Remedies for common issues
- Configuration
- Available Checkers
-
Automation of
cargo-spellcheck