当我运行 pdfLaTeX 时,我得到非常详细的输出:
(/usr/local/texlive/2008/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie
s/tikzlibrarycalc.code.tex)
...
是否有一个脚本可以吸收所有详细输出并允许重要内容通过,例如错误、过满的水平盒子等等?
另外,为什么对于长度超过 79 个字符的行,它会向控制台发送硬回车?
答案1
79 个字符后的换行符在 Web2C 的配置文件 texmf.cnf 中定义。变量名称是max_print_line
您可以在文件中更改的(一般不推荐,但在这种情况下设置是真的无害);并且如果您从 shell 运行 TeX,您还可以在环境中设置此变量(export max_print_line=1048576
对于类似 Korn 的 shell,set max_print_line 1048576
对于 C shell)。
我不知道如何完全禁止换行;只有当这种行为令我烦恼时,我才会将变量设置为一个非常大的值。
答案2
解决方案是
使用
-interaction batchmode
开关或放在\batchmode
文档的开始处(或任何您想要停止显示输出的地方)。在您想要启用输出生成的任何位置使用
\scrollmode
、\nonstopmode
或。启用错误交互。\errorstopmode
\errorstopmode
\batchmode
在任何您想要禁用输出生成的地方使用。- 为了减少混乱,请使用命令行开关,并使用以下模板。
>
\begin{document}
\scrollmode
....
\batchmode
\end{document}
\scrollmode
这只会显示和之间的乳胶输出,\batchmode
几乎没有其他内容。
如果您使用 WinEdt(或者可能是其他自动化流程),它似乎喜欢无缘无故地打开长度为 0 的 pdf。它似乎也没有简单的方法来检查长度为 0 的文件。
- 将以下内容添加到
ExecCompiler.edt
文件中\执行字符串“// 检查输出是否已生成...”后面的目录。(它位于底部附近)
执行编译器
Run('DeleteFileIfEmpty.exe "%P\%N.pdf"','%P',0,0,'%N.pdf',0,0,1);
IfFileExists("%P\%N.pdf", "Relax;", !"JMP('Exit');");
- 这是一个简单工具的 C 代码,如果文件为空,它会删除它。
删除文件若为空.cpp
#include <tchar.h>
#include <Windows.h>
long GetFileSize(const TCHAR *fileName)
{
WIN32_FILE_ATTRIBUTE_DATA fileInfo;
if (NULL == fileName) return -1;
if (!GetFileAttributesEx(fileName, GetFileExInfoStandard, (void*)&fileInfo)) return -1;
return (long)fileInfo.nFileSizeLow;
}
int _tmain(int argc, _TCHAR* argv[])
{
argv = CommandLineToArgvW(GetCommandLine(), &argc); if (argc < 2) return -1;
_TCHAR *fn = new _TCHAR[1000]; ZeroMemory(fn, 1000*sizeof(_TCHAR)); _TCHAR *fn2 = fn;
for(int i = 1; i < argc; i++) { _tcscpy(fn2, argv[i]); fn2 += _tcslen(argv[i]); _tcscpy(fn2++, _T(" ")); } fn2--;
if (GetFileSize(fn) > 0) return -1;
DeleteFile(fn);
return 1;
}
您可以在以下位置下载此文件
http://www.freefilehosting.net/deletefileifempty
将 DeleteFileIfEmpty.exe 放在 %path% 环境或 WinEdt 设置使用的 bin 目录中的路径中。
已使用 WinEdt6 进行了测试,可以正常工作。减少输出混乱(没有包加载消息、横幅等...)并且不会在出现错误时打开空文件。
答案3
这就是安静此包旨在提供帮助。
答案4
为了整齐地格式化输出,我创建了自己的解决方案:pydflatex. 您可以使用以下方式编译文件
pydflatex myfile.tex
并得到如下输出
除了提供整洁、简洁的输出之外,它还会隐藏辅助文件,以免使您的文件夹混乱。
编辑现在也可以运行
pydflatex -l file.tex
它将会解析现有的日志而无需排版。