Vim のスペルチェッカ早わかり

Vim付属のスペルチェック機能を使う上で、とりあえずこれだけ覚えておけば OK、というコマンドを表にまとめてみました。Vim付属のスペルチェック機能は、Vim+syntax付きでビルドされていなければ使えません。+syntax の有無は vim --version で確認できます。)

コマンド 機能
:set spell スペルチェック機能を ON
:set nospell スペルチェック機能を OFF
]s 次のスペルミスの箇所へ移動
[s 前のスペルミスの箇所へ移動
z= 正しいスペルの候補を表示し、選択した単語でスペルミスを修正
zg カーソル下の単語を正しいスペルとして辞書登録
zw カーソル下の単語を誤ったスペルとして辞書登録

:set spell でスペルチェック機能を ON にします。これにより、スペルミスがハイライトされるようになります。


▲あ! fixed を間違えて fixied と typo している!

スペルチェック機能を頻繁に使うようなら、その ON/OFF に専用のキーマップを設定しておくのが便利でしょう。自分の場合は以下のように設定しています。

" toggle <sp>ell
nnoremap <silent> <Space>sp :<C-u>setlocal spell! spelllang=en_us<CR>:setlocal spell?<CR>

スペルチェック機能を ON にしたら、]s でスペルミスの箇所を巡回できます。スペルミスを修正したい場合は z= によって正しいスペルの候補を表示させ、そこから正しいスペルの単語を選択してスペルミスを修正します。


z= によって表示される候補から 1 を選択
 ↓

▲スペルミスが修正された

固有名詞など、スペルチェッカが認識できないためにスペルミスと判定されてしまう場合があります。そのような場合は問題の単語にカーソルを移動して zg を実行することでその単語を正しいスペルの語として辞書登録することができます。これにより、以後その単語はスペルミスとは判定されなくなります。

zgzw はそれぞれ Good と Wrong と覚えるとわかりやすいと思います。