Чтобы не было прокрутки страницы после \include в LaTeX

My LaTeX заставляет меня разбивать страницы после каждого подраздела, потому что мои подразделы находятся в отдельных файлах. Я использую команду \include{file}, которая добавляет рассылку страницы после ее использования.

Я не хочу, чтобы страница \include{file} не вызывалась.

Как вы не можете разблокировать страницу после использования include -command?

Ответ 1

Пакет newclude, предложенный Will Robertson, весьма полезен, чтобы избежать ясности. Оказывается, для того, чтобы \includeonly работал, нужно сразу же вызвать пакет после \documentclass{...}. В сложной среде моей диссертации я также столкнулся с проблемами со сломанными ссылками.

Хорошее обходное решение, когда includeonly не требуется для окончательной версии, заключается в использовании только в черновике:

\newif\ifdraft\drafttrue

или

\newif\ifdraft\draftfalse

\ifdraft
  \include{...}
\fi

\ifdraft
  \include{file}
\else
  \input{file}
\fi

Первая строка может быть легко добавлена ​​в make файл, чтобы сделать черновик или производственную версию продукции мишенью.

\includeonly{file1,file2,...} позволяет указать список исходных файлов, вызываемых с помощью \include{file1} (где file1 - пример), который будет отображаться в результирующем документе. Остальные не будут отображаться, но рассматриваются для счетчиков, меток и оглавлений при включении соответствующих файлов aux.

Другими словами, используя include и includeonly, можно сохранить время компиляции в черновике, имея правильные ссылки. Дальнейшее чтение Wikibooks.

@Will Robertson

\include настолько полезен, что позволяет через \includeonly{...} создавать только нужные разделы. Работая над более длинным текстом, во время компиляции может быть очень важно включить только раздел длинной главы. Это также бесценно полезно, поскольку не нужно листать длинный черновик во время работы в один момент. Наконец, более мелкие файлы исходного кода легче обрабатывать в управлении версиями, например. git.

Ответ 2

\include всегда использует \clearpage, не совсем разумное значение по умолчанию. Он предназначен для целых глав, а не для подразделов (почему вы хотите подразделы в отдельных файлах?).

Вы можете исправить это либо с помощью \input{filename}, либо загрузки пакета newclude и записи \include*{filename}.

Ответ 3

Вы можете остановить разрывы страниц, вызванные \include, разместив перед ним \let\clearpage\relax. Таким образом,

\let\clearpage\relax
\include{file1}
\include{file2}
\include{file3}

будет помещать содержимое трех файлов (и любых впоследствии включенных файлов) вместе без разрыва страницы между ними. Если вы хотите прекратить расслабление команды \clearpage, а затем оберните файлы, чтобы они включались без разрывов страниц в такой группе:

\begingroup
\let\clearpage\relax
\include{file1}
\include{file2}
\endgroup
\include{file3}

Это остановит разрыв страницы между файлом 1 и файлом2, но вставьте обычную страницу после файла2. (Примечание: я не знаю, вмешивается ли это в ссылку и нумерацию страниц, хотя я думаю, что все должно быть в порядке.)

Ответ 4

Спасибо, Кембридж!

используйте\include вместо \input и используйте команду \includeonly для выбора разделов для обработки