このページではスペルチェックについて説明します。 Emacs には ispell というパッケージが標準でインストールされています。
ispell パッケージは ispell コマンドを呼び出してスペルチェックを行ないます。
そのため、ispell パッケージのインストールをする必要があります。
このページでは ispell の代わりに、Cygwin のパッケージとして提供されている
GNU Aspell
を利用する方法を紹介します。
GNU Aspell をインストールしていない場合は、
Cygwin の setup.exe を利用して
Aspell 関連のパッケージをインストールしてください。
正常にインストールされていれば以下のように各パッケージが インストールされていることが確認できます。 (aspell-doc は不要だと思いますが)
$ cygcheck -c aspell aspell-doc aspell-en libaspell15 Package Version Status aspell 0.50.3-1 OK aspell-doc 0.50.3-1 OK aspell-en 0.51.0-1 OK libaspell15 0.50.3-1 OK
スペルチェックだけなら GNU aspell があれば良いのですが、 単語の補完をしたい場合は、word ファイルが必要になります。 Linux がある場合は /usr/dict/word をコピーしてくるなどの方法がありますが、 アーカイブ を置いてくれている方がおられるようなので、これを利用する方法もあります。 デフォルトのパスが /usr/dict/word なので、 Cygwin の /usr/dict 以下に置いてしまいましょう。
~/.emacs を以下の設定を追加します。
;; コマンドの設定(setq ispell-program-name "aspell"); ispell の代わりに aspell を使う(setq ispell-grep-command "grep"); デフォルトの egrep が Cygwin ではシンボリックリンク; なので、Meadow から起動できない;; 日本語ファイル中の英単語スペルチェックを可能にする(eval-after-load "ispell" '(add-to-list 'ispell-skip-region-alist '("[^\000-\377]")))
スペルチェックしたい単語にカーソルがある状態であれば、
M-$ (ispell-word)
でその単語のスペルチェックができます。
スペルが正しければ以下のようにミニバッファに表示されます。
BUFFER is correct
スペルが正しくなければ修正候補一覧が表示されるので、
正しいスペルを選んでその記号のキーを押すとスペルが修正されます。
修正を取り止めたい場合は x
で一覧表示から抜けます。
q で ispell プログラムの実行を止めます。
また、M-x ispell-region や
M-x ispell-buffer で、
それぞれリージョンやバッファ内のすべての単語のチェックを行ないます。
補完したい単語にカーソルがある状態で、
M-x ispell-complete-word
を実行すると補完候補一覧が表示されるので、
選択したい単語に対応する文字・記号を選択すると補完されます。
何も選択したくない場合は、
x で選択一覧から抜けます。
q でプロセスを止めることができます。
このコマンドは一部のモードではキーバインドされているのですが
(Text モードでは M-TAB です)、
されていないモードも結構あります。必要に応じて適当なキーに割り当てましょう。