694びぼーろく; GWに突入した

ので嬉しい。ゆっくりすることにした。 さて、研究室で 一生懸命  適当に育てていたコーヒーの木が14年目にして花を咲かせ、コーヒーの実をつけた。これも嬉しい。

200びぼーろく;dvips & ps2pdf か dvipdfmx か

いつもlatexを使ってるけど、以下のように2系統でpdfを作っている。

通常のファイル: dvipdfmx でdvi-> pdf  
スライド作成: powerdot なので dvi-> ps -> pdf 

それぞれ処理が違うのでいつも別のスクリプトを作って処理させていた。
けど、いちいち切り替えるのは非常に面倒なので、コンパイルするtexファイルの先頭に手でコメントを追加して、その内容で切り替えることにした。


dvipdfmxを使う場合には先頭行に %% dvipdfmx を入れ、  dvips, ps2pdfを使う場合には  %% dvipsを入れておいて、それで判断させて切り替える。


実際にはこのスクリプトはdvips が先頭行に含まれているかどうかで判定しているので、ps経由でコンパイルする場合だけ、先頭行に%%dvipsを追加すればOK。

さて後々のためにスクリプトを残す。といってもすぐ書ける内容なので残すほどでもないと思うけど...。

platex, dvipdfmx ,dvips ,ps2pdf にパスが通っていることが前提。


--------------ここから-------------------

#!/bin/bash

export TEXFILE=$1  
## tex ファイルの指定

export DVITYPE=$(head -1 $1 |grep dvips )   
## dvipsが含まれているかどうか

platex --shell-escape $TEXFILE && platex --shell-escape $TEXFILE 
## 2回platex にかける


if [ "$DVITYPE" = "" ]; then  
        dvipdfmx $(echo $TEXFILE|sed s/\.tex$/\.dvi/)         
        ##dvipsが含まれていない時、dvipdfmx でpdfを生成
else 
        dvips $(echo $TEXFILE|sed s/\.tex$/\.dvi/) && ps2pdf $(echo $TEXFILE|sed s/\.tex$/\.ps/) 
        ##dvipsが含まれている時、dvips, ps2pdf経由でpdfを生成
fi

export FILENAME=$(echo $TEXFILE|sed s/\.tex$//)
for i in $FILENAME.*
        do(
        if [ "$i" = "$FILENAME.tex" ]; then 
                        echo "TEXFILE"
                elif [ "$i" = "$FILENAME.pdf" ]; then 
                        echo "PDFFILE"
                elif [ "$i" = "$FILENAME.dvi" ]; then 
                        echo "DVIFILE"
                else  
                        rm $i
                fi
        )
        done

## tex, dvi,pdf ファイル以外は全て削除

pdfopen $FILENAME.pdf

##pdfを開く



--------ここまで--------------




さて、とうとう200回も書いてしまったけど、あまり内容は変わってない。
ま、備忘録なので変える必要もないんだけれど。

最近matlabのクローンとしてscilabというものがあることを教えてもらった。
行列の計算に定評があるらしい。
ちょっと勉強してみようかと考え中。

コメント

このブログの人気の投稿

471びぼーろく; ffmpegの音・映像ずれ修正

329びぼーろく; latexでヤング図を書く

531びぼーろく; python上でのヤコビ楕円関数