答案1
如果你总是使用lualatex
作为默认引擎,你可以简单地在首选项中将 LaTeX 引擎默认行替换为
lualatex --file-line-error --synctex=1 --shell-escape
我不太推荐这条路线,因为最好只--shell-escape
在绝对需要时使用,而不是将其作为默认路线。
我只有一个引擎文件可以执行此操作,或者使用arara
引擎。将以下文件保存lualatex-shell.engine
为~/Library/TeXShop/Engines
。
#!/bin/tcsh
set path= ($path /usr/texbin /usr/local/bin)
lualatex --shell-escape --file-line-error --synctex=1 "$1"
在终端类型中:
chmod +x ~/Library/TeXShop/Engines/lualatex-shell.engine
然后重新启动 TeXShop,您可以通过从宏菜单中的程序项中选择它来调用它,或者通过添加一个魔术注释行:
% !TEX TS-program = lualatex-shell
或者,您可以使用arara
引擎,并添加 shell-escape 作为选项之一。arara
如果引擎未出现在引擎列表中,您可能需要将引擎从 Inactive 文件夹移动到主 Engines 文件夹(并重新启动 TeXShop)。
% !TEX TS-program = arara
% arara: lualatex: {shell: true}