Vim は、最も人気があり、機能が豊富で強力なテキストエディタの1つです。 Vimには多くの機能が付属しています。たとえば、初心者は「vimtutor
」を実行することで、組み込みのヘルプセクションからVimの基本を簡単に学ぶことができます。 「ターミナルでのコマンド。Vimの学習は努力する価値があります。本日、このガイドでは、「スペルチェック」と呼ばれる最も広く使用されている機能の1つについて説明します。 Vimエディターで。あなたがたくさんのテキストを編集するプログラマーなら、「スペルチェック」機能は非常に便利かもしれません。 Vimを使用してテキストファイルを編集するときに、つづりの間違いやタイプミスを防ぐのに役立ちます。
始める前に、Vimでスペルチェックがどのように機能するかを学びましょう。
Vimエディターでのスペルチェックの仕組み
- ブールオプション
spell
スペルチェックを有効にするかどうかを決定します。これはウィンドウローカルオプションであるため、特定のバッファに対してのみ有効にする場合は、:setlocal spell spelllang=en_us
を使用します。 代わりに、たとえば。 -
spelllang
Vimが参照するスペルファイルを指定します(spellfile
によっても決定されます) オプション)。runtimepath
内の場所 表示された順序で検索され、最初の検索で停止します。.vim/spell
にローカルのスペルファイルがない場合 ディレクトリこれは通常、/usr/share/vim/vim81/spell
のような場所です。 例えば。これらはバイナリファイルであり、LL.EEE.spl
の形式です。 ここで、LL
は言語(英語の場合はenなど)であり、EEEはエンコーディング(たとえばutf-8)です。 - Vimは主に4種類のスペルの「エラー」を認識します。これらは次のとおりです。a) 認識されない単語(SpellBad) b) 大文字になっていない単語(SpellCap) c) 珍しい言葉(SpellRare)と d) 選択した地域(SpellLocal)のスペルが間違っています。たとえば、米国英語で「色」を使用しています。 これらはそれぞれ異なる方法で強調表示されます 。
]s
および[s
コマンドは、]S
を除く4つのカテゴリすべてで、次のスペルミスの単語に移動します および[S
最初の2つのカテゴリのみ。 - 追加した単語が保存される場所は2つあります。コマンド
zg
を使用する およびzw
それらをspellfile
の最初のエントリに保存します 。これらはローカルですspellfile
以降のバッファへ バッファローカルです。コマンドzG
およびzW
単語を内部の単語リストに保存します これはグローバルです スペルが設定されているすべてのバッファに対して。ただし、これらは永続的ではなく、Vimが終了すると失われます。 -
z=
は別として スペル候補をロードするコマンドは、Ctrl + x s
を使用することもできます 挿入モードでスペル候補をロードします。これは、スペルがわからない場合に役立ちます。途中で入力して、候補リストをロードしてください。z=
で修正した後:spellrepall
を使用できます 一致するすべての単語に同じ変更を適用するコマンド(通常モードでいくつかのキーをマップする場合があります)。 - ローカルファイル(
.vim/sugg
など)でよくあるスペルミスの単語に関する独自の提案を追加できます )。変数spellsuggest
どちらが最初に使用されるかを決定します。このファイルが最初のエントリである場合(setspellsuggest=file:~/.vim/sugg,best
など) )次に、提案が最初に表示されます。ここのエントリには、スラッシュで区切られた2つの列が必要です。 - 最後に、独自のスペルファイルを使用できます。例:
.dic
および.aff
他の多くのパッケージで使用されているファイルは、vim.spl
に変換できます。 コマンド:mkspell outfile infile
を使用するファイル 。次に、そのファイルをspelllang
で指定して使用します 。
Vimヘルプ(:help spell.txt
)を参照してください ) 詳細については。 / r / random_cynicに感謝します Redditフォーラムでのこの詳細な入力について。
Vimエディターでスペルチェック機能を有効にする
Vimでスペルチェック機能を有効にするには、それを開き、コマンドモードから次のように入力します。
:set spell
上記のコマンドは、ターミナルウィンドウではなく、Vimセッション内で入力する必要があることを忘れないでください。
スペルミス、タイプミスを見つけて修正する
次に、[挿入モード]に移動します (「i
」と入力します 「コマンドモードから挿入モードに切り替えます)、スペルミスのある文字を入力します。Vimはスペルミスのある単語を即座に強調表示します。
上記の出力にあるように、「Welcome toLinuxlearningsession」ではなく「WelcometoLinuxlearng sesion」と入力したところ、vimはスペルミスのある単語「learng」と「sesion」を赤い色で強調表示しています。
次に、ESCキーを押すだけでコマンドモードに戻ります。
次の文字のいずれかを入力すると、スペルミスのある単語をナビゲートできます。
- ] s -カーソルの後にスペルミスのある単語を見つけます(前方検索)。
- [s -カーソルの前にあるスペルミスのある単語を検索します(後方検索)。
- ] S (大文字の「S」に注意してください)-「] s」に似ていますが、悪い単語でのみ停止し、まれな単語や別の地域の単語では停止しません。
- [S -「[s」に似ていますが、逆方向に検索します。
スペルミスのある単語を見つけたら、 z =と入力します その特定の単語の提案を見つけるために。ここで、Vimはスペルミスのある単語「learng」の提案のリストを表示します。それぞれの番号を入力してリストから正しい単語を選択し、Enterキーを押して、スペルミスのある単語を正しい単語に更新します。
上のスクリーンショットにあるように、13番を入力して、スペルミスのある単語「learng」を正しい単語「learning」に置き換えました。Enterキーを押すと、Vimは入力の正しい単語をすぐに更新しました。
同様に、上記のようにテキストのすべてのスペルミスを修正します。すべての間違いを修正したら、:wqと入力します 変更を保存してVimエディターを終了します。
覚えておいてください-私たちはスペルの間違いだけをチェックでき、文法の間違いはチェックできません。
スペル言語を設定
デフォルトでは、Vimは "en"を使用します (英語のすべての地域)スペルミスをチェックします。独自のスペル言語を選択することもできます。たとえば、米国地域の英語を設定するには、Vimエディターのコマンドモードから次のように入力します。
:set spell spelllang=en_us
英語で利用可能なすべての地域のリストは次のとおりです。
- en-すべての地域
- en_au-オーストラリア
- en_ca-カナダ
- en_gb-イギリス
- en_nz-ニュージーランド
- en_us –米国
スペルファイルに単語を追加
名前、コマンド、メールアドレスなど、例外としていくつかの単語を追加したい場合があります。そのような場合は、それらの特定の単語を Spellefileに追加できます。 。このファイルにはすべての例外が含まれています。
〜/ .vim / spell /があることを確認してください システム内のディレクトリ。そうでない場合は、作成します:
$ mkdir -p ~/.vim/spell/
次に、以下を使用してスペルファイルを設定します:
:set spellfile=~/.vim/spell/en.utf-8.add
次に、 [s >のいずれかを使用して、スペルミスのある単語を見つけます または]s zgと入力します 。カーソルの下の単語がスペルファイルの適切な単語として追加されます。つまり、単語を自分の辞書に追加します。
この追加を元に戻す(スペルファイルから単語を削除する)には、 zugを使用するだけです。 。スペルミスのある単語をマークするには、 zwと入力します 。このアクションを元に戻すには、 zuwを使用します 。
Vimエディターでスペルチェックを無効にする
Vimは、辞書にないスペルミスや単語をすべて強調表示します。辞書にない単語がたくさん含まれているコードやREADMEファイルを書いているときに、これが煩わしい場合があります。このような場合、次のコマンドを入力するだけで「スペルチェック」機能を無効にできます。
:set nospell
それでおしまい。これで、Vimは何も強調しません。 Vimのコマンドモードから「:setspell」を実行すると、いつでもスペルチェック機能を有効にできます。
Vimには、スペルチェック機能のヘルプページがさらに組み込まれています。スペルチェック機能の詳細については、次を実行してください:
:help spell
また、次のように、すべてのオプションについて個別のヘルプセクションを参照してください。
:help ]s :help [s :help z= :help zg :help zug :help zw :help zuw :help spelllang :help spellfile :help spellfile-cleanup
そして、今のところこれですべてです。これがお役に立てば幸いです。
関連記事:
- LinuxでVundleを使用してVimプラグインを管理する方法
- GNUAspell-無料のオープンソースで独立したスペルチェッカー