在Latex Workshops中为Visual Studio Code启用xelatex

A.A*_*tov 7 latex tex xelatex visual-studio-code

我有一个模板,该模板定义了论文的所有排版建议,但是它使用xelatex进行编译。我想在Latex Workshops上继续使用VS Code,问题是如何将编译器从pdflatex更改为xelatex。最后一个原因导致下一个错误日志:

C:\Users\User\AppData\Local\Programs\MiKTeX 2.9\tex/latex/fontspec\fontspec.sty:45: Fatal Package fontspec Error: The 
fontspec package requires either XeTeX or
(fontspec)                      LuaTeX.
(fontspec)                      
(fontspec)                      You must change your typesetting engine to,
(fontspec)                      e.g., "xelatex" or "lualatex"instead of
(fontspec)                      "latex" or "pdflatex".
Run Code Online (Sandbox Code Playgroud)

xia*_*ang 22

使用魔法注释

将以下行添加到文档的开头。

% !TEX program = pdflatex
Run Code Online (Sandbox Code Playgroud)

  • 我想指出的是,在“v8.23.0”之后,魔术命令默认被禁用。您可以在[此处](https://github.com/James-Yu/LaTeX-Workshop/issues/3027)阅读更多信息。基本上,如果您想启用它们,则必须在设置中禁用“forceRecipeUsage”。 (23认同)
  • 这是最可靠的选择。当没有其他事做时为我工作 (3认同)
  • 这与启用 xelatex 无关。您仍在使用 pdflatex。 (3认同)
  • 这应该是公认的答案,是通用的 (2认同)

A.A*_*tov 15

这里的问题中找到最简单的解决方案,但是在更常见的提法中

复制内容,只需转到Preferences / Extensions / LaTeX(意味着LaTeX是LaTeX研讨会),在任何标签下找到指向settings.json的链接,打开并键入下一步:

"latex-workshop.latex.tools": [
    {
        "name": "latexmk",
        "command": "latexmk",
        "args": [
            "-xelatex",
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "%DOC%"
        ]
    }
],
Run Code Online (Sandbox Code Playgroud)

可能需要重新加载VSCode。

  • 此外,您还可以使用 xelatex 扩展食谱,遵循 https://tex.stackexchange.com/questions/478865/vs-code-latex-workshop-custom-recipes-file-location 中的答案并稍加修改。但请注意,除了新的配方/工具之外,您可能还必须包含默认的配方/工具,而不仅仅是覆盖它们。所以你可以保留“普通”乳胶和 xelatex。 (3认同)