Ale*_*rey 12 latex warnings miktex
我正在使用MiKTeX 2.8 distibution for Windows.
我们主要开发软件,并使用LaTeX来制作用户说明.我们使用LaTeX是因为:
作为构建服务器上无人参与构建过程的一部分,我们使用MiKTeX的texify可执行文件构建文档.这很有效.
但是,当开发人员出错时(例如\ ref为不存在的\标签)会出现问题.这样的错误只会在LaTeX中生成警告.texify没有注意到这个警告,我们在文档中留下了错误.
我目前有一个构建步骤,它扫描日志文件以查找以'LaTeX Warning'开头的行,如果有的话,则构建失败.这有效,但显然非常不稳定,可能会让警告漏掉.它目前不用于开发机器上的本地构建,但如果这是唯一的方法,我可能必须将它与我们当前使用的编辑器集成(TeXworks随MiKTeX一起提供).
如果发生任何警告(例如未定义的引用),我想使构建失败,而我宁愿不对日志文件进行片状扫描.有什么提供此功能吗?
如果我可以在开发机器以及构建服务器上的本地构建中使用此功能,那将是一个巨大的奖励.
以下(未经测试)代码应将任何警告转换为错误:
\renewcommand{\GenericWarning}[2]{\GenericError{#1}{#2}{}{This warning has been turned into a fatal error.}}
Run Code Online (Sandbox Code Playgroud)
那么你可能会对Silence包感兴趣来过滤警告。
但是,您还需要安排仅在 LaTeX 的最后一次运行时执行此操作,因为在第一次运行期间会出现一些警告,例如未定义的引用。
具有良好 LaTeX 支持的编辑器会告诉您是否需要重新运行 LaTeX(TeXworks 不这样做吗?)。他们通过解析控制台输出或日志文件来做到这一点。它实际上相当健壮(如果您真的担心,您可以重新定义\GenericWarning以向所有警告添加特征字符串)。我认为解析日志是正确的方法。
将此视为针对文档运行的测试。如果存在未定义的引用,则文档构建成功。构建产品是 pdf(或其他)和 TeX 日志。检查日志中的警告是一项测试。
| 归档时间: |
|
| 查看次数: |
1760 次 |
| 最近记录: |