项目作者: drahnr

项目描述 :
Checks all your documentation for spelling and grammar mistakes with hunspell and a nlprule based checker for grammar
高级语言: Rust
项目地址: git://github.com/drahnr/cargo-spellcheck.git
创建时间: 2020-05-14T12:11:02Z
项目社区:https://github.com/drahnr/cargo-spellcheck

开源协议:Other

下载


cargo-spellcheck

crates.io
CI
commits-since
Crates.io MSRV

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

  1. cargo spellcheck check
  1. error: spellcheck
  2. --> src/main.rs:44
  3. |
  4. 44 | Fun facets shalld cause some erroris.
  5. | ^^^^^^
  6. | - shall or shall d
  7. |

Apply Suggestions Interactively

  1. cargo spellcheck fix
  1. error: spellcheck(Hunspell)
  2. --> /media/supersonic1t/projects/cargo-spellcheck/src/literalset.rs:291
  3. |
  4. 291 | Returns literl within the Err variant if not adjacent
  5. | ^^^^^^
  6. (13/14) Apply this suggestion [y,n,q,a,d,j,e,?]?
  7. lite
  8. litter
  9. litterer
  10. liter l
  11. liters
  12. literal
  13. liter
  14. » 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.

on OS X, you need to ensure that libclang.dylib can be found by the linker

which can be achieved by setting DYLB_FALLBACK_LIBRARY_PATH:

  1. export DYLD_FALLBACK_LIBRARY_PATH= \
  2. "$(xcode-select --print-path)/Toolchains/XcodeDefault.xctoolchain/usr/lib/"

In Linux, the file is libclang.so which can be installed via:

  1. apt-get install libclang-dev

Afterwards, you can set the variable LIBCLANG_PATH via:

  1. export LIBCLANG_PATH=/usr/lib/llvm-14/lib/

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 completions)

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