Я использую LaTeX для написания статей. Я использую TeXworks/MiKTeX на компьютере с Windows XP. Когда я пишу код LaTeX, я могу скомпилировать его без проблем с помощью "pdfLaTeX+MakeIndex+BibTeX".
Но если я скачаю исходный код LaTeX с arXiv и попытаюсь скомпилировать его с помощью "pdfLaTeX+MakeIndex+BibTeX", то это не сработает. Я получаю ошибку "! Неопределенная управляющая последовательность".
Однако у меня не возникает никаких проблем с компиляцией исходного кода LaTeX из arXiv, если я использую «pdfLaTeX» вместо «pdfLaTeX+MakeIndex+BibTeX».
Почему это происходит? В чем разница между "pdfLaTeX+MakeIndex+BibTeX" и "pdfLaTeX"?
Причина, по которой я задаю эти вопросы, заключается в том, что я хотел бы внести некоторые незначительные изменения в одну из моих статей arXiv, поэтому я загружу исходный код LaTeX и внесу изменения там. Думаю, мне придется использовать "pdfLaTeX" для компиляции исходного кода, но я хочу убедиться, что в статье не будет сделано никаких нежелательных изменений.
Исходные файлы LaTeX, загруженные с arXiv, похоже, не имеют расширения .tex. Похоже, они другого типа (полагаю, это из-за обработки arXiv), но в любом случае я могу открыть их без проблем с помощью TeXworks.
решение1
Попробуйте добавить .tex
расширение обратно в файл. Я не уверен, почему arXiv удалил его, но многие редакторы предполагают, что оно там есть, когда запускают последовательности компиляции.
Чтобы понять, что я имею в виду, сравните компиляцию для pdfLaTeX и BibTeX:
$ pdflatex myfile.tex
$ bibtex myfile
Обратите внимание, что bibtex
не нужно расширение файла, так как он также смотрит на файлы, созданные запуском LaTeX. Редакторы, такие как TeXworks (и другие, без сомнения) будут запускать эти последовательности для вас автоматически, но для этого требуется, чтобы он знал, где находится расширение, чтобы он мог удалить его. Когда нет расширения для удаления, возникают неоднозначности:
$ pdflatex myfile
$ bibtex myfile
Вероятно, одна из этих программ выбрала «неправильный» вариант myfile
, что и привело к ошибке, которую вы увидели. (Например, загляните внутрь файла aux
; pdflatex
прямой запуск этого файла наверняка приведет к ошибке.)