texjporg / tex-jp-build

Minimum source repository to build Japanese TeX processing tools
23 stars 6 forks source link

issue:445 への対応 #144

Closed h-kitagawa closed 2 years ago

h-kitagawa commented 2 years ago

issue:445(parse_options() の前に kpse_var_value() が実行されるので,ptex --version など本来は texmf.cnf を参照する必要がないはずの状況でも texmf.cnf を探しにいってしまう)への対応です.

infile_enc_auto が parse_options() のあとに定まるようにしましたが,これで問題ないでしょうか.

aminophen commented 2 years ago

ありがとうございます,大丈夫そうに見えます。

aminophen commented 2 years ago

ところで,(e)(u)ptex のみならず ptexenc 依存のいろいろなプログラムが同様の挙動のような気がします。例えば「mendex -h」や「ptftopl --version」なども texmf.cnf を探しに行くようです。

t-tk commented 2 years ago

ありがとうございます。 あまりよく分かっていません。 infile_enc_auto の初期値の 2 は何でもよいのだと思いますが、 guess_input_kanji_encoding を見に行って 1, y, t でなかった場合は、2のままで大丈夫ですか?

質問です。issue:445 とはどこのissueでしょうか?

aminophen commented 2 years ago

issue:445 とはどこのissueでしょうか?

https://ml.texjp.org/pipermail/issue/2022-August/000407.html ですね。

h-kitagawa commented 2 years ago

guess_input_kanji_encoding を見に行って 1, y, t でなかった場合は、2のままで大丈夫ですか? 考慮漏れでした,すみません.ptexenc での初期値が 0 なので,0 に戻すことにしました.

「mendex -h」や「ptftopl --version」 本当ですね.ptexenc に初期化するための関数 init_guess_input_kanji_enc() を追加したほうが良さそうです.

t-tk commented 2 years ago

ptexenc に初期化するための関数

infile_enc_auto を初期化するだけなら set_guess_file_enc(0) でよいような気がします。

思いつきですが、 あるいは、未設定である状況を infile_enc_auto == 2 なり infile_enc_auto == -1 なりで明示するルールにしておけば分かりやすいかも?

h-kitagawa commented 2 years ago

よりシンプルにしました.

未設定である状況を infile_enc_auto == 2

としておき,最初に infile_enc_auto が参照されるとき値が 2 のままなら,texmf.cnf 内の "guess_input_kanji_encoding" を参照して 0 か 1 に決定する処理をしています.

t-tk commented 2 years ago

ありがとうございます。 今までは guess_input_kanji_encoding を texmf.cnf に見にいくルーチンが各プログラムのソースにばらまかれていたが、今回の修正ですべてのptexencを利用するプログラムで共通に働くようになる、という風に理解しました。 texmf.cnf で guess_input_kanji_encoding = 0 が ptex, eptex, platex, platex-dev, pbibtex, mendex 以外で効いているのでdefaultは従来の動作と変わりがなく、大丈夫と思いました。

mendex では guess_input_kanji_encoding を texmf.cnf に見にいく部分を削ることで対応できそうです。

t-tk commented 2 years ago

ありがとうございます。 そろそろ TeX Live svn にコミットしましょうか?

h-kitagawa commented 2 years ago

そうですね,よろしくお願いします.

t-tk commented 2 years ago

TeX Live svnにコミットしました。r64255

t-tk commented 2 years ago

ptexenc 依存ではないものでも、いくつかのソフトで同様の問題があるようです。 upmendex, bibtex-x (bibtex8, bibtexu), dvips では対応して TeX Live svn にコミットしました。

bibtex, pbibtex, upbibtex は -help や -version というオプションがありますが bibtex -help, bibtex -version は texmf.cnf を見に行ってしまうようです。 対応方法がまだ分かりません。

h-kitagawa commented 2 years ago

upmendex, bibtex-x (bibtex8, bibtexu), dvips では対応して TeX Live svn にコミットしました。 どうもありがとうございます.bibtex についてはこちらでも調べてみます.

t-tk commented 2 years ago

bibtexについては↓を用意したのでそちらでお願いします。 https://github.com/texjporg/tex-jp-build/issues/145