日本語Lua(La)TeXのソースがコンパイルできなくなった

日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
返信数: 28

OS(Windows 11 Pro 24H2)のクリーンインストールにともない、TeX Live 2024を改めてインストールしたのですが、

LuaLaTeXのTeXファイルをコンパイルしたところ、以前なら通ったはずのファイルであるにもかかわらず、

エラーが出てくるようになりました。

なお、TeX関係の設定等についてはOSのクリーンインストール前後で変わっていません(メモしていましたので)。

数日かけて切り分けを行ってきましたが、原因が判然としないため、こちらに書き込みさせていただきます。

切り分けのために、(とりあえずこちらでも公開できる内容の)簡素なファイルを添付の通り、

2種類(計10ファイル)作成いたしました。

Tex Live 同梱の原ノ味フォントであれば、問題なくコンパイルできます(test1)が、

小塚フォントですと、以前は問題なくコンパイルできたにもかかわらず、エラーが出てくるようになりました(test2)。

添付のテストファイルですと、小塚フォントが原ノ味フォントになぜか代替されてしまっています。

ちなみに、小塚フォントの使用に関してはAdobe CCを契約していますので、ライセンス抵触はございません。

小塚フォントは「C:\texlive\texmf-local\fonts\opentype\adobe」にシンボリックリンクの形で置いていましたが、

なぜかコンパイル時に認識されないため、「C:\texlive\2024\texmf-dist\fonts\opentype\adobe」にも、

先述のものと同じシンボリックリンクを置きましたが、やはり認識されていないようです。

fc-cache や mktexlsr 等実行しても変化がありませんでした。

日本語Lua(La)TeX絡みとかAdobe Fontsの仕様変更やバグではないということであれば、何が原因なのかわかりません。


少なくとも(OSクリーンインストール前の)9月28日までは通常通りコンパイル可能でした。

対処法ございましたら、教えていただけないでしょうか。

よろしくお願いします。

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- Yamamoto Munehiro "munepi" の投稿
> OS(Windows 11 Pro 24H2)のクリーンインストールにともない、TeX Live 2024を改めてインストールしたのですが、
> LuaLaTeXのTeXファイルをコンパイルしたところ、以前なら通ったはずのファイルであるにもかかわらず、
> (略)
> 小塚フォントは「C:\texlive\texmf-local\fonts\opentype\adobe」にシンボリックリンクの形で置いていましたが、

小塚フォントは、TEXMFLOCALの該当フォルダのみでかまいません。

結論のみお伝えすると、LuaLaTeXでタイプセットする前に、コマンドプロンプトやPower Shellなどのコマンドラインから、

luaotfload-tool --update --force

を実行してください。これでフォントのデータベースが強制的に更新されます。
その上で、

luaotfload-tool --list=plainname | grep KozMin
luaotfload-tool --list=plainname | grep KozGo
(「| grep KozMin」「| grep KozGo」のpipeを通すところはshellに依りますので、お手元のOSなどに合わせて、良しなに置き換えてください)

を実行して、小塚明朝、小塚ゴシックが見えれば、Lua(La)TeXからこれらのフォントが見えているので、Lua(La)TeXから小塚明朝、小塚ゴシックを扱えます。


Yamamoto Munehiro "munepi" への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
Yamamoto様、早速の返信、ありがとうございます。

ご指摘いただいたとおり、luaotfload を実行してみましたが、小塚明朝、小塚ゴシックのシンボリックリンクが
(エクスプローラー等にて検索して実際に)存在しているにもかかわらず、それらの名前が見えません。

ちなみに、grepを使ったパイプの通し方がUnix系とWindowsでは違う(Windowsにはgrepコマンドがない。)ようで、
Windowsでの代替コマンドでの通し方がわからなかったため、

luaotfload-tool --list=plainname >> D:\list.txt

として、出力して代替対応を試みたのですが、それでも出力ファイルを検索してもやはり小塚明朝、小塚ゴシックが見えない状態が続いています。

もしかして、ということとなるのですが、これまで問題にならなかったはずのAdobe Fontsに仕様変更が最近あって
(当方はそれがあるかどうかは存じておりません。)うまくいかないということはありますでしょうか?
シンボリックリンクは「12345.otf」となっていても、その飛び先ファイルは「12345」みたいな拡張子がない、
単なる数字5桁のファイル(実体としてはotfファイルのはずですが…。)となっている影響はありますでしょうか?

当該フォントファイルがLua(La)TeXから見えないので、当然といえば当然なのですが、
テストファイルを実行しても変化がありません(返信前:test2<もとのレスに添付済み>、返信後:test3)。

それとも、Adobe Fontsには仕様変更がないものの、最近のTeX Live 2024の更新において、
こうしたファイルの実体(またはシンボリックリンク)がLua(La)Texからは見えなくなるような、
仕様変更が何かしらあったのでしょうか?

よろしくお願いします。
い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- Yamamoto Munehiro "munepi" の投稿
> ご指摘いただいたとおり、luaotfload を実行してみましたが、小塚明朝、小塚ゴシックのシンボリックリンクが
> (エクスプローラー等にて検索して実際に)存在しているにもかかわらず、それらの名前が見えません。
NTFS上から小塚明朝と小塚ゴシックが見えないかぎり、TeX Live側でkpsewhichコマンドからも当然見えずにどないしようもないですね。
まずは、TEXMFLOCALの然るべき場所で、NTFS上から小塚明朝と小塚ゴシックが存在するようになさってください。

Windows環境について詳しい方にゆずりますが、mklinkコマンドで /D でシンボリックリンクを問題なくはれたと思います。

(ちなみに、native Windows環境でなく、WSL上のLinux環境でhost側のAdobe FontsもMorisawa Fontsも問題なくactivateしたフォントが見えているお客さんがいらっしゃいます。いずれにしましても、NTFS上で該当のフォントが「フォント」として見えるようにすることで、本件も自ずと解決できると思います。)
Yamamoto Munehiro "munepi" への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
mklinkコマンドの用法は今回のトラブル発生前から存じております。
なお、今回のトラブル発生前/後でシンボリックリンクの作成方法を変えておりません。
トラブル発生前に見えたものが、その後(現状)だと見えないというのが腑に落ちないのです。

ですので、何らかの仕様変更を疑ってみた次第です。

山本様の環境がネイティブなWindows環境にはないとのことであり、「Windows環境について詳しい方にゆずります」ともございますので、
そのような方からのコメントを待ちたいと思います。

今のところ解決には残念ながら至っておりませんが、山本様のここまでの何度ものご対応、感謝いたします。ありがとうございました。
い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

Table of Contents

  1. TEXMF に配置した adobe フォント情報について
  2. TEXMFLOCAL に配置した adobe フォント情報
  3. grep コマンドについて

TEXMF に配置した adobe フォント情報について

取り敢えず「C:\texlive\2024\texmf-dist\fonts\opentype\adobe」は削除し ておいた方が良いでしょう。

TEXMFLOCAL に配置した adobe フォント情報

私も Windows 環境は、 本フォーラムでの対応時のみ調査目的でしか利用しないので、 問題が解決するか確証はないのですが、 申告されている内容に間違いはないと思いますが、 確認したいことがあります。

『「C:\texlive\texmf-local\fonts\opentype\adobe」にシンボリック リンクをはられた』とのことですが、以下のコマンドの結果を教えてください。

結果はコマンドプロンプトに表示された内容のコピペでも コマンドプロンプトのウィンドウのスクリーンショットでもどちらでも良いです。

      cd C:\texlive\texmf-local\fonts\opentype
      dir
      dir adobe

また「dir」で示された内容はadobe [C:\XXX\YYY\ZZZZ\adobe]のように なっていると思いますが、配置された「C:\XXX\YYY\ZZZZ\adobeの情報も 以下のようなコマンドの結果も教えてください。

     dir C:\XXX\YYY\ZZZZ\adobe

grep コマンドについて

  • コマンドプロンプトでは findpowershell ではSelect-stringだと 思いますので、使用方法等はインターネット検索等で調べてみてください。
  • grep コマンド
    • chocoletyscoop で比較的容易に導入できます。
    • grep コマンドの類似コマンドには rip grep (コマンドは rg) があり scoop 等で容易に導入可能です。
和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
和田様

1. TEXMF に配置した adobe フォント情報について

すでに「C:\texlive\2024\texmf-dist\fonts\opentype\adobe」は削除済みとなっております。

(編集が上手く反映されなかったので、2と3はすぐに再度再投稿いたします。)
い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
2. TEXMFLOCAL に配置した adobe フォント情報

ご指摘の通り、コマンドプロンプトの画面のコピペを添付ファイルにいたしました。
なお、シンボリックリンクを張る際に、ディレクトリごとではなく、ファイルごととしております。
リンク元とリンク先でディレクトリ名をそろえておりますが、
リンク元は拡張子が「.otf」のファイルであって、リンク先は拡張子なしの数字5文字のファイルということから、
ディレクトリごとのシンボリックリンクは張れないように思います。
ちなみに、このリンクの張り方は以前から全く変えていないですし、直近(9月末)までなんらのトラブルも発生しておりませんでした。
Adobe CCのライセンス的には、リンク元のファイル名の拡張子を「.otf」にすることに何ら問題なくとも、
リンク先のAdobeから自動でインストールされる、拡張子なしの数字5文字しかないファイル(実体はotfファイルですが…。)に
拡張子をつける操作は許されるのか、かりに許されたとしても他のソフトの動作に影響が出る可能性がある、という感じがいたします。

3. grepについて

いまは時間がないため、申し訳ないですが、後日時間を割いて確認させていただきます。
教えていただきありがとうございます。

以上3点に対する返答となりますが、返信いただけますと幸いです。
よろしくお願いします。

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

提供された情報

C:\texlive\texmf-local\fonts\opentype\adobe の ファイルのタイムスタンプを見ると C:\texlive\texmf-local\fonts\opentype\adobe 以下は なんらかのバックアップから復元かしら?

それはさておきシンボリックリンク情報を見る限り妥当な感じはしますが、 「 kpsewhich KozMinPr6N-Regular.otf」で何も表示されないとしたら、 C:\texlive\texmf-local\fonts\opentype\adobe や C:\Users\ichiro\AppData\Roaming\Adobe\CoreSync\plugins\livetype\r のファイルアクセス権は大丈夫でしょうか?

和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
早速の返信、ありがとうございます。

前段です。タイムスタンプが古いとのことですが、過去に作成したシンボリックリンクのコピー(xcopy)になります。

後段ですが、リンク作成方法をさきの返信時に述べた方法2種のいずれかからは変えてはいないので、リンク不備ということではないようです。
リンク先に関しては Adobe からの認証等もあり、ログアウトを経た後のログインの際など適宜ダウンロードされるので、
いつのまにかタイムスタンプが新しくなることがあります。

コマンドプロンプトの画面には

C:\Windows\System32>kpsewhich KozMinPr6N-Regular.otf
c:/texlive/texmf-local/fonts/opentype/adobe/KozMinPr6N-Regular.otf

と出てきますので、ファイルが見えないということではないようです。
アクセス権絡みもトラブル前/後で変化はないようです。

よろしくお願いします。
い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

Table of Contents

  1. KozMinPr6N-Light.otf のシンボリックリンクが prompt.txt に記録されていない
  2. lualatex は TEXMFLOCAL や TEXMFHOME を見てるのかな?

提供していただいた .logファイルや prompt.txt(TEXMFLOCAL の状況)、 lualatex のフォントデータベース情報などを、現状当方で用意できる 環境で警告メッセージなどを中心に見直ししてみました。

KozMinPr6N-Light.otf のシンボリックリンクが prompt.txt に記録されていない

  • 「KozMinPr6N-Light.otf」は使われないのでしょうか?

    • test2.log や test3.log に記録されている「KozMinPr6N-Light」に関して 以下のメッセージが記録されています。

      Package luatexja-preset Warning: Font KozMinPr6N-Light (mc/l) is not found.
      

      ところが、「cd C:\texlive\texmf-local\fonts\opentype; dir ; dir adobe」の処理結果 prompt.txt には記録されていません。このフォント に関しては使用されていないため問題はないと思いますが、ご利用の際は ご留意ください。

lualatex(luaotfload-tool) は TEXMFLOCAL や TEXMFHOME を見てるのかな?

TeXLive 環境下で latex 関係のツールは「カレントディレクトリ」 「TEXMFHOME」「TEXMFLOCAL」「TEXMF」の順に必要なファイルを取り出してい るのがベースだと私は考えています。さらに lualatex ではフォントに関して システムフォントやユーザフォントが追加される(データベースの更新は必要 かな?)と思っていました。

でも Index» Applications & Desktop Environments» [SOLVED] [luatex/texlive]: fontspec Error: font "Arial" can't be found の中に `luaotfload-tool -uvvvv` とオプションを指定すると色々な情報が取れるの で、色々いじっていたら、 windows 環境では、起動直後の表示された 「Scanning TEXMF and $OSFONTDIR for fonts」というメッセージが目に止ま りました。

luaotfload-tool -uvvv   ←「v」の数が多いほど詳細なデバッグ情報を表示

#+BEGINSRC …… luaotfload | db : Scanning the filesystem for font files. luaotfload | db : Scanning TEXMF and $OSFONTDIR for fonts… ←注目 luaotfload | db : $OSFONTDIR has 1 entries: luaotfload | db : [1] c:/Windows/fonts …… #+NEDSRC

この「TEXMF and $OSFONTDIR for fonts」が、影響して いちろう さんが TEXMFLOCAL に設定した情報を取り込んでいないような動きに思えます。

いちろう さんは一時 TEXMF にも設定したようですが、取り込めなかったの は lulatex のフォント検索データベースを再構築していなかったのだからか なと想像しています。

  • 対策(実験環境を準備できないのであくまで思考のみの検証です)
    • フォントインストールアプリで小塚フォントをインストールする … あるいは …
    • Windows/Fonts とは別の場所にあるフォントを使いたい(パスを通す?) を参考に 「C:\texlive\2024\texmfcnf.lua」の「OSFONTDIR」に「$TEXMFLOCAL/fonts/opentype//」 などを追加し lualatex 用のフォントデータベースを更新 … で見れるようになるかしら?
      • もし以前の環境のバックアップがあれば 「「C:\texlive\20??\texmfcnf.lua」 に記述されているかもしれませ んので確認してみてください。
和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
和田様、昨晩も遅い時間帯にご対応ありがとうございます。
 
KozMinPr6N-Light.otf については自身がこれまで、TeX使用時に用いるフォントとして選択してこなかった(必要としていなかった)ため、あえてシンボリックリンクの作成は行っておりませんでした。

TeX Live 2024に非同梱の和文フォントである Noto Sans_JP、Noto Serif_JPを $TEXMFLOCAL/fonts/opentype/ 配下に配置しました(本スレッドで述べている小塚フォントのシンボリックリンクも<これまで述べた場所と同じになりますが、>同じ配下にあります)。

Noto フォントは実体を配下に置いている形となっており、小塚フォントはシンボリックリンクを配下に置いているという形になっているという違いがあります。

その結果、Noto フォントの埋め込みはできましたが、小塚フォントの埋め込みは相変わらずできません。

となると、考えられるのは、TeX Live 2024側には本スレッドで問題としている事象にかかる仕様変更がないこと、
およびAdobe Fonts に対してなんらかの仕様変更があったのではないかということです。
これはあくまで仮説であり、私の認識が誤りであるかもしれません。
ですが、ここまでの状況を考えますと、このような仮説が成り立つのではないか、と思った次第です。

数字5桁の拡張子なしファイルをリンク先とするシンボリックリンクですと、
リンク元のファイル名を(TeX Live 2024が認識できるよう)「KozMInPr6N-Regular.otf」のようにしたとしても、
現時点では、9月末までとは異なり、フォント埋め込みができなくなってしまっているのではないか、と思われます。

例の拡張子なしファイルですが、「スクランブルされ、保護された状態」でダウンロードされているようです。
シンボリックリンクを張るのは、リンク先のファイルを移動させたり、移動させずに拡張子をつける等のファイル名を変更することが、ライセンス的に問題になることが理由になりますが、外部アプリのコマンド入力からのアクセスを封じるようなスクランブルが新たにかかるようになったのならば、TeX Liveでは小塚フォントを埋め込めない、ということとなりそうですね…。

あともし別角度からの検証ができるとすれば、OSの再クリーンインストールを試し、それでもなお状況が改善しないままなのか、それとも従前のように問題なく動くのかをみることくらいになりますでしょうか…。
とはいえ、OSの問題というのは考えにくい気がいたします。

返信いただけますと幸いです。よろしくお願いします。
い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
補足ですが、
> スクランブルされ、保護された状態
はもともとありましたが、スクランブル方法の変更・強化等が行われた可能性があるのではないか、と感じております。
い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿
前回の私の回答で「TEXMFHOME や TEMFLOCAL 云々」ですが いちろう さんの
「Noto Sans_JP、Noto Serif_JPを $TEXMFLOCAL/fonts/opentype/ を実体で配置」
で OK なことと、
luaotfload-tool のオプションには「--prefer-texmf」があるので、
撤回した方が良いと思っています。

さて今回の状況を調べるには、小塚フォント配布状態を入手するしかないのですが、
ライセンス的に提供していただくわけにはいかないので、
現状は原因がわからないのが現状です。

現状の小塚フォントの配布形態からフォントインストール方法について
暇な時に探してみます。

ところで以前の TeXLive のバージョンは?
そしてもしそのバックアップの中に texmfcnf.lua というファイルがあれば
アップロードしてください。
い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿
前回の私の回答で「TEXMFHOME や TEMFLOCAL 云々」ですが いちろう さんの
「Noto Sans_JP、Noto Serif_JPを $TEXMFLOCAL/fonts/opentype/ を実体で配置」
で OK なことと、
luaotfload-tool のオプションには「--prefer-texmf」があるので、
撤回した方が良いと思っています。

さて今回の状況を調べるには、小塚フォント配布状態を入手するしかないのですが、
ライセンス的に提供していただくわけにはいかないので、
現状は原因がわからないのが現状です。

現状の小塚フォントの配布形態からフォントインストール方法について
暇な時に探してみます。

ところで以前の TeXLive のバージョンは?
そしてもしそのバックアップの中に texmfcnf.lua というファイルがあれば
アップロードしてください。
和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿

前回の和田様の回答に関して、撤回した方が良いと思われる点があるとのこと、了解いたしました。
後述の事情から返信遅れまして、申し訳ありませんでした。

Adobe Fonts の小塚フォントの配布形態ですが、今回のトラブル前/後で変化はありません。

ただし、ダウンロードされる、例の数字5桁の拡張子なしファイルにかけられているスクランブルの方式変更があった可能性は排除できなさそうです。LuaLaTeX絡みの設定を基本的にいじっていなかったこと、TeX Live 2024のアップデートに際し、今回のトラブル発生を引き起こすような仕様変更が生じてしまう変更が加わったわけではないことがその理由です。

また、当該5桁のファイルが一太郎とかMS Word等でフォントを普通に他のフォントと同じく選択して入力できることを考えますと、フォント側の仕様変更の線が強くなりそうです。ただ、そうなりますと、私に限らず、他の方でも今回ここで述べたのと同様のトラブルに陥るかと思います。

TeX Live 2024が正式リリースされて以降は当該バージョンを使っていましたので、トラブル前/後でTeX Liveのバージョンは2024で一致しています。アップデートのパッチがどこまであたっていたかということまで加味すれば、コンパイルするそれぞれの時点で、2024の中での最新版にしたかどうかという差があるということとなるでしょうか。

texmfcnf.lua についてはトラブル前/後で一致していました。タイムスタンプの古いものと新しいものがあっても完全一致となっていました(古いものを事前に紙ベースでプリントアウトをしたことにより、確認済み。)ので、新しい方をアップいたします。

実際、昨夜から今日にかけて OS を再インストールし直し、その上で TeX Live 2024 を最新のアップデートまで施す形でインストールし直し、Adobe Fonts もインストールし直しました。この関係でさきのタイムスタンプの古いものが出せなくなりました。

それでも症状改善に至りませんでした。

和田様のご尽力をいただきながらも解決できなかったこと、申し訳なく思います。

Windows 11(10 x64でも本質的に変化はないと思いますが…。)ユーザかつAdobe CCの契約者でフォントの配置をこのスレッドでのべたような仕方でファイルを配置しての実機検証できる方がもしおられるようならば、そのような方からのコメントを待ちたいと思います。

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

Table of Contents

  1. 当該5桁のファイルが一太郎とかMS Word等でフォントで利用できるとのことですが
  2. 小塚フォントのインストール方法について

当該5桁のファイルが一太郎とかMS Word等でフォントで利用できる とのことですが

  • 一太郎や MS Word で小塚フォントを利用するときは「五桁の数字」を指定 するのではなく「Kozu」などで始まるフォント名を指定されたかと思います。
    • そのパス情報がわかれば、それを lualatex で利用できるようには考えられるのですが。

小塚フォントのインストール方法について

  • 小塚フォントはどのようにインストールされたのでしょうか?
    • 恐らく Readme のようなインストールについてのメモ書きなどに 従ったのでしょうか?
  • 一般的なフォント追加方法(釈迦に説法かと思いますが)

    • 一般的にはフォントファイルをクリックし妥当なフォント情報が 整っていたらサンプルテキストなどが表示されれると思います。
    • そして「インストール」ボタンを押せば、 $LOCALAPPDATA/Microsoft/Windows/Fonts/ にフォントはインストールさ れます。

      • $LOCALAPPDATA は texmfcnf.lua に記述されていたものでコマンドプロ ンプトで利用するには「%LOCALAPPDATA%」に読み変えてください。
      • このフォントインストーラの動作は Noto SansJP / Noto SerifJP で 確認はしました
      • また lualatex で利用できるかは、以下のいずれかのコマンドで確認できます。

        luaotfload-tool -uvvvv | Select-String 'notosansjp' # Power Shell
        luaotfload-tool -uvvvv | find.exe      "notosansjp"
        

        以下は上記コマンドで抽出したものの一部(ただしファイル名のパスが 長いので後ろの方のみ表示されるようです)

        luaotfload | db : Loading font ../microsoft/windows/fonts/notosansjp-black.ttf
        luaotfload | db : Loading font ..l/microsoft/windows/fonts/notosansjp-bold.ttf
        luaotfload | db : Loading font ..rosoft/windows/fonts/notosansjp-extrabold.ttf
        luaotfload | db : Loading font ..osoft/windows/fonts/notosansjp-extralight.ttf
        
      • note-jp 用の test4.tex でコンパイルしたところ %LOCALAPPDATA%\Microsoft\Windows\Fontsにインストールされた Note SerifJP のフォントが使用されていることも確認しました。

  • 以前のシステムで「 %LOCALAPPDATA%\Microsoft\Windows\Fonts 」に小塚フォントが 配置されていたか否か確認できると良いのですが。

和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿

和田様、昨日は多忙のため、返信遅れまして、申し訳ありませんでした。

1.「当該5桁のファイルが一太郎とかMS Word等でフォントで利用できる とのことですが」について

Adobe以外の他社アプリから小塚フォント等が利用できるにはできますが、当該フォントの実体やらアクセス方法について、ブラックボックスとなっており、(ネットで検索した情報も含め)一般には明らかにはなっていません。特殊なアクセス方法だということしか言えないと思います。

2. 「小塚フォントのインストール方法について」について

Adobe CCを利用する前提となりますが、小塚フォント等は「Creative Cloud Desktop」というソフトからインストールすることとなります。それ以外からのインストールはできない仕様になっています(ライセンス的にもそうです)。和田様のおっしゃっているような一般的なフォントインストールとは(このようなプロプラエタリなフォントの場合だと)異なります。

以前のシステムで「 %LOCALAPPDATA%\Microsoft\Windows\Fonts 」に小塚フォントが配置されていたか否かですが、おそらくなかったと思います(現行のシステムでもそうですが)。

3. こちらでの追加検証について

シンボリックリンクで問題なかったものが今回のトラブル発生後に問題となりました(既出)。

シンボリックリンクではなく、ハードリンクを張るとなると、問題が解消します。

このことから、何らかの原因で小塚フォント等のシンボリックリンク(正確にはそのリンク先でしょうか。)をTeX Live 2024側から見ることができない状況に陥ったため、今回のトラブルが顕在化したように思います。

TeX Liveは2024(最新)をトラブル前/後通じて利用しています。利用の際に基本的には適宜最新化を行ってから利用するようにしています(万一トラブル発生した際には、状況次第でバックアップから戻したりもいたしますが)。

OSはWindows 11 Proを利用していますが、24H2(最新バージョン)ではなく、23H2ならどうなのかとか深掘りすることもできるでしょうけども、いまは24H2を入れて運用を始めてしまっているので、23H2に一旦戻して、ということの検証を時間的に行えない状況です。ただし、24H2と23H2でシンボリックリンク絡みの変更が加わったという話はなかったはずです(万一見落としがあるようなら、申し訳ありません)。

Adobe FontsはAdobeから定期的に自動インストールが適宜行われる(手動でそれを拒否できません。)ため、インストールされるフォントファイルにスクランブルがかけられていることは従前からあるも、スクランブルの仕様変更がいつどのタイミングで行われるかはブラックボックスになっています。

これらの複合的要因により、トラブル発生となったと思います。

かりにTeX Live側のアップデートに問題がないならAdobe Fontsの仕様変更が要因で、Adobe Fontsの仕様変更がないならTeX Live側のアップデートが要因だ、という感触を受けます。前者ならばプロプラエタリなフォントのため、どうしようもないという感じになりそうです。後者ならば、このスレッドのやりとりが"バグ報告"のような感じになるのかもしれません。

和田様には何度も何度もご対応いただきまして、ありがとうございました。

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

Table of Contents

  1. ハードリンクでは OK とのこと
  2. そこで実験のお願い

ハードリンクでは OK とのこと

  • 一つの解決策が掴めてよかったですね。

  • シンボリックリンクが何故ダメなのか不明ですが、ハードリンクでのファイ ルを読みこむと各種フォント情報が得られたようですね。

  • 今までのお話で五桁の数字のファイルにはなんらかの処理が施されていてな んらかのツールやライブラリ経由でないとフォントの各種情報は読み取れな いものだと思っていましたが、ハードリンクでOKなら直接アクセスしてみて はどうかと‥‥‥

そこで実験のお願い

  • いちろう さんの報告にもありましたが、以下の参考URL によれば Adobe フォントは %AAPPDATA%\Adobe\CoreSync\plugins\livetype に関係するファイ ルが配置されているようです。その下の 「r」ディレクトリには Windows 用のフォントが収容されています。

  • さて「文字化けで困っています」を見ると以下のようなことが書かれていました。

    • 「Distillerを起動し、設定メニューの「フォントの場所」で、下記フォ ルダを追加してください」

    • 追加内容は、「 ~\AppData\Roaming\Adobe\CoreSync\plugins\livetype\ の下にあるディレクトリを全部追加」

    • これをみて texmfcnf.lua の OSFONTDIR にこれを追加したら読めるのではと思い 実験の依頼です。

    • texmfcnf.lua の変更内容

      OSFONTDIR = "$SystemRoot/fonts//;$LOCALAPPDATA/Microsoft/Windows/Fonts//;$APPDATA/Adobe/CoreSync/plugins/livetype/r//",
      
    • 確認方法

      「ハードリンク設定解除」は前提条件です。

      luaotfload-tool-uvvvv
      

      上記結果の中から %APPDATA% 以下のパスのファイルがあるか否か

和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿

和田様

返信遅れまして、申し訳ありません。

実験結果の中から %APPDATA% 以下のパスのファイルがあるか否かですが、「否」でした(出力結果を添付ファイルにしました)。

やはり何らかの原因でシンボリックリンクではだめになり、ハードリンクならOKという状況になったようです。

以前はどちらのリンクだとしても問題になってなかっただけに、なぜなのかというのが引っかかりますね…。

TeX Live側からAdobe Fontsのシンボリックリンクを読みに行けなくなる事象がTeX Liveのアップデートの影響なのか、それとも(ベンダーのAdobe以外にはどうにも対処できないであろう)Adobe Fonts側のスクランブル方法変更の影響なのか、という感じになるのでしょうか。

結果は「否」ではありましたが、追加の実験のご提案、ありがとうございました。

よろしくお願いします。

(投稿者からの依頼で添付ファイルを削除しました - 奥村 晴彦 により編集 - 最初の投稿日時 2024年 10月 22日(火曜日) 09:48)

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

ううむ、残念ですね。 他の小塚フォントをお使いの方の登場を待つことにしましょう。

が 添付された result.txt に記録された「OSFONTDIR のエントリ数」が 2 になっていますね。

業務などに支障にならない範囲で追試していただければ幸いと思います。

以下はこちらで調べた情報です。

rg OS result.txt

結果↓↓
13:luaotfload | db : Scanning TEXMF and $OSFONTDIR for fonts...
14:luaotfload | db : $OSFONTDIR has 2 entries:

試しに当方でエントリを以下に示す差分のように追加してみましたが 3 エントリになります。

luaotfload-tool -uvvvv | rg OS

結果↓↓
luaotfload | db : Scanning TEXMF and $OSFONTDIR for fonts...
luaotfload | db : $OSFONTDIR has 3 entries:

オリジナルとの差分を以下に示します。

--- "C:\texlive\2024\texmfcnf.lua.orig"
+++ "C:\texlive\2024\texmfcnf.lua"
@@ -10,7 +10,7 @@
 return {
   content = {
     variables = {
-      OSFONTDIR = "$SystemRoot/fonts//;$LOCALAPPDATA/Microsoft/Windows/Fonts//",
+      OSFONTDIR = "$SystemRoot/fonts//;$LOCALAPPDATA/Microsoft/Windows/Fonts//;$APPDATA/Adobe/CoreSync/plugins/livetype/r//",
     },
   },
 }
和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿

和田様

ご指摘の「2」が「3」となるべきではないかという点ですが、私のほうでは何度試しても「2」のままでした。

texmf.cnf.lua の更新方法がまずかったのでしょうか。そうであれば、ご指摘いただければと思います。

texmf.cnf.lua を書き換え、mktexlsr を実行してから実験に入りましたが、何度試しても結果はこちらでは「2」のままでした。


添付ファイルの通りです(先のレスのファイルはWindowsファイルのログインユーザ名公開に問題があるため、削除依頼を出しております。rerult2.txtは削除依頼を出したファイルとWindowsファイルのログインユーザ名が異なるだけで同じです)。

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿
「texmf.cnf.lua」は単純にタイプミスと判断し「texmfcnf.lua」と読み替えています。
このファイルは mktexlsr の対象外のようですので mktexlsr は不要のようです。

修正されたファイルのパスは C:\texlive\2024\texmfcnf.lua ですよね。

コマンドプロンプトで「 type C:\texlive\2024\texmfcnf.lua 」
と入力したとき「type」の行も含めた表示されたものを
スクリーンショットでも文字列の選択によりコピペでも良いので
提示してください。

   
和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿

和田様、以下がタイプセットしたときのソースです。よろしくお願いします。

C:\>type C:\texlive\2024\texmfcnf.lua
-- (Public domain.)
-- This texmfcnf.lua file should contain only your personal changes from the
-- original texmfcnf.lua (for example, as chosen in the installer).
--
-- That is, if you need to make changes to texmfcnf.lua, put your custom
-- settings in this file, which is .../texlive/YYYY/texmfcnf.lua, rather than
-- the distributed file (.../texlive/YYYY/texmf-dist/web2c/texmfcnf.lua).
-- And include *only* your changed values, not a copy of the whole thing!

return {
  content = {
    variables = {
      OSFONTDIR = "$SystemRoot/fonts//;$LOCALAPPDATA/Microsoft/Windows/Fonts//;$APPDATA/Adobe/CoreSync/plugins/livetype/r//",
    },
  },
}

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

私の環境で「3」と表示されていた原因は、Noto JP フォントをインストールした時 何故か 「Deleted」ディレクトリが作成された状態で、それをカウントしたたためと思われます。

改めて luaotfload のデバッグ情報を確認すると小塚フォントがインストールされている ディレクトリは対象外になっていますね。

      luaotfload | db : $OSFONTDIR has 2 entries:
      luaotfload | db : [1] c:/Windows/fonts
      luaotfload | db : [2] c:/Users/i-wada/AppData/Local/Microsoft/Windows/Fonts
      luaotfload | db : Path "." matches $PWD ("c:/users/i-wada"), skipping.

この原因はどこにあるか、暇な時間を見つけて検討してみます。

ですので、とりあえずハードリンクで運用する方向で検討してください。

和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿

私家版琉球大学大学院理工学研究科数理科学専攻修士論文用スタイルファイル 20210104版 のページを「OSFONTDIR」で検索した結果をみて、 C:/texlive/texmf-local/web2c/texmf.cnf (無ければ新設)に OSFONTDIR の値を定義したら、 Adobe の小塚フォントがインストールされているディレクトリも db 化作業の対象ディレクトリに加えられるようです。

追加 の C:\texlive\texmf-local\web2c\texmf.cnf 内容

      OSFONTDIR = $SystemRoot/fonts//;$LOCALAPPDATA/Microsoft/Windows/Fonts//;$APPDATA/Adobe/CoreSync/plugins/livetype/r//

上記設定後の luaotfload のデバッグ情報の OSFONTDIR に関連する情報

       luaotfload | db : Scanning TEXMF and $OSFONTDIR for fonts...
       luaotfload | db : $OSFONTDIR has 4 entries:
       luaotfload | db : [1] c:/Windows/fonts
       luaotfload | db : [2] c:/Users/i-wada/AppData/Local/Microsoft/Windows/Fonts
       luaotfload | db : [3] c:/Users/i-wada/AppData/Roaming/Adobe/CoreSync/plugins/livetype/r
       luaotfload | db : [4] c:/Users/i-wada/AppData/Roaming/Adobe/CoreSync/plugins/livetype/r/XXXXXX


       Adobe 以下のディレクトリはダミー(手動)で作成したもの
      最後の XXXXXX はサブディレクトリも見るかのテストでデバック目的で作成したもの
和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- 和田 勇 の投稿
いちろうさんの環境に依存しないで確認できることはないかと思い、
適当なフォント(今回は Noto-JP の一つ)を %APPDATA%/Adobe/CoreSync/plugins/livetype/r に
五桁数字のファイルとしてコピーしました。

結果は、数字だけでは db 登録用のフォントファイルと認識せず、
.ttf などの適切なフォント用拡張子を付与すれば認識することが判明しました。

よって、いちろうさんが見つけられたハードリンクの方法が今の所妥当な解決策のように思います。
和田 勇 への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿

和田様

多忙のため、返信が大幅に遅れまして、大変申し訳ありません。

以前だとハードリンクではなく、シンボリックリンクでも何ら問題のなかったものが、突如問題が顕在化したわけです。

和田様の直近のレスを拝見する限り、(Adobe Fontsに限らず、全般的な)フォントファイルの仕様変更によるものではなく(そもそも仕様変更がなかった。)、TeX Live 2024のアップデートの際、10月初旬あたりに仕様変更が何かしら加わったと解するのが自然な気がいたします。

もっともこれは私・和田様の試行の結果を受け、私が判断したに過ぎず、私の判断が誤っているかもしれませんが、かりに私の推測が当たっていれば、このスレッドの記載事項が"バグ報告"になるのかもしれないですね。

和田様には何度も何度も私の今回のトラブルに向き合い対処していただきましたこと、本当にありがとうございました。

い ちろう への返信

Re: 日本語Lua(La)TeXのソースがコンパイルできなくなった

- い ちろう の投稿
> シンボリックリンクは「12345.otf」となっていても、その飛び先ファイルは「12345」みたいな拡張子がない
正しくは、以下の通りです。申し訳ありません。

シンボリックリンクは「KozMinPr6N-Regular.otf」となっていても、その飛び先ファイルは「12345」みたいな拡張子がない