mendex のスタイルファイルの改行

Re: mendex のスタイルファイルの改行

- はやて (h20y6m) の投稿
返信数: 1
mendexk のソースコードを見てみましたが、行の途中でファイルの終端 (EOF) に遭遇するとその行は処理されずに読み捨てられてしまうようです。
https://github.com/TeX-Live/texlive-source/blob/trunk/texk/mendexk/fread.c#L603
履歴をさかのぼってみましたが mendexk が TeX Live にコミットされた 2010 年の時点からそのような動作になっていると思われます。

というわけで、mendex の場合はファイルの最後の行に必ず改行を入れるようにしてください。


mexdexk だけ動作が違うのは文字コード変換を行うために標準の fgets 関数から独自の文字コード変換しながらファイルを読む関数に置き換えており、その関数がそうなってしまっているためのようです。
upmendex は UTF-8 前提で文字コード変換機能はないはず。

おそらくバグだとは思いますが修正したとしても TeX Live 2026 はすでに code freeze ですのでよほどのことがなければ修正バイナリは TeX Live 2027 になると思います。
はやて (h20y6m) への返信

Re: mendex のスタイルファイルの改行

- でび まる の投稿

返信ありがとうございます。

> mendexk のソースコードを見てみましたが、行の途中でファイルの終端 > (EOF) に遭遇するとその行は処理されずに読み捨てられてしまうようです。

なるほど。

> というわけで、mendex の場合はファイルの最後の行に必ず改行を入れるようにしてください。

エラーのときなかなか気が付かないのが困りものですね。ありがとうございました。