チケット #38246

日本語ファイル名でエラー

登録: 2018-05-03 15:19 最終更新: 2018-05-20 23:30

報告者:
(匿名)
担当者:
(未割り当て)
チケットの種類:
状況:
オープン
コンポーネント:
(未割り当て)
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
なし
ファイル:
なし

詳細

日本語のファイル名でエラーが起こることがあります。
ptex2pdf -l -ot "-synctex=1 -file-line-error" 名称未設定-1.tex
これはだめで、
ptex2pdf -u -l -ot "-synctex=1 -file-line-error" 名称未設定-1.tex
これはOK
漢字によっては通る
ptex2pdf -l -ot "-synctex=1 -file-line-error" 名.tex

% ptex2pdf -l -ot "-synctex=1 -file-line-error" 名称未設定-1.tex
This is ptex2pdf.lua version 20170622.0.
Processing 名称未設定-1.tex
This is e-pTeX, Version 3.14159265-p3.8.0-180226-2.6 (utf8.euc) (TeX Live 2018) (preloaded format=platex)
restricted \write18 enabled.
entering extended mode
! I can't find file ?908d腱井'.
<to be read again>
\protect
<*> ?908d腱井9c
┃絎9a-1.tex
(Press Enter to retry, or Control-D to exit)
Please type another input file name:

チケットの履歴 (4 件中 3 件表示)

2018-05-03 15:19 更新者: None
  • 新しいチケット "日本語ファイル名でエラー" が作成されました
2018-05-03 16:09 更新者: h7k
コメント

e-pTeX のみというよりかは,pTeX 系列全体で関わる話のような気がします. 日本語 TeX 開発コミュニティの方に関連しそうな issue があるので,リンクを貼っておきます:pTeX/upTeX の日本語ファイル名

私もよくわからないのでとりあえず「再現しました」という報告だけなのですが, 引数なしで起動→「**」の後にファイル名を入力したり,あるいは \input 経由で読み込ませたりすると同様のエラーが発生しますね.

$ eptex
This is e-pTeX, Version 3.14159265-p3.8.1-180226-2.6 (utf8.euc) (TeX Live 2018) (preloaded format=eptex)
 restricted \write18 enabled.
**名称未設定-1.tex
entering extended mode
! I can't find file `名称未設定-1.tex'.
<*> 名称未設定-1.tex

なお,直接コマンドラインから与えた eptex "名称未設定-1.tex" ではエラーが出ませんでした(引用符はなくても通る,こちらの環境は UTF-8 下の Linux).

2018-05-03 16:47 更新者: h7k
コメント

eptex "名称未設定-1.tex" ではエラーが出ませんでした

platex "名称未設定-1.tex"

でエラーが出たので,LaTeX 2018-04-01 による「入力エンコーディングの UTF-8 既定化」(https://www.texdev.net/2018/03/25/latex2e-utf-8-as-standard/, https://github.com/latex3/latex2e/issues/24, https://github.com/texjporg/platex/issues/67) によるものだと思います.

とりあえず,

platex "\UseRawInputEncoding\input 名称未設定-1"
だと通りました.


「引数なしで起動→「**」の後にファイル名を入力」「\input 経由で別のソースファイルから入力」でうまく行かないのは,ファイル名を内部コード(ここでは EUC)に変換してしまうことによるものです.

2018-05-20 23:30 更新者: None
コメント

情報ありがとうございます。 ユーザーサイドでできることとしてTeXShopのworkaroundを作りました。 ~/Library/TeXShop/bin/platex2pdf-utf8

#!/bin/sh # iNoue Koich! (modified by S. Zenitani)

export PATH=$PATH:/Library/TeX/texbin:/usr/texbin:/usr/local/bin

COMMAND=${0##*/} PTEX=${COMMAND%2pdf-*} ENCODE=${COMMAND#*-} JOBNAME=${1##*/} JOBNAME=${JOBNAME%.*} FILENAME="\UseRawInputEncoding\input $1"

eptex -synctex=1 -kanji=$ENCODE -progname=$PTEX "$FILENAME" && \ dvipdfmx "$JOBNAME.dvi"

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする