-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
upTeX で内部コードが euc/sjis の場合の日本語ファイル名 #136
Comments
パッチ h20y6m@3ad14cf を書いてみました。 ( |
明日以降に時間が取れたら調べますが,
とフォーマット側でのみ kanji-internal-enc を設定した状態で日本語ファイル名を指定してもダメですね. 同様の現象は
でも見られます. |
自己レスです.
virtex 用には「フォーマットファイルを読み込んだら,buffer の中身をコード変換する」ルーチンが必要なのかもしれません. |
とりあえず https://github.com/h-kitagawa/tex-jp-build/tree/ptex_cmdline でデバッグコード付きで色々試し中です(時間がないので全部網羅していはいません). |
フォーマットの作成時の そのためコマンドラインの解析前に内部コードを確定することはできず、フォーマットを読み込んだ後に変換するしかないと…… win32 の場合コマンドラインを UTF-8 で取得するために
|
upTeX では古くからあった挙動で,pTeX も同じ挙動にしたのは #55 の時です。 |
あと -fmt とかもそうですね.理想は「フォーマット読み込み後にそれぞれ変換し直す」ですが,できるかなあ……. |
フォーマット名 ( |
フォーマット名については,「コマンドラインで
|
こちらも長い間放置して申し訳ありません。 #125 も同時に直ったような気がします。 |
テスト (2fc1dd7) を入れて WindowsのMingw64でも試しています。
(1) \input で "! I can't find file fnさざ波.tex." (2) \input で "! I can't find file fnさざ波.tex." (3) \input で "! I can't find file fnさざ波.tex." (2) のメッセージ
(3) のメッセージ
|
Windows はろくな検証環境がない&私がよくわかっていないので,ほったらかしています,すみません. |
ごちゃごちゃいじっていたら #136 (comment) の (2) が 私の環境は今、メインが WSLの Ubuntu Linux, Windows系は MSYS2+mingw64 ですが、TeX Live svn のテストスクリプトが大体動いてたまにFAILするようです。FAILの理由は多分 test script がプラットフォームの違いを吸収できていないだけだと思います。 |
(重複コメントを削除しました) 985d420 の状態で、pTeX, upTeX ともに期待した範囲では想定通りに動いているようです。
(1)(3) Windowsでは、ファイル名の文字列EUCではファイルがopenできない。Windowsでは想定外なので無問題。 気になる点が見つかりました。文字列の後ろの方にゴミが残る。
|
|
ありがとうございます。ゴミが消えたことを確認しました。 波ダッシュ問題(変換表の揺らぎの問題)が少々気になりますが、おそらくこうなっているという予想を書いておきます。 #45 (comment) に書いたポリシーを若干修正して、今はこう考えています。
|
逆に ptex互換モード(内部コード sjis)のときは 問題はフォーマットを読み込んだ後に内部コードが sjis だと分かった場合で、この時はすでに
|
@h20y6m さん、コメントありがとうございます。
というものでした。なので、
が出来ていれば合格だと思っています。 |
そもそも、現在 Windows 上の pTeX/pLaTeX では |
試してみました。23ee5ea このテストはLinuxでは動かないはずです。 |
CP932の機種依存文字も入れると、現状こんな感じです。
(1)(3) Windowsでは、ファイル名の文字列EUCではファイルがopenできない。Windowsでは想定外なので無問題。 |
3de0565 変換表の揺らぎ問題では、Linuxでも同様に、変換表と整合が取れている範囲で動くはず。 上記で話題の件、コマンドラインのファイル名、 |
いろいろありがとうございます。
こうしておけば platex という名前で起動したときはのときは
それでいいと思います。 |
パイプ経由のテストを追加し、さらに ef44d36 で非JIS X 0208のutf8を一応試してみたので表に追加します。
(1)(3) Windowsでは、ファイル名の文字列EUCではファイルがopenできない。Windowsでは想定外なので無問題。 |
今の master で ptests/fnさざ波-euc-euc-term.log
uptests/fnさざ波-euc-euc-term.log
|
upTeX で内部コードを euc/sjis にしている場合に日本語ファイル名を正しく扱えないことに気づきました。
\input
で指定した日本語ファイル名を指定した場合は開けない。.tex
が開かれる?\input
で指定した日本語ファイル名を指定した場合は開ける。\input
で指定した日本語ファイル名を指定した場合は開ける。upTeX を内部コード euc/sjis で使う人なんていないとは思いますが、texjporg/ptex-manual#4 (comment) の「「内部コードが euc/sjis の upTeX」を pTeX の代わりに起動すれば」のような話もあるので pTeX がサポートする範囲で動くようにしておきたい。
The text was updated successfully, but these errors were encountered: