latexmk -C
不会删除包comment.cut
创建的临时辅助文件comment
。如何实现此功能?
梅威瑟:
$ latexmk --version
Latexmk, John Collins, 25 October 2018. Version 4.61
$ cat test.tex
\documentclass{article}
\usepackage{comment}
\specialcomment{smalltt}{\begingroup}{\endgroup}
\begin{document}
\begin{smalltt}
test
\end{smalltt}
\end{document}
$ latexmk && latexmk -C
[...]
$ ls
comment.cut test.tex
设置$clean_full_ext='cut';
不起作用~/.latexmkrc
:
$ cat ~/.latexmkrc
$clean_full_ext='cut';
$ ls
test.tex
$ (latexmk && latexmk -C) &> /dev/null && ls
comment.cut test.tex
我尝试了其他扩展并且它们似乎运行良好:
$ cat ~/.latexmkrc
$clean_full_ext='jpg'
$ echo abc > test.jpg && ls
test.jpg test.tex
$ (latexmk && latexmk -C) &> /dev/null && ls
comment.cut test.tex
答案1
Latexmk 维护者在此:您发现的是当前版本中的实际情况latexmk
。最初$clean_full_ext
变量是指定扩展清理时要删除的文件,其基本名称与 .tex 文件的名称相同。我对其进行了扩展,以允许使用更通用的模式,使用通配符,但要求模式包含占位符%R
,该占位符将被 .tex 文件的基本名称替换。这在实践中是必要的。
但我对更通用的通配符模式感到不安,因为配置中的一个小错误可能会带来相当危险的后果。即便如此,有一种删除特定文件的方法还是很有用的comment.cut
。我会把这当作一个功能请求。
同时,解决问题的最简单方法是简单地配置一些东西,使注释文件没有固定的名称,而是 .tex 文件的基本名称加上扩展名.cut
。这可以通过输入
\def\DefaultCutFileName{\def\CommentCutFile{\jobname.cut}}
\DefaultCutFileName
在文档的序言中,然后设置
$clean_full_ext = 'cut';
在一个.latexmkrc
文件中。更好的做法是
$clean_ext .= ' cut';
它附加了一个项目,因此不会撤消以前的设置。