こんにちは
W32TeXとTeXLiveを併用する方法をお教えください.
これまでずっと角藤先生のW32TeXを使ってきましたが,いいかげんTeXLiveに切り替えねばと思い,昨日TeXLive2023をインストールしました.Windows10の64ビット機です.
しかし,これまで色々とマクロを自作していたため,しばらく調整のための期間が必要です.
取り敢えず自作マクロを1つずつ C:\texlive\texmf-local\tex\latex\local に入れ,逐一 Powershell で mktexlsr を実行し,調整を始めました.こちらについては,コマンドプロンプトで
> lualatex hoge
のように処理しています.
さて,W32TeX での処理が必要となったため,C:\TeX\ptex\bin にある mktexlsr.exe をダブルクリックして実行したのですが,どうやらTeXLiveにおいたマクロを認識してしまうようで,以前のような出力がでません.こちらは秀丸エディタと祝鳥で処理しています.TeXLiveインストール後に祝鳥の設定は変えていませんので,W32TeXの platex を呼びにいっていると思います(確認の方法が分かりません).
TeXLiveをインストールしたまま,W32TeX内の platex とマクロを使って処理する方法がありましたらお教えいただきたく,お願い致します.
山下
W32TX ユーザではないのですが、誰も答えないので ...
一番重要なのは、環境変数 PATH。
次に大事なのは TEXMFCONF や TEXMF TEXMFLOCAL TEXMFHOME などがありますが、
TEXMFxxx は恐らく「Control Pannel での環境変数編集」等は行われていないとして回答します。
大まかではありますが TeXLive や W32TeX アプリは、
- 起動
- TEXMFCONF が未設定の場合は `` kpsewhich texmf.cnf'' で求められる texmf.conf を読み
- TEXMF や TEXMFLOCAL TEXMFHOME を設定する
- documentclass やusepackage で指定されたものは TEXMFHOME TEXMFLOCAL TEXMF から探して取り込む
というような動きをします。
ですので、W32TeX を実行時に TeXLive のマクロが読み込まれているものがあれば、
kpsewhich texmf.conf とそのまま実行するのではなく、
C:\texlive\2023\bin\win32\kpsewhich texmf.conf のような形で
W32TeX の方も調べ、その中に記述された TEXMFxx の記述をチェックする必要があります。
とはいえ、対策案ですが ...
TeXLive で処理するときは C:\texlive\2023\bin\win32 を
またW32TeX で処理するときは、山下さんの環境では C:\TeX\ptex\bin を
環境変数 PATH の「先頭」になるように定義すれば切り替えられるようになります。
心配であれば、W32TeX を実行するときは、 TeXLive のパスを取り除く
など、対応するもののをPATH に含めない方法をとれば確実かと思います。
以上の説明で。ご理解いただけなければ、コマンドプロンプトで以下のコマンドを実行した
結果をとりあえずアップロードしてください。
set
なお、アコギな方法では TeXLive を先頭に、 W32TeX をその後ろに配置した PATH を用意し、
W32TeX を実行するときは C:\texlive を C:\texlive-not-work-now のようにリネームで対処でも良いと思います。
一番重要なのは、環境変数 PATH。
次に大事なのは TEXMFCONF や TEXMF TEXMFLOCAL TEXMFHOME などがありますが、
TEXMFxxx は恐らく「Control Pannel での環境変数編集」等は行われていないとして回答します。
大まかではありますが TeXLive や W32TeX アプリは、
- 起動
- TEXMFCONF が未設定の場合は `` kpsewhich texmf.cnf'' で求められる texmf.conf を読み
- TEXMF や TEXMFLOCAL TEXMFHOME を設定する
- documentclass やusepackage で指定されたものは TEXMFHOME TEXMFLOCAL TEXMF から探して取り込む
というような動きをします。
ですので、W32TeX を実行時に TeXLive のマクロが読み込まれているものがあれば、
kpsewhich texmf.conf とそのまま実行するのではなく、
C:\texlive\2023\bin\win32\kpsewhich texmf.conf のような形で
W32TeX の方も調べ、その中に記述された TEXMFxx の記述をチェックする必要があります。
とはいえ、対策案ですが ...
TeXLive で処理するときは C:\texlive\2023\bin\win32 を
またW32TeX で処理するときは、山下さんの環境では C:\TeX\ptex\bin を
環境変数 PATH の「先頭」になるように定義すれば切り替えられるようになります。
心配であれば、W32TeX を実行するときは、 TeXLive のパスを取り除く
など、対応するもののをPATH に含めない方法をとれば確実かと思います。
以上の説明で。ご理解いただけなければ、コマンドプロンプトで以下のコマンドを実行した
結果をとりあえずアップロードしてください。
set
なお、アコギな方法では TeXLive を先頭に、 W32TeX をその後ろに配置した PATH を用意し、
W32TeX を実行するときは C:\texlive を C:\texlive-not-work-now のようにリネームで対処でも良いと思います。