emath BBS

新規発言一覧最新記事過去一覧検索HOME

No.287  perl がらみのエラー処理
発言者: tDB
発言日: 2003 11/21 18:49
発言元: 61.121.40.80
No. 276 からのスレッドで問題となった現象は
perl のエラーに起因します。

emath では,perl と連携してグラフ描画などを行いますが,
perl でエラーが発生しても,ログファイルには記録されませんから
ログファイルだけを見ているのでは解決しません。

具体例をごらんいただきましょう。
下の ex.tex をタイプセットするとエラーとなり,
ログファイルは

=== ex.log ===================
system(perl temp.pl)...executed.


! emathPp Error : Perl との連携ができていません。.
\reserved@a ... : Perl との連携ができていません。}
                                                  
l.8 \calcval{\x-\y}\z
-------------------------------

となっています。
     Perl との連携はできているはずなのに,おかしいなぁ〜
で,途方にくれることとなりかねません。

タイプセットが止まったところで,
画面には perl の吐き出したエラーメッセージ

=== perl の出力するエラーメッセージ ============
Can't modify constant item in postdecrement at temp.pl line 3, near "3--"
Number found where operator expected at temp.pl line 3, near "--2"
        (Missing operator before 2?)
syntax error at temp.pl line 3, near "--2"
Execution of temp.pl aborted due to compilation errors.
------------------------------------------------

が見られるはずです。
これをみれば,タイプセットが通らないのは

    \x-\y すなわち 3--2

の syntax error である,
ということが分かるはずなのです。

% --- ex.tex ------------------------------------
\documentclass{jarticle}
\usepackage{emathPp}
\checkPerl

\begin{document}
\def\x{3}
\def\y{-2}
\calcval{\x-\y}\z
\z
\end{document}

▼関連発言

287:perl がらみのエラー処理 [tDB] 11/21 18:49<-last

Pass 保存


CGIROOM