Re: log file内のerror messageについて

名前: トノ
日時: 2002-08-07 02:42:56
IPアドレス: 210.131.39.*

>>9999 元の質問者である栗田さんに対しては、どなたか、エラー元のファイル名を表示 してくれるような統合環境的なものの紹介等、どなたかがコメントしてくださる のを期待するとして・・・ 単純に、 \documentclass{article}\relax \begin{document} \udefinedcontrolsequence \end{document} というファイルを処理した場合、log ファイルは次のようになりました。 This is pTeX, Version p2.1.7, based on TeX, Version 3.14159 (SJIS) (Web2c 7.0, Win32 DLL 1.0.3) (format=platex 2.1.26) 7 AUG 2002 02:08 **\input test1.tex (H:\test\test1.tex (F:\TeX\texmf\tex\latex\base\article.cls Document Class: article 2001/04/21 v1.4e Standard LaTeX document class (F:\TeX\texmf\tex\latex\base\size10.clo File: size10.clo 2001/04/21 v1.4e Standard LaTeX file (size option) ) \c@part=\count81 \c@section=\count82 \c@subsection=\count83 \c@subsubsection=\count84 \c@paragraph=\count85 \c@subparagraph=\count86 \c@figure=\count87 \c@table=\count88 \abovecaptionskip=\skip41 \belowcaptionskip=\skip42 \bibindent=\dimen118 ) (H:\test\test1.aux) \openout1 = `test1.aux'. LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 2. LaTeX Font Info: ... okay on input line 2. LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 2. LaTeX Font Info: ... okay on input line 2. LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 2. LaTeX Font Info: ... okay on input line 2. LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 2. LaTeX Font Info: ... okay on input line 2. LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 2. LaTeX Font Info: ... okay on input line 2. LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 2. LaTeX Font Info: ... okay on input line 2. LaTeX Font Info: Checking defaults for JY1/mc/m/n on input line 2. LaTeX Font Info: ... okay on input line 2. LaTeX Font Info: Checking defaults for JT1/mc/m/n on input line 2. LaTeX Font Info: ... okay on input line 2. ! Undefined control sequence. l.3 \udefinedcontrolsequence ? ! Emergency stop. l.3 \udefinedcontrolsequence End of file on the terminal! ファイル名は3行目、エラーメッセージは39行目(具体的な行数は、環境によっ て多少変わると思います)と、かなり離れています。また、エラーメッセージか ら上にさかのぼって最初にたどり着く読込みファイル名は、読込みが log ファ イル上の1行で完結している test1.aux を除外して考えても、エラーのあるファ イルの名前ではなく size10.clo になっています。 上の例は画面出力は3行目にファイル名、6行目にエラーメッセージと、確かに 「数行上」になりますし、log ファイルの方も、ソース先頭部分特有の出力がほ とんどですので、特異例かもしれませんが、該当ファイルを読み始めてからエラ ーが発生するまでの間に - 行分割の制約が厳しいような場合には Underfull \hbox や Overfull \hbox の警告表示 - pLaTeX でフォントを切替えたような場合には LaTeX Font Warning: Font shape `JT1/mc/m/sc' undefined (Font) using `JT1/mc/m/n' instead on input line 83. のような警告表示 等々が大量に出力されて、エラーメッセージに出会った時点で該当のファイル名 を判断するのに苦労するのは、そう珍しいことではないでしょう。 また、e をタイプしてエディターを起動する方法ですが、複数のエラーがある場 合には、エラーを1か所修正するごとにファイルを保存して LaTeX を起動して、 再度 e でエディターに・・・ということを繰り返すことになります。 自分で文書作成するときには、こまめに LaTeX で処理してエラーの有無を確か めればいいのですが、他所から受取ったファイルにエラーがあった場合とか、文 書の方ではなく自作のマクロの定義を変えた場合とかには、エラーに対して一端、 s や q で残りも処理させ、後で一気に修正したいと思うわけです。 私は昔、log ファイルを読込んで、エラー部分を、エディターで利用できるタ グファイルとして出力するような Perl スクリプトを書いたこともあります が、 LaTeX 2.09 の時代に作ったもので、LaTeX2e ではうまく動きません。 こういったことをしてくれるソフトがどこかにないものかなあ、と思っている のですが・・・。

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます)