tex 中間生成ファイルとコンパイル
参考文献とか図表の番号とか反映されんくて,何度もとりあえずタイプセット
をクリック!!みたいなこと繰り返してたのでちょっと理解するために調べてみた.やっとなんとなく理解できたのでまとめとく.
ファイルの種類
とりあえずやたら生成される様々な種類のファイルの意味.内容で大別する.
拡張子 | 意味 |
---|---|
.tex | 編集するメインファイル |
.bib | 編集する参考文献ファイル |
- とりま実際に編集するのはこの二つ.
拡張子 | 意味 |
---|---|
完成されるpdfファイル | |
.dvi | pdfに変換する一歩手前のバイナリファイル |
- 最終的に完成させるファイル
- pdfを作成するんだけどtex的にはdviが完成物みたいなもの,これを作成していく.
拡張子 | 意味 |
---|---|
.aux | 図表や式などの番号付けに使用する補助ファイル |
.bbl | texファイルで参照された参考文献が書かれるファイル |
- 理解に重要な中間生成ファイル
- auxってのがない状態でコンパイルされるとdviの図表とかの番号が
[?]
になっちゃうってことですね
拡張子 | 意味 |
---|---|
.log | ログファイル |
.blg | 参考文献系のログファイル |
- ログ系.コンパイルにおいて特に重要ではない.無くても出来る.
コンパイルの流れ
ファイルの意味調べたらなんとなく理解.
実際に,pdfの番号部分に[?]とか出ちゃったり繰り返しタイプセットしなきゃいけない意味について.
タイプセット(texshop)の流れ,挙動が次のよう.
1.LaTeX
でタイプセット
auxがない状態でのコンパイルなのでpdf(dvi)には番号付けがされない.\cite{}
とか図表や式のrefを読み取ってauxに番号付けの情報と,参考文献のリストが作成される.(参考文献の番号付けの情報はまだ入ってない)
(2).LaTeX
でタイプセット
(bibがないなら)
番号付けのためのauxファイルがある状態でコンパイル.番号付けされた状態でpdf(dvi)が作成.(完成)
2.BibTex
でタイプセット
auxファイルを元にbibファイル (データベースみたいな使われ方) から,参照された参考文献が書かれたbblファイルができる.
3.LaTeX
でタイプセット
bblファイルを元にauxファイルが更新され,番号付けの情報が入る.
4.LaTeX
でタイプセット
auxが完全になってるので,pdf(dvi)が番号付けされた状態で作成.(完成)
まとめ
とりまauxで番号付けしてるので,(1)aux作るためと(2)auxからpdf(dvi)作るため,で2回タイプセットしなきゃなのは当然だった.
あとはbibファイル使うならauxからbbl,bblからauxを作成するって流れ.
何回も適当にタイプセットしてたら解決する意味を理解.
+α
texshopは自動でpdfまで作成されるからいらんけど,dviをpdfに変換するコマンド (hogehoge.dvi -> hogehoge.pdf)
dvipdfmx hogehoge
あと.synctex.zg
的なもの.TeX ソースを開いたエディタと PDF ビューワとの間での相互ジャンプを実現する仕組みとのこと.