ptex2pdf の入力ファイル名の拡張子について

ptex2pdf の入力ファイル名の拡張子について

- Boundary Value の投稿
返信数: 5
TeXLive2016のptex2pdfを、OS X, Ubuntu/Linux, Windows10, のそれぞれで使っていますが、OSに依存する事項があり、質問させていただきます。
入力したいファイル名をtest.tex とすると、OS X, Ubuntu/Linux上では:
$ ptex2pdf -l test
と.texという拡張子を指定しなくてもプロセスされますが、Windows10上では、
$ ptex2pdf -l test.tex
と.texという拡張子を陽に指定しなければ、以下のようなエラーが発生します:
.dvi -> .dvi.pdf
dvipdfmx:fatal: Could not open specified DVI (or XDV) file: .dvi
Output file removed.
ptex2pdf processing of .\test failed.

Windows10上でも、ptex2pdfの挙動を同じにしたいのですが、何か方法はありますでしょうか?
ちなみに、platex, dvipdfmxを直接使えば、OS X, Ubuntu/Linux, Windows10,の全てにおいて、.texという拡張子を指定しなくてもプロセスされます。したがって、ptex2pdfのWindows10用のスクリプトの一部を直せば、 OS X, Ubuntu/Linuxと同じ挙動をするようにできると思うのですが…

 

Boundary Value への返信

Re: ptex2pdf の入力ファイル名の拡張子について

- KUROKI Yusuke の投稿
うちではうまくいきます.

コマンドプロンプトへの入力,からの出力の両方を,削ることなく貼ってもらえますか?
`ls -F` の結果もあったほうが状況把握が早くできると思います.

ちなみにこちらではこんな感じです.(これは TL2015のログですが,TL2016 on Windows 10でも同様です.)

... >ptex2pdf -l test
This is ptex2pdf[.lua] version 0.8.
Processing test
This is e-pTeX, Version 3.14159265-p3.6-141210-2.6 (sjis) (TeX Live 2015/W32TeX)
(preloaded format=platex)
restricted \write18 enabled.
entering extended mode
(./test.tex(guessed encoding: UTF-8 = utf8)
pLaTeX2e <2006/11/10> (based on LaTeX2e <2015/01/01> patch level 1)
Babel <3.9l> and hyphenation patterns for 79 languages loaded.
(c:/texlive/2015/texmf-dist/tex/platex/jsclasses/jsarticle.cls(guessed encoding:
ISO-2022-JP = jis)
Document Class: jsarticle 2014/02/07 okumura
) (./test.aux) [1] (./test.aux) )
Output written on test.dvi (1 page, 272 bytes).
Transcript written on test.log.
test.dvi -> test.pdf
[1
dvipdfmx:warning: Removed 16 null character(s) from fontname --> YuMincho-Regula
r
]
6529 bytes written
test.pdf generated by dvipdfmx.

####
>dir test*

... のディレクトリ

2016/08/27 12:37 8 test.aux
2016/08/27 12:37 3,189 test.log
2016/08/27 12:37 6,529 test.pdf
2016/08/27 12:35 81 test.tex
KUROKI Yusuke への返信

Re: ptex2pdf の入力ファイル名の拡張子について

- Boundary Value の投稿
KUROKI様、ご返事、ありがとうございます。
大変不思議なのですが、もともとptex2pdfを走らせたファイルは長く複雑なものでしたので、非常に簡単なファイルをtest.texとしてptex2pdfを走らせたところ、うまく行きました。そのあと、再び元の複雑な方のファイルを処理したところ、今度は、なぜか問題なく走りました。
以前の問題は、ptex2pdfを走らせ、その中で dvipdfmx test を実行するときに、test.dviが存在しないからエラーになったようです。なぜ、前回はtest.dviが見つからなくて、なぜ今回は見つかるのか、不思議です。

ひとつ気がついたことは、ptex2pdf -l testを行った後は、test.dviが自動的に消去されていることです。これは、ディスクスペースをセーブするために付けられたptex2pdfの機能なのでしょうか?


Boundary Value への返信

Re: ptex2pdf の入力ファイル名の拡張子について

- Yamamoto Munehiro "munepi" の投稿
> ひとつ気がついたことは、ptex2pdf -l testを行った後は、
> test.dviが自動的に消去されていることです。
> これは、ディスクスペースをセーブするために
> 付けられたptex2pdfの機能なのでしょうか?

-i をつけると、 .dvi を自動で消去しません。

$ ptex2pdf
[texlua] ptex2pdf[.lua] { option | basename[.tex] } ...
options: -v  version
        -h  help
        --help print full help (installation, TeXworks setup)
        -e  use eptex class of programs
        -u  use uptex class of programs
        -l  use latex based formats
        -s  stop at dvi
        -i  retain intermediate files
        -ot '<opts>' extra options for TeX
        -od '<opts>' extra options for dvipdfmx

実際に、ptex2pdf の lua スクリプトの該当箇所を見れば、
.dvi を os.remove しています。
Boundary Value への返信

Re: ptex2pdf の入力ファイル名の拡張子について

- KUROKI Yusuke の投稿
> ひとつ気がついたことは、ptex2pdf -l testを行った後は、test.dviが自動的に消去されていることです。これは、ディスクスペースをセーブするために付けられたptex2pdfの機能なのでしょうか?

ptex2pdfの(ptexのソースファイルからPDFファイルを作りたいという)目的には不要なので消去されるのが標準です.

munepiさんの回答もご覧ください.