Como forçar a parada no arquivo de entrada ausente?

Como forçar a parada no arquivo de entrada ausente?

Percebi que se eu incluir por engano um arquivo que não existe, como ao digitar incorretamente o nome do arquivo, a compilação continua sem erro, sem aviso e apenas com a mensagem 'Nenhum arquivo colophon2.tex'. Isso só acontece quando \include arquivos tex, não com \includegraphics e \includepdf. O que é pior, esta mensagem se perde entre muitas outras mensagens de compilação que não são interessantes/não importantes.

Como posso forçar a parada da compilação com um erro nesses casos, ou pelo menos me avisar de forma mais visível que algo está faltando?

Estou usando um Macbook Pro, OS X 10.6.8, e tentei isso com Sublime Text, Texshop, TexMaker, TexWorks e todos os outros IDE Tex que encontrei. todos eles têm o mesmo problema.

A versão do pdflatex é a seguinte:

pdflatex -v
pdfTeX 3.1415926-2.3-1.40.12 (TeX Live 2011)
kpathsea version 6.0.1
Copyright 2011 Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
There is NO warranty.  Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
Compiled with libpng 1.5.2; using libpng 1.5.2
Compiled with zlib 1.2.5; using zlib 1.2.5
Compiled with xpdf version 3.02pl5

Desde já, obrigado!

Responder1

Para alterar a digitação

No file no-file-like-this.tex.

para um erro

! LaTeX Error: File `no-file-like-this.tex' not found.

Você pode corrigir \includepara usar um normal \inputem vez de aceitar arquivos ausentes:

\documentclass{article}
\usepackage{etoolbox}
\makeatletter

\patchcmd\@include\@input@\input{}{}

\makeatother
\begin{document}
\include{no-file-like-this}
\end{document}

informação relacionada