Подтвердить что ты не робот

Писать и читать из временного файла LaTeX?

Я пишу документ, который имеет набор "списков задач", разбросанных по всему миру. Я хочу, чтобы в конце был один список всех задач. Мне кажется, что я должен сделать это с помощью тех же промежуточных файлов, которые используются для оглавления, списка таблиц и списка цифр. Но я просто не могу понять, как это сделать. Я попытался добавить \addtocontents с другим расширением, но это, похоже, не работает. Кто-нибудь знает, как это сделать?

4b9b3361

Ответ 1

Вы можете сделать:

\newwrite\tempfile

в вашей преамбуле, чтобы объявить новую запись файла.

Затем, чтобы открыть файл, когда вы хотите, вы можете назначить запись в файл и открыть его:

\immediate\openout\tempfile=lists.txt

Для записи в файл:

\immediate\write\tempfile{this is interesting}

Наконец, закройте файл с помощью

\immediate\closeout\tempfile

Для чтения файла это может быть так же просто, как \input, или вы можете использовать комбинации \newread, \openin, \read и \closein.

Это то, что вы хотите сделать?

Изменить: Это "работает для меня":

\documentclass{minimal}
\newwrite\tempfile
\begin{document}
\immediate\openout\tempfile=lists.tex
\immediate\write\tempfile{this is interesting}
\immediate\write\tempfile{}
\immediate\write\tempfile{this too}
\immediate\closeout\tempfile
\input{lists}
\end{document}

Ответ 2

вам понадобится пакет todonotes для LaTeX:

\usepackage{todonotes}

\begin{document}

\todo{This will be a note typeset in the margin}
\todo[inline]{This will be an in-line todo}
\missingfigure{This will give me a box indicating a pic should go here}

\listoftodos % will give you all of your todos from the document.

http://www.tex.ac.uk/tex-archive/help/Catalogue/entries/todonotes.html

Ответ 3

Мне не повезло с механизмом \addtocontents. Мне гораздо повезло, когда я написал произвольный код LaTeX в файл .aux. Примеры действительно слишком велики, чтобы опубликовать их в SO-ответе, но вы можете найти его в noweb в способе "метки подстраницы" обрабатываются, и вы можете найти что-то подобное в моем техническом отчете Обучение техническому письму за два часа в неделю, в котором накоплены некоторые списки принципов и практики, Источник noweb является общедоступным (и в Debian), и если кто-то хочет другого, пришлите мне электронное письмо.

Для такого рода вещей я настоятельно рекомендую вам покопаться под слоем LaTeX и изучить The TeXbook Дональдом Кнутом. Это место, где действительно доступны механизмы.

Если ваш список задач действительно наступит в конце, вы можете избежать всей ерунды и просто выделить глобальный регистр токенов, который вы накопили, обработав документ. Вы найдете полезные идеи и примеры в Приложении D The TeXbook (Dirty tricks).