我无法让 latexmk 检测我给它的选项

我无法让 latexmk 检测我给它的选项

我使用 latexmk 编译了我的 main.tex 文件 latexmk -xelatex -outdir=output -auxdir=auxil main.tex

直到突然 latexmk 停止检测我给出的选项:

(venv) PS C:\Users\user\PycharmProjects\test2\src> latexmk -xelatex -outdir=output -auxdir=auxil main.tex
Usage
=====
  latexmk [options] [filename]

latexmk: error: no such option: -x

此外:Latexmk 对任何长度超过 1 个字符的首次传递选项执行相同的操作:

(venv) PS C:\Users\user\PycharmProjects\test2\src> latexmk -outdir=output -auxdir=auxil main.tex              
Usage
=====
  latexmk [options] [filename]

latexmk: error: no such option: -o

该错误不是xelatex因为我可以单独运行它并且它运行良好,但由于我无法使用,所以latexmk我必须手动编译main.tex几次。

我已经检查了 latexmk 的版本并且它显示:

(venv) PS C:\Users\user\PycharmProjects\test2\src> latexmk --version                                              
latexmk 0.4

我最终从我的计算机上卸载并重新安装了 latexmk 模块,但没有任何改变。

我一直在网上寻找类似的问题,但似乎找不到。

答案1

tl;dr:latexmk 和 latexmk.py 之间存在冲突

感谢@daleif的评论,

我检查了我的 latexmk 版本,因为我更新过几次,但它似乎已经过时了,而我的版本实际上是 MikTex 上的 4.80。

然后我输入latexmk -h以获得帮助,它显示我是 latexmk 的 python 版本,并且这个包实际上是 0.4 版本。

因此我检查了我的 PyCharm pip(我在我的项目中使用 PyCharm),但未检测到该模块。

我必须使用 Windows shell 而不是 PyCharm 终端来卸载它,然后当我尝试检查 latexmk 的版本时,我终于得到了:

(venv) PS C:\Users\user\PycharmProjects\test2\src> latexmk --version
Initial Win CP for (console input, console output, system): (CP850, CP65001, CP1252)
I changed them all to CP1252
Latexmk, John Collins, 4 Apr. 2023. Version 4.80
Reverting Windows console CPs to (in,out) = (850,65001)

最后告诉我,我正在使用 Perl(和原始)版本的 Latexmk

编辑:最重要的是,编译现在可以正常工作了!

相关内容