同じ階層内のファイルを参照しない

同じ階層内のファイルを参照しない

- Hi Ishikawa の投稿
返信数: 6
Texstudio、Texlive2020をwindows使用しています。今まで階層が同じであるUSB内の同じファイル内でにあるファイルを参照させたとき、問題なかったのですが、Texlive2024をダウンロードしたところ、Texstudioではinputで参照させるファイルを理解しているのにコンパイルすると! LaTeX Error: File `〇〇.tex' not found.とでてファイルの場所が見つからないようです。仕事にしようが出るため、2024はアンインストールしました。何かやり忘れでしょうか?アンインストールしたので、2020で問題なくファイルの参照もします。
Hi Ishikawa への返信

Re: 同じ階層内のファイルを参照しない

- 和田 勇 の投稿

Table of Contents

  1. 検証用 latex ソース
  2. 検証結果
  3. お願い

検証用 latex ソースなど

  • main.tex (添付ファイル)

    \documentclass{jlreq}
    \begin{document}
    \input{input.tex}
    \end{document}
    
  • input.tex (添付ファイル)

    INPUT
    INPUT
    
  • 検証には lualatex を利用

    • 利用されているビルドコマンドが不明でしたので便宜的に lualatex を利用
  • 検証環境( すべて telive 2024 を利用 )
    • macOS コンソール
    • windows コンソール ( usb 上に配置されたものを使用 )
    • windows texstudio ( usb 上に配置されたものを使用 )
      • scoop で インストール( TeXstudio 4.7.3(git 4.7.3))

検証結果

  • いずれも問題なく input.tex を読みビルド可能でした

お願い

  • 再度 2024 をインストールする際は上記 main.tex input.tex を利用してビルドし、その際に出力される main.log をアップロードしてください。
  • また環境変数 Path の情報もコマンドプロンプトで処理した結果を教えてください。
和田 勇 への返信

Re: 同じ階層内のファイルを参照しない

- Hi Ishikawa の投稿
返信ありがとうございます。
もう一度インストールしてみます。
Hi Ishikawa への返信

Re: 同じ階層内のファイルを参照しない

- Hi Ishikawa の投稿
もう一度インストールし直しました。いただいたファイルはきちんと認識しました。
ただ、今まで作った物で試したらダメで、何がいけないか色々試してみたところ
名前でした。
今までinputファイルの名前を日本語にしていましたが、Texlive2020からTexlive2024にして
日本語のファイル名(保存は日本語でも大丈夫です)の読み取りができないのは
どこか直すと改善しますか?
Hi Ishikawa への返信

Re: 同じ階層内のファイルを参照しない

- はやて (h20y6m) の投稿
Windows の TeX Live 2024 で
-----
% ほげ.tex
\documentclass[]{jlreq}
\begin{document}
ほげ
\input{ふが}
\end{document}
-----
% ふが.tex
ふが
-----
を同じディレクトリにおいて
  > ptex2pdf -l ほげ
は正常
  > platex ほげ
だと
    ! LaTeX Error: File `ふが.tex' not found.
になる

という不思議なことが起きますねぇ……何でしょう?

はやて (h20y6m) への返信

Re: 同じ階層内のファイルを参照しない

- はやて (h20y6m) の投稿
わかりました command_line_encoding = utf-8 です。

これは Windows 環境でコマンドラインやファイル名を UTF-8 として扱う機能であり、
本来 p(la)tex では無効なはずのなのですが、
platex が euptex ベースになったことで意図せず有効になってしまったようです。

ptex2pdf は p(la)tex を呼び出すときに環境変数経由で command_line_encoding = none
を設定しているため大丈夫なようです。

とりあえず回避策として C:\texlive\2024\texmf.cnf に以下の記述を追記してみてください。

command_line_encoding.ptex = none
command_line_encoding.eptex = none
command_line_encoding.platex = none
command_line_encoding.platex-dev = none