Ответ 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.