我在python中使用jinja渲染.tex文件,然后我想使用xelatex将其渲染为pdf。尽管我设法使它与中间文件一起使用,但我宁愿没有中间文件。
我想尝试使用管道执行此操作。运行jinja2 render之后,我正在这样写管道:
with open("./utils/xelatex_pipe", "w") as pipe:
pipe.write(output)
这似乎很好,因为如果我运行cat ./utils/xelatex_pipe
,我会得到预期的数据(.tex文件)。
我现在正在尝试建立一个bash脚本来侦听该管道,并在通过它的任何东西上运行xelatex。我已经尝试过这样的事情:
pipe=./xelatex_pipe
xelatex -output-directory=/tmp/ $pipe
这不起作用。似乎单独对待每一行,这显然会使xelatex发疯……我想我需要将所有行聚合到一个文件中,但是我不确定如何执行“在仍有行的情况下”之类的操作在管道中,将它们连接到某个变量,然后在没有更多行的情况下对变量运行xelatex”。