dvilualatex-dev.fmt を作成するには

Re: dvilualatex-dev.fmt を作成するには

- 和田 勇 の投稿
返信数: 4

hyphen.cfg のファイルの最新は 2012/12/22 というのは、generic babel のものだと思いますので、 一般的には、このファイルを cslatex の同名ファイルと置き換えてはダメです。

さて kpsewhich -a hyphen.cfg の結果が

     > $TEXMFMAIN\tex\cslatex\base\hyphen.cfg
     > $TEXMFMAIN\tex\generic\babel\base\hyphen.cfg

とのことですが おそらく generic の方がディレクトリ階層がひとつ深いので cslatex が 優先選択されたのではないかと推測しています。

なので generic の方から $TEXMFMAIN\tex\generic\babel\base 以下のものを 一階層上の $TEXMFMAIN\tex\generic\babel に移動してみて、mktexlsr 実行後 kpsewhich -a hyphen.cfg を再試行してみてはいかがでしょうか?

なお、 cslatex に含まれているファイルの最終更新日は 2012/12/12 です。 もちろんそこに含まれる hyphen.cfg は 2006/1/13 の日付です。

和田 勇 への返信

Re: dvilualatex-dev.fmt を作成するには

- 栃折 成紀 の投稿
$TEXMFMAIN\tex\cslatex\base\hyphen.cfg [1997/01/30 CSLaTeX] (更新日時は2006‎年‎1‎月‎13‎日、‏‎8:45:24)

$TEXMFMAIN\tex\generic\babel\base\hyphen.cfg [2025/08/03 v25.12 Babel hyphens](更新日時は2025‎年‎8‎月‎4‎日、‏‎4:05:06)
を上書きするというのは損失であり、おっしゃるようにダメだと思うので、改めてご指南の通り、
$TEXMFMAIN\tex\generic\babel\base 内のフォルダ・ファイル
を1階層上の $TEXMFMAIN\tex\generic\babel に移動し、(私は mktexlsr は一切使っていないので)
kpsewhich -a hyphen.cfg
を実行したところ、

c:/usr/local/share/texmf-dist/tex/cslatex/base/hyphen.cfg
c:/usr/local/share/texmf-dist/tex/generic/babel/hyphen.cfg
と出力されました。この状況下で fmtutil-sys --all を実行すると、dvilualatex-dev.fmt は作成されませんでした。
念のため dvilualatex-dev.log を添付します。
栃折 成紀 への返信

Re: dvilualatex-dev.fmt を作成するには

- 和田 勇 の投稿

...(私は mktexlsr は一切使っていないので)

スタイルファイルなどを配置したり、今回のように配置換えした時は、 その検索データベース ls-R を更新しないと目的のファイルを探せないはずなのですが .... でも探せている原因は不明です。

この検索に関わる情報は kpsewhich -a texmf.cnf で示されるファイルの内容を精査しなければいけないかもしれません。

さて、カスタムインストールされているとのことですが、 どのような手順で構築されたのでしょうか?

できればご参考にされた URL や、 もしスクリプトやそれを実行した時のログファイルなどがあれば良いのですが。

特に texdoc cslatex でマニュアル情報を守ると、その冒頭に The CSLaTeX package is obsolete and it will be maintained no more.と記述されている ものをインストールしなければいけない理由や、そのインストールした手順を示していただければ幸いです。

和田 勇 への返信

Re: dvilualatex-dev.fmt を作成するには

- はやて (h20y6m) の投稿
kpsewhich -progname=dvilualatex-dev -a hyphen.cfg

ではどちらが先になりますか?

TeX Live 2025 の texmf-dist/web2c/texmf.cnf には以下の設定があります。

TEXINPUTS.dvilualatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//

つまり dvilualatex-dev は以下の順でファイルを検索するようになっています。

$TEXMFDOTDIR
$TEXMF/tex/latex-dev//
$TEXMF/tex/lualatex//
$TEXMF/tex/latex//
$TEXMF/tex/luatex//
$TEXMF/tex/generic//
$TEXMF/tex//
※ $TEXMFDOTDIR はカレントディレクトリ、$TEXMF は texmf-dist, texmf-local など

dvilualatex-dev から hyphen.cfg を検索する場合本来は以下の順になります。

texmf-dist/tex/generic/babel/hyphen.cfg
texmf-dist/tex/cslatex/base/hyphen.cfg

texmf.cnf の設定を確認してみてください。

----------

CsLaTeX はチェコ・スロバキア語用の LaTeX のようです。
tex/cslatex 以下の hyphen.cfg はこの CsLaTeX 用のもので通常の LaTeX で使うものではないと思います。
はやて (h20y6m) への返信

Re: dvilualatex-dev.fmt を作成するには

- 栃折 成紀 の投稿

TeX Live 2025 のファイル群を、ディレクトリ構造が W32TeX(2021年7月に更新終了)と同じになるように構成しています。kpsewhich -a texmf.cnf で示される

c:/usr/local/share/texmf-dist/web2c/texmf.cnf

については、例外として W32TeX とほぼ同じものを使用しています。おそらくこれが原因でしょう。そこには

TEXINPUTS.dvilualatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//

という記述はなく、実際に

kpsewhich -progname=dvilualatex-dev -a hyphen.cfg

の出力結果は

c:/usr/local/share/texmf-dist/tex/cslatex/base/hyphen.cfg
c:/usr/local/share/texmf-dist/tex/generic/babel/hyphen.cfg

と、cslatex の方が先でした。

そこで、textmf.cnf に

TEXINPUTS.dvilualatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//

という記述を追加し、同じく

kpsewhich -progname=dvilualatex-dev -a hyphen.cfg

とすると

c:/usr/local/share/texmf-dist/tex/generic/babel/hyphen.cfg
c:/usr/local/share/texmf-dist/tex/cslatex/base/hyphen.cfg

と、結果が逆になりました。この下で dvilualatex-dev.fmt は確かに作成できました。

cslatex とは、かつて設計され今は使わない、歴史的産物と受け取ってよいでしょうか。

和田 勇様、はやて様のおかげ様で、この件のからくりが理解できた気がします。texmf.cnf に近年新設された記述を載せないと dvilualatex-dev.fmt は作成されないのでした。個別の事案に向き合っていただきありがとうございました。