LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Magnus Erixon <[log in to unmask]>
Wed, 7 Aug 2002 16:02:26 +0200
text/plain (104 lines)

Since I don't use the \input command myself, I don't knew
what that command writes in the log-file.
I use the \include command which writes into the log-file.
Lets say I write \include{Introduction} then it writen into
the log-file something like:
\openout2 = 'Introduction.aux'
which makes it possible to see in the log-file how far into
the compilation LaTeX succeded.
That gives a possibility to find out about where
the problem is.

I don't know if \input works in the same way,
but I guess it does.

Hope it is to some help for you.
Good luck!

Magnus Erixon

PS. I do agree to your suggestion about a better error message.

> At 03:44 PM 8/6/2002 +0200, Magnus Erixon wrote:
> >If you check the log-file you get more information!
> >It should be quite easy to find out where things got wrong.
> Thanks for the tip.  What exactly should I search for in the log-file?  I
> cannot find any helpful additional information.
> Below is how the end of my log-file looks in this particular example. After
> producing 325 pages, LaTeX complains about an error on "input line 21".
> After a time-consuming binary search, commenting out half of my \input
> lines at the top level each iteration, I determined that the indicated
> "line 21" was in a file processed just after page [26] was emitted.  There
> is no indication I can find anywhere in the log file that points back to
> that file as a possible source of trouble.  (There could have been a
> warning about an unclosed \begin{itemize} when the offending file was
> processed after page [26], but there wasn't.  In fact, the only occurrence
> the word "itemize" in the log was after page [325] in the output, with no
> indication of relevant source file.)
> In any case, I believe my original suggestion remains a needed
> improvement.  To summarize that, after "input line 21", LaTeX should have
> printed "in file matlab1.tex".  Furthermore, "l.100" in the log-file (see
> below), the line at which the error was detected, should have been printed
> as "filters.tex: line 100:", or equivalent.
> I would be happy to supply the full log file, or even the entire directory
> if anyone is interested.  However, surely others have had this problem on
> occasion.  It can really be a time sink.
> Thanks for your consideration,
> Julius Smith
> CCRMA, Stanford
> ...
> [325])
> ! LaTeX Error: \begin{itemize} on input line 21 ended by \end{document}.
> See the LaTeX manual or LaTeX Companion for explanation.
> Type  H <return>  for immediate help.
>   ...
> l.100 \end{document}
> ? x
> Here is how much of TeX's memory you used:
>   2916 strings out of 20887
>   31880 string characters out of 196273
>   92053 words of memory out of 350001
>   5621 multiletter control sequences out of 10000+15000
>   19851 words of font info for 76 fonts, out of 400000 for 1000
>   21 hyphenation exceptions out of 10000
>   32i,15n,31p,564b,777s stack positions out of 3000i,100n,1500p,50000b,4000s
> Output written on filters.dvi (349 pages, 958056 bytes).
>  > When LaTeX encounters an error, we see something like the following:
>  >
>  > ! LaTeX Error: \begin{itemize} on input line 21 ended by \end{document}.
>  >
>  > However, I typically have many "\input" statements, so it is often annoying
>  > to figure out which file contains the offending line. (In an emacs shell,
>  > I routinely type "\C-u\C-r([a-z]" to get back to the last opened file, but
>  > this is only right some of the time.) It seems it should not be hard to
>  > improve the error message to say instead
>  >
>  > ! LaTeX Error: \begin{itemize} on input line 21 in foo.tex ended by
>  > \end{document}.
>  >
>  > As an optimization, if only one user file has been seen, "in foo.tex" could
>  > be suppressed.
>  >
>  > Thanks for your consideration,
>  > Julius