Claude Code 2.1.235 に spellcheck 設定が付きました。changelog の1行がこれです。
Added an optional
spellchecksetting that underlines misspelled words in the prompt input as you type, using your installedaspell,hunspell, orispell
(任意のspellcheck設定を追加した。入力中のプロンプトのスペルミスに下線を引く。インストール済みのaspell/hunspell/ispellを使う)
辞書は英語圏のものです。日本語で打つとどうなるかを、有効にする前に測りました。
9割がスペルミス扱いになります。
検証環境: Windows 10 Home 19045 / Claude Code 2.1.235 / hunspell 1.7.0
まず結果
| 確認したこと | 結果 |
|---|---|
aspell / hunspell / ispell
|
3つとも未インストール |
winget で hunspell を導入 |
入る(4秒)。ただし辞書は0個 |
| 辞書がないときの終了コード | 0(失敗として扱われない) |
| 日本語3文を英語辞書で検査 | 15語中14語(93%)がスペルミス扱い |
CLAUDE.md の md
|
スペルミス扱い |
先に断っておくと、測ったのは hunspell 側の判定です。
Claude Code の入力欄でどう見えるかまでは確認していません。
ただし changelog のとおり判定を借りている以上、この結果がそのまま下線になります。
そもそも前提のツールが入っていない
まず自分の環境を見ました。
aspell : (未インストール)
hunspell : (未インストール)
ispell : (未インストール)
3つとも入っていません。 Windows に標準で入るものではないので、
有効にしても、そのままでは何も起きないはずです。
winget に hunspell がありました。
winget install --id FSFhu.Hunspell
4秒で終わりました。ここまでは順調です。
入れても、辞書が0個
入った直後に辞書の一覧を見ました。
AVAILABLE DICTIONARIES (path is not mandatory for -d option):
空です。 検索パスも C:\Program files\OpenOffice.org 2.4\... のような古い場所ばかりでした。
辞書なしで動かすと、こうなります。
Can't open affix or dictionary files for dictionary named "default".
しかも終了コードは 0。 呼び出す側からは「エラーなく、指摘ゼロで返ってきた」ように見えます。
英語辞書は別途取ってくる必要があります。
curl -fsSL -o en_US.aff https://raw.githubusercontent.com/wooorm/dictionaries/main/dictionaries/en/index.aff
curl -fsSL -o en_US.dic https://raw.githubusercontent.com/wooorm/dictionaries/main/dictionaries/en/index.dic
これで英語は判定できました。
& helo 11 0: hole, help, helot, hello, halo, hero, ...
& wrold 2 5: world, wold
ただし検証では -d en_US と明示指定しています。
Claude Code がどこの辞書を見に行くかは未確認なので、取得しただけで動くとは限りません。
日本語を通すと9割が赤くなる
実際に打ちそうな日本語3文を検査しました。
このリポジトリのテストが落ちているので原因を調べてください
認証まわりのコードを読んで、セッションの有効期限がどこで決まるか教えて
CLAUDE.md に書いたルールが守られていないようです
結果です。
| 項目 | 数 |
|---|---|
| hunspell が区切った箇所 | 15 |
| 正しいと判定 | 1 |
| スペルミス扱い | 14(93%) |
分母は日本語の語数ではなく、hunspell が区切った箇所の数です。
通ったのは1語だけ。 しかもそれは日本語ではなく、3文目の英単語 CLAUDE でした。
中身はもっと困ります。
| 語 | hunspell が出した修正候補 |
|---|---|
| を | e, s, i, a, n, r, t, o, l, c, d, u, g, m |
| に | e, s, i, a, n, r, t, o, l, c, d, u, g, m |
| md | MD, Md, ms, m, d, med, mid, mad, mod, mud |
| このリポジトリのテストが | (候補なし) |
助詞の「を」を「e」に直せと言ってきます。 辞書の TRY 行の英字が、そのまま候補になっています。
CLAUDE.md の md もスペルミス扱いでした。日本語かどうかに関係なく踏みます。
単語の切れ方も壊れている
もう1つ、語の区切り方です。
| hunspell が1語と見なしたもの | 元の文 |
|---|---|
このリポジトリのテストが |
このリポジトリのテストが落ちているので |
ちているので |
同上(落 で切れた残り) |
漢字のところで切れて、ひらがなとカタカナの続きが1語になっています。
「このリポジトリのテストが」で1語です。当然、辞書には載っていません。
日本語は語の区切りに空白がないので、英語向けの分割では意味のある単位になりません。
ここは辞書を足しても解決しません。
有効にするかどうか
設定名は spellcheck ですが、公式の設定ドキュメントには載っていません。
現時点では changelog の1行だけが根拠です。
settings.json に true や "en_US" を渡すと起動はします。ただし存在しない設定名でも同じように起動しました。
{"totally_bogus_setting_xyz": true} // これでも起動する
受理されたことの証明にはなりません。 値の書式は現時点では分かりません。
判断はこうなると思います。
| 使い方 | どうするか |
|---|---|
| プロンプトを日本語で打つ | 有効にしない。 9割に下線が引かれる |
| 英語で打つ | 有効にする価値がある。ただし辞書の導入が別途必要 |
混在(コード名や .md を含む) |
md のような語も引っかかるので、うるさく感じるはず |
既定では無効なので、何もしなければ今までどおりです。
「便利そう」と有効にする前に、自分が何語で打っているかを考えたほうがよさそうです。
まとめ
- 2.1.235 で
spellcheck設定が追加された。既定では無効 -
Windows には
aspell/hunspell/ispellが入っていない。 有効にしても、まず動かない -
wingetで hunspell は4秒で入るが辞書は0個。しかも辞書なしの終了コードは 0で、「指摘ゼロ」に見える -
日本語3文で、15箇所中14箇所(93%)がスペルミス扱い。 通ったのは英単語
CLAUDEだけ - 助詞「を」の修正候補は
e, s, i, a, n... -
CLAUDE.mdのmdも引っかかる。 日本語かどうかに関係なく踏む - 漢字で語が切れるため、「このリポジトリのテストが」が1語として扱われる
- 公式の設定ドキュメントに記載がない(changelog のみ)
日本語でプロンプトを打つなら、この設定は有効にしないほうがいいと思います。
参考
- Claude Code changelog — 2.1.235 の項
- wooorm/dictionaries — 検証に使った英語辞書
- 検証環境: Windows 10 Home 19045 / Claude Code 2.1.235 / hunspell 1.7.0
※ 引用は原文と日本語訳を併記しています。訳は読みやすさを優先しているので、正確な表現は原典をご確認ください。
※ 本記事の計測は hunspell に直接文字列を渡した結果です。入力欄の表示そのものは確認していません。
関連記事
- Claude Code のタスクリストが出ない — 原因は環境変数 ENABLE_TASKS=0 だった — 同じく、設定まわりで実際の挙動を測った話
- 14MBのAIモデルは本当に動いた — 同じく、日本語が通るかを測った話