gpt4 book ai didi

latex - 在命名管道 (fifo) 上调用 LaTeX?

转载 作者:行者123 更新时间:2023-12-04 07:03:41 26 4
gpt4 key购买 nike

我在命名管道上运行 LaTeX 先进先出在 Unix 上。我像这样创建了fifo:

$ mkfifo fifo

然后我像这样运行 LaTeX:
$ latex fifo

在我从另一个 shell 写入 fifo 之前,此进程会阻塞并且没有输出:
$ echo "\\end" > fifo

然后是 $ latex 先进先出输出变为:
This is pdfTeXk, Version 3.1415926-1.40.9 (Web2C 7.5.7)
%&-line parsing enabled.
entering extended mode

然而,LaTeX 进程永远不会结束。你怎么能让 LaTeX 结束?我试过发送 chr(0) 和 chr(4)(即 ctrl-d),但都不起作用。是否有一些命令会告诉 LaTeX 退出(即类似于\exit)?

谢谢阅读。

编辑 :

值得注意的是,当您运行 tex 而不是 Latex 的变体时,以下内容按预期工作:
$ echo "story\\end" > fifo

(同时,在 tex 控制台中)
$ tex fifo
This is TeX, Version 3.1415926 (Web2C 7.5.7)
(./fifo [1] )
Output written on fifo.dvi (1 page, 212 bytes).
Transcript written on fifo.log.

然而,尽管 Leslie Lamport 在第 233 页的文档准备系统 LaTeX 中指出\end 已被\end{document} 替换,但以下两种情况都不会结束 LaTeX session :
$ echo "\begin{document}story\end{document}"
$ echo "\\begin{document}story\\end{document}"

最佳答案

我建议让你的 shell 将 fifo 管道引导到标准输入。

latex < fifo

当我这样做时,我首先得到这个输出:
This is pdfeTeXk, Version 3.141592-1.21a-2.2 (Web2C 7.5.4) (format=latex 2009.3.25)  18 SEP 2009 14:25
entering extended mode
file:line:error style messages enabled.
%&-line parsing enabled.

然后在 echo 命令之后:
**\end

*
! Emergency stop.
<*> \end

End of file on the terminal!

关于latex - 在命名管道 (fifo) 上调用 LaTeX?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1442559/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com