\verbatiminput でソース挿入時の日本語コード

\verbatiminput でソース挿入時の日本語コード

- skasai の投稿
返信数: 7

お世話になります。

WindowsVista + Winshell 3.3 + 3.1415926-p3.1.10 (sjis)  を使っています。

verbatiminputで挿入すべきファイルはutf-8形式で保存されています。

当然文字化けしてしまいます。

texのソースはshift-jisのまま,挿入すべきソースはutf-8のままで,文字化けさせずにdviやps, pdfを作成するにはどうすればよいでしょう。

utf-8のファイルをコード変換せずに済ます方法はありますか??? 

skasai への返信

Re: \verbatiminput でソース挿入時の日本語コード

- 土 村 の投稿

Unix 用の ptetex3 とか ptexlive ならば、ファイル読み込み時に nkf 経由で文字コードを自動変換できるので、ご希望のことができます。

Cygwin で 日本語 TeX の platex は nkf 通せるんでしたっけ?

土 村 への返信

Re: \verbatiminput でソース挿入時の日本語コード

- KUROKI Yusuke の投稿
> Cygwin で 日本語 TeX の platex は nkf 通せるんでしたっけ?

はい.nkf をフィルタとして通せますし,nkf の Cygwin 用バイナリも配布しています.
もとのご質問者がお持ちの UTF-8 ファイルに Shift_JIS 非互換な Unicode 文字が入っていないという条件つきですが,
環境変数 PTEX_IN_FILTER を "/usr/bin/nkf -s" とセットして,platex, dvipdfmx を通せば,お望みの結果になると思います.
例を添付しておきました.
skasai への返信

Re: \verbatiminput でソース挿入時の日本語コード

- Z. R. の投稿

ちょっと気になって、自分が作ったものを試してみたけど、無理でした。

\filterinput\input やその幾つかの下請けをフックしているんですが、\verbatiminput\read で読んでいるのでどうしようもないんですね…。

で、\@input で読んでいる LaTeX 2.09 の verbatim パッケージを無理やり使うとうまくいく…。

以上、何の役にも立たない書き込みでした ;-)

Z. R. への返信

Re: \verbatiminput でソース挿入時の日本語コード

- Z. R. の投稿

というわけで、2.09 での処理方法を利用して、\filterverbatiminput という命令をつけてみました。(今度は LaTeX2e の)verbatim パッケージと一緒に使います。

Z. R. への返信

Re: \verbatiminput でソース挿入時の日本語コード

- skasai の投稿

これで解決…,と思って zrtest2.zip の test.tex をコンパイルしたところ,

pxfltsrc: options=
pxfltsrc: start-up session...
system(perl -S pxfltsrc.pl ::_pxfl_1 start)...disabled.

でした。。。。

ActivePerlですが perl はインストール済みです。

pxfltsrc.pl  の実態がどこにあるのかを理解していませんが,どのあたりを修正すべきかご意見をいただくことできませんか???

skasai への返信

Re: \verbatiminput でソース挿入時の日本語コード

- Z. R. の投稿

zrtest2.zip には新しい .sty だけを入れていました。完全なパッケージはこちらのページからダウンロードして下さい。

あと大事な点として、PXflsrc では、内部で Perl を呼ぶ関係上、platex 起動時に -shell-escape(短縮して -sh)という 「内部でのコマンド実行を許可する」オプションを指定する必要があります (もちろんこのオプションには危険性が伴います)。

WinShell 上で使う場合でも platex にこのオプションが付加される ように設定すればよいのですが、常時使用する設定で有効になるのは あまりにも危険なので、別に -sh が有効な platex を 起動する設定(ボタン?)を用意して適宜使い分けるのが無難でしょう。 [QA:38727] を参照してください。(私自身は WinShell を使っていません。)

Z. R. への返信

Re: \verbatiminput でソース挿入時の日本語コード

- skasai の投稿

Z.R. 様

 これで所期の目的を果たすことができました。ありがとうございました。