我花了几个小时尝试使用vimtex
来编译需要 XeLaTeX 的文档。正如vimtex
文档所述,我的 TeX 文档的第一行是%! TEX program = xelatex
。但是,我总是收到以下错误:
/usr/local/texlive/2015/texmf-dist/tex/latex/fontspec/fontspec.sty|43 错误| 致命的 fontspec 错误:“cannot-use-pdftex”
因此看起来仍在使用 PdfLaTeX。请注意,构建仅需要 PdfLaTeX 的文档可以完美运行,而我尝试使用 XeLaTeX 构建的文档只是一个“Hello world”,使用需要 XeLaTeX 的类,并xelatex file.txt
在终端中使用命令进行编译。
答案1
如果你正在使用编译并且大部分时间都latexmk
在使用,我建议更改 latexmk 的默认引擎,只需添加一行即可XeLaTeX
$HOME/.latexmkrc
$pdflatex="xelatex %O %S";
或者你可能想保留 pdflatex 作为 latexmk 选项。我建议更改 vimtex 的选择:将这些行添加到你的$HOME/.vimrc
let g:vimtex_compiler_latexmk = {
\ 'executable' : 'latexmk',
\ 'options' : [
\ '-xelatex',
\ '-file-line-error',
\ '-synctex=1',
\ '-interaction=nonstopmode',
\ ],
\}
options
这里代表在vim中编译latexmk
时使用的选项。\ll
您可以参考官方文件查看更多 latexmk 的定制。
答案2
感叹号的位置不对。应该是这样的:% !TEX program = xelatex
感叹号就在 之前TEX
。然后写入文件,用 重新加载 vimtex <leader>lx
,然后重新编译,看看是否有效。