我希望 pdfTeX 打印终端日志的格式与TeX. 字体信息(尤其是使用大量字体时)会使日志输出难以阅读。
在下面的例子中,如何抑制来自终端的{/usr/local/share/texmf/fonts/map/pdftex/updmap/pdftex.map}
输出</usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb>
?
$ pdftex '\relax A\bye'
This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015/Debian) (preloaded format=pdftex)
restricted \write18 enabled.
entering extended mode
[1{/usr/local/share/texmf/fonts/map/pdftex/updmap/pdftex.map}]</usr/share/texli
ve/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb>
Output written on texput.pdf (1 page, 8454 bytes).
Transcript written on texput.log.
将上面的例子与这个进行比较:
$ tex '\relax A\bye'
This is TeX, Version 3.14159265 (TeX Live 2015/Debian) (preloaded format=tex)
[1]
Output written on texput.dvi (1 page, 208 bytes).
Transcript written on texput.log.
答案1
我讨厌加载字体的列表,因为当一切正常时,这不是重要的信息。当然,如果字体有问题,那么这个列表可能会有用。我的终端高度有限,由于这个关于大量字体的无用列表,重要的信息(关于过满的框、关于 OPmac 警告、关于未声明的引用等)被滚动。
我知道 LaTeX 用户不会阅读终端输出,因为这里有很多无用的行。但普通 TeX 用户不是这种情况。所以,我不同意字体信息非常相关性。只有当我们需要它们时,它们才具有相关性。
我个人的解决方案远非最佳。我grep
在标准输出的管道(在 Unix 中)使用,以抑制 pdftex 在终端上打印的字体信息。因此,非常有用的信息不会滚动。该pdfcsplain
命令在我的计算机中实现为:
#!/bin/bash
pdftex -fmt pdfcsplain $@ | grep -Pv '[^\s]{79,79}|pdfTeX warning|fixed one|^$'
答案2
你比较错了:正确的比较是
> tex '\relax A\bye' && dvips texput
This is TeX, Version 3.14159265 (TeX Live 2016) (preloaded format=tex)
[1]
Output written on texput.dvi (1 page, 208 bytes).
Transcript written on texput.log.
This is dvips(k) 5.996 Copyright 2016 Radical Eye Software (www.radicaleye.com)
' TeX output 2016.06.12:1635' -> texput.ps
</usr/local/texlive/2016/texmf-dist/dvips/base/tex.pro>
</usr/local/texlive/2016/texmf-dist/dvips/base/texps.pro>.
</usr/local/texlive/2016/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb>
[1]
PDF 中包含的字体文件的信息是非常相关。实际上,我希望至少有一个选项可以显示哪些.vf
和.tfm
文件已加载(尽管这可以通过 实现-recorder
)。
如果您确实想隐藏字体信息pdftex
,则必须修改其源并重新编译它。