文書Documentation
Migrating
Moving to Kotoshu from hunspell, aspell, cspell, or LanguageTool — what transfers, what needs a step, and what is not there yet.
Bringing your words with you is a command or two; bringing your workflow depends on the tool you are leaving.
移行Migrate
From hunspell
Bring your own dictionaries. Register the .aff/.dic pair you already have and nothing is re-downloaded:
kotoshu setup en --aff en_US.aff --dic en_US.dic
# or point at a directory — it expects LANG.aff and LANG.dic
kotoshu setup en --from /usr/share/hunspell/Because the engine reimplements the Hunspell algorithms — in twin Ruby and Rust implementations held byte-identical by a frozen conformance contract, with behavior tested against Hunspell’s own reference fixtures — affix rules, flag conditions, and compound handling behave the way your dictionaries expect. The difference you will notice is operational, not linguistic: resources are explicit (setup once, cache-only after) and results come out as JSON or SARIF in addition to text.
From aspell
Kotoshu does not read aspell’s compiled .rws dictionaries; point it at
Hunspell-format files or a plain word list instead
(dictionary_type :plain_text
or :hunspell). Aspell
personal word lists (.pws) are not auto-imported yet — export yours as one
word per line and import it once:
kotoshu personal import my-words.txtAfter that, kotoshu personal add
and the CLI’s interactive review keep the personal dictionary current by hand.
From cspell
cspell’s configuration maps cleanly onto Kotoshu’s model, with one honest gap: cspell’s committed-in-repo cspell.json ergonomics has no Kotoshu equivalent yet — configuration lives in XDG files and environment variables.
| cspell | Kotoshu |
|---|---|
| dictionaries / language settings in cspell.json | kotoshu setup LANG, one per language |
| words lists, projectWords | personal dictionary — kotoshu personal import words.txt |
| reporters (json, junit) | --format json and --format sarif, plus stable exit codes |
From LanguageTool
Be clear-eyed here: Kotoshu does not compete on grammar. LanguageTool’s rule library — thousands of grammar, punctuation, and style rules across dozens of languages — has no equivalent in Kotoshu today; grammar rule packs are a roadmap item, not a feature. What Kotoshu offers is spelling with optional semantic reranking of suggestions, resource downloads on demand, and a CI story built on exit codes and SARIF. If you need grammar now, run both side by side and let each do its half.
For the full picture next to all three tools, see Comparison.