如果缺少某个子文件,则 TexShop 无法编译

如果缺少某个子文件,则 TexShop 无法编译

我在 Mac 上使用 TexShop v3.81。在根文件中,我包含了许多子文件(子文件或包含文件)。上次我意外删除了其中一个子文件并编译了根文件,但运行良好。但是,我反对这种行为;TexShop 必须显示错误,说\include{file name}丢失了。这将帮助我意外丢失其中一个文件。我不知道是否有某种设置可以做到这一点。请帮忙。

答案1

您可以重新定义\include以检查文件是否存在,如果不存在则终止处理:

代码:

\documentclass{article}

\let\OldInclude\include
\renewcommand*{\include}[1]{%
\IfFileExists{#1}{%
    \OldInclude{#1}%
}{%
    \typeout{Error: Missing file: #1}
    \ExitDueToUndefinedControlSequence
}%
}

\begin{document}


some text

\include{zzzzz}

\end{document}

答案2

缺少文件是错误的,\input\include没有错误,但会向控制台和日志文件发送一条消息,警告文件丢失。

\documentclass{article}

\begin{document}

\include{zzzzzzz}

\end{document}

产生终端输出

No file zzzzzzz.tex.

相关内容