Проблема с командой `\includeonly` на Overleaf: файлы `.aux` удаляются автоматически через некоторое время

Проблема с командой `\includeonly` на Overleaf: файлы `.aux` удаляются автоматически через некоторое время

Я пишу статью на Overleaf (бесплатная версия), которая начинает становиться немного длинной, поэтому для оптимизации времени компиляции я решил поместить каждый раздел в отдельный .texфайл и использовать команду \includeв основном файле (я не использую их вложенными, я не использую подфайлы, я не использую другие команды, такие как import, input...).

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

Проблема, с которой я столкнулся, заключается в том, что через некоторое время (возможно, после закрытия вкладки браузера или обновления страницы, я не уверен), Overleaf, похоже, «забывает», что я скомпилировал проект со всеми включенными разделами. После просмотра необработанного вывода кажется, что он .auxавтоматически удаляет файлы, которые необходимы для предполагаемого использования команды \includeonly... Поэтому при компиляции с использованием \includeonlyчерез некоторое время я получаю кучу ошибок, среди которых что-то вроде «Не удалось найти [...].aux ...», и чтобы все снова заработало, мне приходится перекомпилировать весь файл, удалив команду \includeonly, а затем компилировать снова, восстанавливая ту же строку.

Итак, поскольку все это немного раздражает, я задался вопросом, есть ли способ сказать Overleaf не удалять файлы, .auxсоответствующие \includeфайлам d, при закрытии браузера или обновлении страницы. Если нет, я был бы рад узнать, есть ли способ получить аналогичный результат, который работает на Overleaf.


Обновлять:

Я написал в поддержку Overleaf по поводу вышеизложенного и они ответили. Я подумал, что сообщение может быть полезным для других.

Привет,

Спасибо, что обратились к нам по этому поводу. Приносим извинения за задержку ответа.

Вы правы, что кэшированные файлы очищаются по истечении определенного периода времени — точное время этого может варьироваться, поскольку оно основано на распределении ресурсов сервера компиляции (точного времени, когда они истекают, нет, есть некоторые события, которые вызывают очистку кэша, и некоторые правила распределения ресурсов, которые также влияют на это).

Поэтому при повторном просмотре проекта после некоторого времени отсутствия или после очистки кэша вам нужно будет сделать по крайней мере одну компиляцию со всеми включенными файлами .tex, чтобы можно было заново сгенерировать соответствующие им файлы .aux. Если весь проект слишком большой для компиляции за один раз, вы можете сделать эту первую компиляцию в черновом режиме, чтобы пропустить включение изображений. (Это то, что занимает больше всего времени в большинстве компиляций.)

После повторной генерации файлов .aux вы можете снова использовать \includeonly, если захотите. (Чтобы проверить, были ли созданы файлы .aux, вы можете просмотреть список «другие журналы и файлы», доступ к которому можно получить в самом низу представления журналов.https://www.overleaf.com/learn/how-to/Просмотр_сгенерированных_файлов).

В настоящее время нет возможности принудительно сохранять сгенерированные файлы. Извините за ограничение. Я также передал им ваш отзыв о том, что, особенно для определенных типов проектов, файлы aux должны сохраняться дольше, чем сейчас.

Лучший,

решение1

Если вы используете

\IfFileExists{chapter2.aux}{\includeonly{chapter1,chapter2}}{}

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

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