よろしくお願いします。
先日から新しいPCの環境整備をしているのですが、新しい環境下(TeX Live2024)でコンパイルがうまくいかずに困っています。
具体的には以下のようなエラーメッセージが表示されます。
TeX capacity exceeded, sorry [parameter stack size=32767].
ネットの情報を参考にして、「texmf.cnf」の中にあるmain memoryの値などを変えてみましたが結果変わらず...
コンパイルした文章については、以前使っていたPC(TeX Live2023)の時は正常にコンパイルできました。
解決方法をご存じの方がいらっしゃればお力添えをいただきたいです。
追加情報の提供依頼
原因追究のため、以下の情報を提供してください。
再現ソースファイル
問題が再現するソースファイルが望ましいのですが、研究上・業務上などの 都合でそのまま公開できない場合は、質問のしかた を参考に発生するソー スを作成し、それを添付ファイルとしてアップロードしてください。
再現ソースファイルで処理した際に生成される .log ファイル
- .log ファイルでもある程度推測できますが実行環境を教えてください。
- OS は Windows? macOS? linux(ubuntu, debian)?
- 処理に利用するエンジンは?
- [ ] platex / ptex2pdf -l
- [ ] uplatex / ptex2pdf -l -u
- [ ] lualatex
- [ ] xelatex
- [ ] そのほかの場合はその名称
- お詫びです - .log の冒頭のなにやら日本語ファイル名が文字化けしているのをみて私の検証方法が間違っていたことに気がつきました。
- 私は platex ではなく platex ソースをpdf まで自動で作成するラッパー
ptex2pdf -l
で行っていました。 ptex2pdf -l
で処理する分には問題ないのですが、直にplatex
で処理すると冒頭の日本語文字化けでエラーストップ- y.tabata 様はおそらく
latexmk
やllmk
などのラッパーを使って、エラーを無視するようにしているので件のメッセージが出力されているとおもいます。
- y.tabata 様はおそらく
ptex2pdf -l
で通るのにplatex
でエラーになる件については https://okumuralab.org/tex/mod/forum/discuss.php?d=3744&parent=23384 に関連はしているかとおもいますが- その対処として https://okumuralab.org/tex/mod/forum/discuss.php?d=3744&parent=23385 を処置しても改善されません
- ソースファイル名から日本語文字列を除去すると platex でも通ります。
- 以上から暫定処置ですが
ptex2pdf -l
の利用を検討お願いします。 TODO
platex 直でも正常できる方法や抜本的な対策の検討
訂正です platex 直
で処理される場合は以下の暫定処置を実施してください
.aux
を削除して再検証してみたところ
ログにファイル名の文字化けは生じるものの 処理はできますね。
tlmgr update --self --all などを実施し読み込んだスタイルファイルなどの情報はおなじもののですが、
逆に何故わたくしのところでは はやてさん の暫定処置を施さない場合、
件の TeX capacity exceeded
はどうして表示されないかという疑問が残ります。
現時点では、ログファイルの文字化け解消にもつながるので はやてさん の暫定処置は施した方が良いと判断しています。
PS:
実のところ、訂正
の投稿の理由は、当初 llmk -C
で中間ファイルのクリーニングを
行おうとしていてうまくいかず はやてさん の暫定処置以外に原因があるとおもい TODO を示していたのですが、
その投稿の後、いろいろ試していてうまくいったので 訂正投稿 をしたのですが、不十分な検証であったことを反省しています。
で、今回 井汲 景太 さんのフォロー投稿で改めて検証したところ、別の問題らしきものを見つけましたので別スレッドに投稿します。
-src-specials のオプション追加で再現しました。 ありがとうございます。
おかげでlog の差分に Source specials enabled
が表示されていた原因わかりました。
が、新たな疑問が出ました。(別スレッドをあげたほうがよいかな?)
私はコマンドラインでまず検証しようとターミナルを立ち上げますが、 その際ファイル名をタブ補完すると 「platex .\2024年度春休み特訓確認テスト3.tex」のようになります。
うろ覚えですが、以前はこの .\
(ドット バックスラッシュ)で始まっていても処理できたのですが、どうやら basename を取りだしに失敗しているみたいでエラーになります
\
を /
に書き換えたり .\
を取り除くともちろん処理はできますが、面倒だだけなんですが。