arXiv LaTeX ソースファイルのコンパイルに関する問題

arXiv LaTeX ソースファイルのコンパイルに関する問題

私は論文を書くのに LaTeX を使用しています。Windows XP コンピュータで TeXworks/MiKTeX を使用しています。LaTeX コードを書くときは、「pdfLaTeX+MakeIndex+BibTeX」を使用して問題なくコンパイルできます。

しかし、arXiv から LaTeX ソース コードをダウンロードし、「pdfLaTeX+MakeIndex+BibTeX」を使用してコンパイルしようとすると、動作しません。「! Undefined control sequence」というエラーが発生します。

ただし、「pdfLaTeX+MakeIndex+BibTeX」の代わりに「pdfLaTeX」を使用すると、arXiv から LaTeX ソース コードをコンパイルする際に問題は発生しません。

なぜこのようなことが起こるのでしょうか? 「pdfLaTeX+MakeIndex+BibTeX」と「pdfLaTeX」の違いは何ですか?

私がこれらの質問をする理由は、arXiv の論文の 1 つに若干の変更を加えたいので、LaTeX ソース コードをダウンロードして、そこで変更を加えるつもりだからです。ソース コードをコンパイルするには「pdfLaTeX」を使用する必要があると思いますが、論文に不要な変更が加えられないようにしたいのです。

arXiv からダウンロードした LaTeX ソース ファイルには .tex 拡張子がないようです。これらは異なる種類のようです (arXiv の処理によるものだと思います) が、いずれにしても TeXworks を使用して問題なく開くことができます。

答え1

ファイルに拡張子を再度追加してみてください.tex。arXiv がなぜそれを削除するのかはわかりませんが、多くのエディターはコンパイル シーケンスを実行するときにそれが存在すると想定します。

私の言いたいことを理解するには、pdfLaTeX と BibTeX のコンパイルを比較してください。

$ pdflatex myfile.tex
$ bibtex myfile

では、LaTeX の実行によって生成されたファイルも参照するため、ファイル拡張子はbibtex不要です。TeXworks などのエディター (および他のエディターも間違いなく) は、これらのシーケンスを自動的に実行しますが、そのためには、拡張子がどこにあるかを知っていて、それを削除することが必要です。削除する拡張子がない場合、あいまいさが生じます。

$ pdflatex myfile
$ bibtex myfile

これらのプログラムの 1 つが「間違った」ものを検出しmyfile、表示されたエラーが発生した可能性があります。(たとえば、auxファイルの内部を確認してください。このファイルを直接実行すると、pdflatex確実にエラーが発生します。)

関連情報