在 Mac 上自动下载缺失的软件包

在 Mac 上自动下载缺失的软件包

是否有适用于 Mac 的 LaTeX 发行版具有或接近 MiKTeX 自动下载缺失软件包的能力?

答案1

MikTeX 可以即时下载软件包,这是因为在用于构建编译器的源代码中添加了自定义内容,例如pdftex。这种方法的缺点是,新的编译器(最近的一个例子是 )luatex会延迟发布,直到完成集成支持即时下载的 MikTeX 附加功能的工作。

除了 MikTeX 发行版之外,我还没有发现有 TeX 编译器能够自动下载缺失的软件包。你可以尝试编译并安装MikTeX 工具这是将 MikTeX 包管理器以及与其集成的 TeX 编译器版本移植到 UNIX 和 Linux 的尝试。

坚持使用 MacTeX 可能仍然是在 OS X 上获得完整、稳定的 TeX 发行版的最佳方式。由于 MacTeX 基于 TeX live 而不是 MikTeX,因此您无法进行即时安装;但您将拥有他tlmgr在回答中描述的出色的包管理器 domwass。

答案2

麦金塔电脑TeX 直播包括閱讀器(TeX live 管理器)来更新和安装软件包(参见概述MacTeX 中包含的内容)。还有TeX Live 实用程序,tlmgr 的 Mac OS X 图形界面。

问候,多米尼克。-

答案3

我今天遇到了同样的问题,所以我编写了这个 bash 函数。

    installOnFly () {
    fn=${1-main}
    pdflatex $fn | tee /tmp/tmp.log
    ret=${PIPESTATUS[0]}
    while [[ $ret != 0 ]] ; do
        mspkg=$(grep "LaTeX Error: File \`.*' not found." /tmp/tmp.log | sed -e 's#! LaTeX Error: File `##g' -e "s#.sty' not found.##g")
        echo "********* Installing $mspkg  *******"
        sudo tlmgr install $mspkg
        echo "******* Recompile $fn *******"
        pdflatex $fn | tee /tmp/tmp.log
        ret=${PIPESTATUS[0]}
    done
    }

益处:大大加快了我的工作流程。

局限性:当样式文件和包名称不一样,或者缺少字体而不是样式文件时,此方法不起作用。

相关内容