10 releases (5 breaking)

0.6.2 Nov 14, 2020
0.6.1 Jan 6, 2020
0.5.0 Jan 5, 2020
0.4.1 Jan 4, 2020
0.1.0 Jan 2, 2020

#1818 in Command line utilities

24 downloads per month

MIT license

2.5MB
492 lines

stava Crate Status Build Status codecov

CLI tool to perform spell checking.

Rust implementation of Peter Norvig's Spell Corrector.

USAGE:
    stava [FLAGS] <WORD> [FILES]...

FLAGS:
    -d, --default           Include default set of words (default: false)
    -o, --exit-code-only    Only return exit code and not corrected word (default: false)
    -e, --exit-code         Exit with 1 if word is not spelled correctly, otherwise 0 (default: false)
    -h, --help              Prints help information
    -V, --version           Prints version information

ARGS:
    <WORD>        Word to correct
    <FILES>...    Files to learn words from
  • The default file contains ~30k unique words and is included in the crate
  • If needed you can pass in one or many of your own files
  • The files doesn't require any certain formatting (except whitespace separated words) and special characters are allowed, stava knows how to ignore them

Currently stava only supports the English alphabet.

Installation

$ cargo install stava

Usage

Use the default set of words

$ stava bycycle
bicycle

Use your own files

$ echo "bicycle" > words.txt
$ echo "some other words" > words2.txt
$ stava bycycle words.txt words2.txt
bicycle

Use your own files and the default set of words

$ echo "some words" > words.txt
$ stava --default mankey words.txt
monkey

With exit code

$ stava --exit-code bycycle  # Word is corrected so exit code = 1
bicycle
$ echo $?
1
$ stava --exit-code-only bycycle  # Word is corrected so exit code = 1
$ echo $?
1
  • If multiple candidates are found, the one occurring the most in the provided files are returned
  • If no candidate is found the input word is returned

Dependencies

~4.5–6.5MB
~110K SLoC