Как используется \input?

Как используется \input?

Я пытаюсь ввести отдельный файл, chapter1.tex, в mainbody.texфайл. Так что в mainbody.texфайле я печатаю,

\documentclass[...]{book}
\blah
\blah 

\begin{document}
\input{\...\chapter1.tex}
\end{document}

Оба файла, chapter1.texи mainbody.tex, написаны с одинаковой преамбулой. Когда я компилирую, chapter1.texпроцесс завершается без ошибок, и .pdfдокумент правильно генерируется. Но когда я компилирую , mainbody.texон дает мне

! Ошибка LaTeX: можно использовать только в преамбуле.

и это ссылка на chapter1.texфайл.

Похоже, что во время main body.texкомпиляции, когда компилятор достигает \inputкоманды, он считывает преамбулу файла chapter1.texи распознает ее команды как команды основного тела файла mainbody.tex, поэтому и выдает ошибку.

Однако mainbody.pdfфайл создается даже если процесс компиляции завершается ошибкой.

Есть ли у вас идеи, что является причиной ошибки и как от нее избавиться?

решение1

Фактически вы вводите код преамбулы дважды - второй раз после \begin{document}. Так что оставьте его вне chapter1.tex. Если вам нужно скомпилировать главу 1 отдельно, создайте новый main или используйте \includeand \includeonlyв имеющемся main.

Этот шаблон рабочего процесса может оказаться вам полезным: субимпорт и includeonly

Связанный контент