[NTG-context] reading from standard input
Aditya Mahajan
adityam at umich.edu
Fri Jun 8 15:31:24 CEST 2012
On Fri, 8 Jun 2012, <stdin> | Alexandre Leray wrote:
> Hi,
>
> I was wondering if there was a way to make context read from stdin instead of
> reading from a file?
>
> cat /path/to/src.tex | context --result=/path/to/result.pdf
>
> I'd like to do something like this in python:
>
> def generate_pdf(self):
>
> src = """
> \starttext
> \section[éléments-de-transmission]{Éléments de transmission}
>
> Un module dans lequel une communauté temporaire d'étudiants et
> d'enseignants s'exerce à mettre en situation des réflexions et des
> moments de transmission en interrogeant sans cesse la question de
> l'enseignement. La configuration des enseignants est variable selon
> les situations. Les situations seront mises en place en semaine A et
> B
> selon l'emploi du temps. Chaque nouvelle situation invente sa
> méthode.
> \stoptext
> """
> cmd = 'context --result=/tmp/result.pdf'
> p1 = subprocess.Popen(cmd.split(" "), stdout=subprocess.PIPE,
> stdin=subprocess.PIPE)
> (stdout, stderr) = p1.communicate(stdin=src)
>
You can try context --pipe --result=/tmp/result.pdf but that only runs the
document once, so cross referencings, TOC, etc won't work correctly. The
other options is to write to a file, and then run "context --purgeall
--result=/tmp/result.pdf filename"; this will run the document appropriate
number of times, and then delete the temp files, leaving only the .tex and
the .pdf file.
Aditya
More information about the ntg-context
mailing list