LaTeX Workshop で中間ファイルが自動削除されなくなったので直した話
私は高校生の頃から、以下の記事を参考にしながら、LaTeX Workshop の標準機能を用いて、VS Code 上で中間ファイルを削除しつつ upLaTeX や LuaLaTeX を利用していた。
参考にしていた記事はこちら。
しかし最近、何かの拍子で .fls や .fdb_latexmk などのファイルが自動で削除されなくなってしまい、困っていた。
それを、重い腰を上げて解決した話である。
主に参考にしたのは以下の記事である。
解決方法
早速、解決方法として私の settings.json の一部を貼る。
"latex-workshop.latex.tools": [
// ...
{
"name": "clean up nonessential files",
"command": "latexmk",
"args": [
"-C",
"%DOC%"
]
},
// ...
],
"latex-workshop.latex.recipes": [
// ...
{
"name": "latexmk",
"tools": [
"latexmk",
"clean up nonessential files"
]
},
// ...
],
これらを「いいように」修正しながらコピペしてコンパイルすれば、以下のように .pdf と .synctex.gz だけが残るようになるだろう。
.synctex.gz について
読者の中には、.synctex.gz も残るのが鬱陶しいと思われる方もいらっしゃるかもしれない。
しかし、これは仕方がないことであることが以下の記事からわかる。
SyncTeX は TeX ソースを開いたエディタと PDF ビューワとの間での相互ジャンプを実現する仕組みです.
つまり、.synctex.gz は TeX ソースと PDF ビューワの相互ジャンプのために必要なファイルである。
.toc は消してよいのか
ここで気になるのは、.toc を消してよいのかということである。
以下の記事によると、
.tocが削除されると目次が生成されず, ...
とある。
一方で、latexmk のオプションについては以下のようになっている。
-c - clean up (remove) all nonessential files, except
dvi, ps and pdf files.
This and the other clean-ups are instead of a regular make.
-C - clean up (remove) all nonessential files
including aux, dep, dvi, postscript and pdf files
and file of database of file information
-C だと .dvi も削除してくれるのである!!!
が、私は LuaLaTeX を使っているので、そもそも .dvi は生成されないのである……
.dvi を削除してくれるとなると、記事に書いてある clean dvi file あたりの記述はすべて消せる。
ということで、完成したのが最初に示した settings.json である。
以上。
私の FF 諸氏は、わからなければ DM なりで聞いてくれれば答えるので、気にせず聞いてください〜
2026/05/05 現在
VScode で引き続きLaTeXと向き合っていますが、最近は中間ファイルを残したままにしています。.log を読めるようになってきたりしたので、逆にこれらを自動で消すのが不便になったことが要因です。完成したファイルはアーカイブ化として.texと.pdfだけ別フォルダーに移動させて、mainのワークスペースは進行中のものだけを配置するようにしています。あと、Git を用いて管理するようになりました。