私は LaTeX を学び始めたばかりですが、 のような制御シーケンスを誤って入力することがよくあります。 およびをドキュメント上で\idotsint
呼び出すエディタ プラグインを使用しており、これによってエラーを検出できますが、制御シーケンスを誤って入力すると、どちらのツールも問題を報告しません。代わりに、 のようなツールは、が存在しないことを認識することになります。lacheck
chktex
pdflatex
\idotqint
ドキュメント内で未定義の制御シーケンスを使用した場合に構文チェッカー/リンターでレポートし、エディターなどが指摘する行番号を認識できるようにする方法はありますか?
編集: vimtex プラグイン付きの vim を使用しています。
答え1
vimtex プラグインは、ドキュメントのコンパイルに失敗したときにクイックフィックス ウィンドウを開くことを実際にサポートしているようですが、Neovim を使用すると vimtex が完全に機能しなくなります。
見るここNeovim で動作させる方法については、こちらをご覧ください。
答え2
長いコメントですが、回答ではありません。問題は、「合法的な」コマンドのリストが何であるかです。
コマンド (別名制御シーケンス) は、プリアンブル内、ドキュメント クラス (ファイル)、パッケージ (ファイル)、別のパッケージまたはドキュメント クラスでロードされたパッケージ、または を含む子ドキュメントで、複数のメソッド ( \def
、など) を使用して定義できます (また が存在します)。さらに、定義はドキュメント全体に適用することも、一部にのみ適用することもできます。これは次のように機能します。\newcommand
.cls
.sty
\input
\documentclass{article}
\begin{document}
{\def\Me{I exist} \Me }
\end{document}
しかし、これにより未定義の制御シーケンス エラーが発生します。
\documentclass{article}
\begin{document}
{\def\Me{I exist} \Me } \Me
\end{document}
要約すると、コマンドが定義されているかどうかを知ることはエディタ(vimでも)にとって難しい作業であり、したがって質問は構文チェッカープラグインではなく、エラーメッセージを処理するのに最適なプラグインに焦点を当てるべきです(ただし、そうするとLaTeX出力のエラー/警告)。