自定义构建(Sublime Text、Latextools)

自定义构建(Sublime Text、Latextools)

我正在尝试自定义 Sublime text 3 上的构建功能,以包含构建文件和 pdf 的单独输出。我在文档顶部使用 Miktex 和 xelatex(通过添加 %!TEX program = xelatex)。我如何自定义 Latextools 编译器以添加,

-aux_directory=../intfiles

-output-directory=../pdffiles

我相信哪一个能做到这一点?

答案1

更新:LaTeXTools 现在通过设置或使用注释(例如)支持aux_directory和。此支持有一些注意事项,包括output_directory%!TEX output_directory = out_dir在文档中


LaTeXTools 暂时不支持-aux-directory-output-directory。但是,如果你能忍受几个符号链接在与主 tex 文档相同的目录中,你可以使用类似 roeeebar 的建议这个问题,这会将设置块添加到您的 sublime-project 文件中(我已经针对 Windows 进行了修改,但我还没有测试过)。

"settings": {
    "builder": "script",
    "builder_settings":
        "windows": {
            "script_commands": [
                "latexmk -cd -f -xelatex -synctex=1 -interaction=nonstopmode -auxdir=Aux -outdir=Output $file_name",
                "mklink Output\\$file_base_name.pdf .",
                "mklink Output\\$file_base_name.synctex.gz .",
                "mklink Aux\\$file_base_name.log ."
            ]
        }
    }
}

这基本上将符号链接放置到 LaTeXTools 期望找到的适当文件的位置,因此它应该继续按预期工作。

几点说明:

  1. latexmk默认情况下未安装在 MiKTeX 上。可以使用包管理器轻松安装,但由于它是一个 Perl 脚本,因此您还需要安装一个版本的 Perl,例如 Active Perl 或 Strawberry,才能使其运行。不幸的是,如果您尝试将或标志传递%PATH%给 MiKTeX 上常用的构建器 LaTeXTools ( ),它将因致命错误而停止。texify-aux-directory-output-directory

  2. latexmk如果您没有使用命令,则可能需要更改该命令xelatex

相关内容