LaTeXドキュメントの一部をスペルチェックしないようにvimに指示する方法はありますか?たとえば、minted環境やURL を使用してコードをブロックします\url{}か?
(スペルチェックに関連があるかどうかはわかりませんが、vimtexプラグインを使用して、latexファイルを編集しています。)
LaTeXドキュメントの一部をスペルチェックしないようにvimに指示する方法はありますか?たとえば、minted環境やURL を使用してコードをブロックします\url{}か?
(スペルチェックに関連があるかどうかはわかりませんが、vimtexプラグインを使用して、latexファイルを編集しています。)
回答:
と一緒にクラスターに追加することで、構文アイテムのスペルチェックを無効にできます@NoSpell。:help spell-syntaxいくつかの情報を読んで、おそらくいくつかの例がすでに含まれているtex構文ファイルを確認できます。入力:tabe $VIMRUNTIME/syntax/tex.vimすると、新しいタブにtex構文ファイルが表示されます。次に検索/\c@NoSpellすると、次のような行が表示されることがあります
syn cluster texMathZoneGroup add=@NoSpell
texMathZoneGroupクラスタは、構文アイテムの数を含むように、以前のスクリプトで定義されており、ここでは@NoSpellこれらの項目の無効スペルチェックにクラスタに追加されます。特定の構文ファイルをどこで変更するのが最も適切かを正確に言うことはできません。その構文ファイルをよく知らないためです。単純に追加できる明らかなクラスターがすでに存在している場合@NoSpellやcontains=、問題のアイテムを含むクラスターを作成する必要がある場合があります。また、ユーザーランタイムディレクトリに構文ファイルのコピーを作成し、分散構文ファイルを変更するのではなく、そこに変更を適用するafter/syntax/tex.vimか、構文ファイルが読み込まれた後に実行されるやその他のスクリプトに変更を適用することもお勧めします。。
プラグインを使用しているため、スペルチェックされるアイテムに関連するオプションがある場合があります。私は使ってvimtexいませんが、KarlLervågはここでかなり活動的です。
vimtex今日、そのようなオプションはありません。しかし、ミント環境ではスペルを無視することは理にかなっているようですので、それに応じてプラグインを更新するかもしれません。素敵な説明ありがとうございます!
syn region mintedZone start="\\begin{minted}" end="\\end{minted}" contains=@NoSpell役に立たないようです。なにか提案を?
たとえば、独自の構文ルールを追加できます~/.vim/after/syntax/tex.vim。などのコマンド内でのスペルチェックを防ぐために\url、次のコードを使用できます。
syntax match texStatement '\\command' nextgroup=texMyCommand
syntax region texMyCommand matchgroup=Delimiter start='{' end='}' contained contains=@NoSpell
ここtexStatementとDelimiterは、内部構文プラグインによって定義されるグループです:e $VIMRUNTIME/syntax/tex.vim。を参照してください。
上記のコマンドを理解したい場合は、次のヘルプセクションをお勧めします。