LaTeX2e 的最新版本改变了 \IfFileExists 的行为。为什么?

LaTeX2e 的最新版本改变了 \IfFileExists 的行为。为什么?

自上次 LaTeX2e 版本发布以来,以下乳胶文档的输出已发生改变:

\documentclass{article}
\begin{document}
\IfFileExists
  {}
  { yes }
  { no }
\end{document}

发行日期:2020-02-02:

发行日期:2020-10-01:是的

为什么?这是故意的吗?

更新

假设我们test.tex.erb首先使用了一个由 Ruby 处理的文件。

\documentclass{article}
\begin{document}
\newcommand{\mypath}{<%= @image.path %>}
\IfFileExists
  {\mypath}
  {\includegraphics{\mypath}}
  { no image }
\end{document}

@image.path有时会nil显示\mypath空白。\includegraphics{\mypath}自最新版 LaTeX2e(2020 年 10 月)以来,这会导致失败。在任何以前的 LaTeX2e 版本中,文本“无图像”都会被正确渲染。

解决方案

我们使用的简单解决方案是:

\newcommand{\mypath}{<%= @image.path || './inexistant.txt' %>}

问题解决了。谢谢。

相关内容