警告 バッチファイルで削除した場合,ゴミ箱に入らずきれいさっぱり削除されます
必要なファイルが消えても責任は持ちません
notopad 等のテキストエディタで以下の内容のファイルを作り
00.bat のような名前で保存しダブルクリックする。
基本的なコマンドプロンプトの利用法は本で調べてください。
これらを組み合わせるといろいろなことが可能になります。これだからMS-DOS時代が懐かしい。
すべて11 10 8 7 XP で動作確認済
◎ フォルダ内の.texファイルをすべてコンパイルするバッチファイル
for %%I in (*.tex) do platex %%I
◎ emathPs.sty を利用している場合は2回繰り返す
for %%I in (*.tex) do platex %%I
for %%I in (*.tex) do platex %%I
◎ dvipdfmx で pdf を作成する
for %%I in (*.dvi) do dvipdfmx %%I
◎ 組み合わせて以下のようにすればソースから pdf が作れる
for %%I in (*.tex) do platex %%I
for %%I in (*.tex) do platex %%I
for %%I in (*.dvi) do dvipdfmx %%I
del *.dvi
別法
ファイル 1.bat
for %%I in (*.tex) do call 2.bat %%I
ファイル 2.bat
platex %1
platex %1
dvipdfmx %~n1
別法2
ファイル 3.bat
for %%I in (*.tex) do call :sub %%I
goto :EOF
:sub
platex %1
platex %1
dvipdfmx %~n1
exit /B 0
◎ emathPpで作成されるcheckperl.texをコンパイルから除外するには
http://www.piedey.co.jp/
の
フリーソフトウェアライブラリ http://www.piedey.co.jp/softs/index.html
から
NT版UNIX-like tools
をいただいてきてパスの通った場所へ解凍する。
for %%I in (*.tex) do platex -shell-escape %%I
を
findf ./ -name "*.tex" -a -not -name "checkperl.tex" -print -exec platex -shell-escape {} ;
(この場合,当該フォルダ内にサブフォルダがあったとき,内部のファイルも対象になる
サブフォルダ内のファイルは対象外にしたいときは -maxdepth 1
をオプションに追加すること 2011-07-29追記)
という内容で差し替えたバッチファイルをtexソースのあるフォルダにいれダブルクリックする
findf.exe
については,圧縮ファイル内のマニュアルを参照すること
◎ ps 経由 adobe distiller で pdf を作成する
準備 角藤先生のサイトの W32 utilities から distill.zip
をいただいてきて,distill.exeをPATHの通った場所へ入れる。 adobe distiller へもPATHを通す。
for %%I in (*.tex) do platex %%I
for %%I in (*.dvi) do dvips -Ppdf %%I
for %%I in (*.ps) do distill -N -Q %%I
◎ emathPpを利用した場合作成される .d1
.d1.pl ファイル群を削除する
補助ファイルの拡張子がemathPl.sty 2010/04/29 v 0.23で変更になる(100501追加)
for %%I in (*.tex) do platex -shell-escape %%I
del *.d1*
del *.d2*
del *.d3*
del *.d4*
del *.d5*
del *.d6*
del *.d7*
del *.d8*
del *.d9*
rem 変更に対応
del *_d*.dta
del *_d*.plpdfを作成し .tex と .pdf 以外を削除するバッチ(130202追加)
for %%I in (*.tex) do platex -shell-escape %%I
for %%I in (*.tex) do platex -shell-escape %%I
for %%I in (*.dvi) do dvipdfmx %%I
attrib -a *.bat
attrib -a *.tex
attrib -a *.pdf
del /a:a /q *.*
◎ フォルダ内の bmp ファイルを一括で eps ファイルに変換する
準備 imagemagick を c:\usr\imagemagick にインストールする
ファイル 1.bat を次のように作成する。
for %%I in (*.bmp) do call 2.bat %%I
ファイル 2.bat を次のように作成する。
c:\usr\imagemagick\convert %1 %~n1.eps
二つのファイルを bmp ファイルのあるフォルダへコピーし 1.bat をダブルクリックする
imagemagick を私が利用した理由 HiResBoundingBox を imagemagick は挿入してくれるため。購入した教科書会社の問題集のTeXソースに付属のbmpファイルをHiResBoundingBox付きepsにしたかった。TeXソースはHiResBoundingBoxを利用するように書かれていたため。
おまけ Windowsにも convert というコマンドが存在するのでフルパス指定している。普通の人は絶対使わないもの。
bmp を png などimagemagick が対応するものに換えることでいろいろ応用できる。
◎ 正常コンパイル後不要なファイルを削除する
:label1
"c:\program files\hidemaru\hidemaru" %1.tex
pause
rem -shell-escape 必要なら挿入すること
platex %1.tex
if errorlevel 1 goto label1
rem ここから削除したいものを並べること
del %1.aux
del %1.log
del %1.bak
del hk@.*
以上のファイルを00.batとでも名前を付けて保存し,TeXのファイル名がhoge.texなら拡張子を省略して
00 hoge[enter]
とすれば大丈夫です。エディタはお使いのものに変更してください。
Win7で確認済みです。
platexはエラーの場合1を返してきます。
要点 platexの返すエラーレベルでエディタに戻って修正できる 上記例を組み合わせれば下手な統合環境より自由度がある
◎ フォルダ sjis 内の tex sty txt を JIS に変換してフォルダ jis に送る
rem 00.bat
cd sjis
for %%I in (*.tex) do ..\01.bat %%I
for %%I in (*.txt) do ..\01.bat %%I
for %%I in (*.sty) do ..\01.bat %%I
cd ..
rem 01.bat
nkf -j -Lu %1 >../jis/%1
del %1
○00.bat 01.bat のあるフォルダにsjis と jis
というフォルダを作成
sjis のファイルをフォルダsjis に入れ 00.bat
をダブルクリックする
するとフォルダjis にjis に変換されたファイルができる
○nkf.exe はvectorから探してくること
○フォルダsjis内のファイルの文字コードは無関係にJISに変換される(nkf.exeはファイルの文字コードを推定して変換する)