Latexmk:makeglossaries、Biber 和 pdfLaTeX / 将 latexmkrc 放在哪里?

Latexmk:makeglossaries、Biber 和 pdfLaTeX / 将 latexmkrc 放在哪里?

我对 latexmk 感到很困惑。我一直在 TeX Live 2011 上使用 latexmk,我很喜欢它,因为它可以制作带有目录的文档,并使用 Biber 引用。我试图让它与软件包glossaries(makeglossaries) 一起工作,但遇到了瓶颈。

我已经看过了如何让 Latexmk 使用 makeglossaries?并且看到了添加代码的建议,但我找不到 latexmkrc 文件来拯救我的生命。我搜索了 latexmk 手册建议的所有地方,我确信我正在查看隐藏文件。

如果配置文件位于文档的目录中,我的生活将会变得轻松很多,因为我使用几台不同的机器来进行写作。

最后,我希望 latexmk 运行 pdfLaTeX、Biber 和 makeglossaries 足够多次,以制作我的目录、表格列表、图表列表、参考文献和缩写列表。

我正在运行 TeX Live 2011,它已完全更新。我通过 TeXworks 使用 latexmk(它已配置好)。

答案1

首先,让我们确保您的 latexmkrc 文件正常工作。如果您不确定该glossaries部分是否正常工作,您可以尝试一些简单的操作,例如更改$pdf_previewer(请参阅“配置变量列表...”部分latexmk 文档)。您可以将文件放在以下位置:

乳胶可以使用初始化文件进行定制,初始化文件在启动时按以下顺序读取:

  1. 系统 RC 文件(如果存在)。在 UNIX 系统上,latexmk按以下顺序在以下位置搜索其系统 RC 文件,并读取找到的第一个文件:

    • “/opt/local/share/latexmk/LatexMk”
    • “/usr/local/share/latexmk/LatexMk”
    • “/usr/local/lib/latexmk/LatexMk”。

    在 MS-WINDOWS 系统上,它会查找“C:\latexmk\LatexMk”。

    在 cygwin 系统上(即 MS-Windows 系统,其中 Perl 是 cygwin 的 Perl),latexmk读取它找到的第一个

    • “/cygdrive/c/latexmk/LatexMk”,
    • “/opt/local/share/latexmk/LatexMk”
    • “/usr/local/share/latexmk/LatexMk”
    • “/usr/local/lib/latexmk/LatexMk”。

    此外,它还会尝试相同的一组位置,但将文件名“LatexMk”替换为“latexmkrc”。

  2. 用户的 RC 文件(如果存在)。这可以位于两个位置之一。传统的位置是用户主目录中的“.latexmkrc”。另一种可能是用户 XDG 配置主目录中的“latexmk/latexmkrc”。> 实际读取的文件是“$XDG_CONFIG_HOME/latexmk/latexmkrc”或“$HOME/.latexmkrc”中存在的第一个文件。(参见https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html有关 XDG 基础目录规范的详细信息。

    这里 $HOME 是用户的主目录。[乳胶确定用户的主目录如下:如果此变量存在,则为环境变量 HOME 的值,这在类 UNIX 系统(包括 LINUX 和 OS-X)中通常是这种情况。否则,如果存在环境变量 USERPROFILE,则使用环境变量 USERPROFILE,这在 MS-Windows 系统上通常是这种情况。否则,将使用空白字符串代替 $HOME,在这种情况下latexmk不在其中寻找 RC 文件。

    $XDG_CONFIG_HOME 是环境变量 XDG_CONFIG_HOME 的值(如果存在)。如果此环境变量不存在,但 $HOME 非空,则将 $XDG_CONFIG_HOME 设置为默认值 $HOME/.config。否则 $XDG_CONFIG_HOME 为空,并且latexmk不寻找其下的 RC 文件。

  3. 当前工作目录中的 RC 文件。此文件可以命名为“latexmkrc”或“.latexmkrc”,如果存在,则使用其中第一个找到的文件。

  4. 命令行中使用 -r 选项指定的任何 RC 文件。

(来自“配置/初始化(RC)文件”部分latexmk 文档

因此,将它放在您的工作目录中应该可以工作,只需确保在 1 和 2 中指定的位置没有任何其他 latexmkrc 文件即可。(在我的 Windows 7 机器上,C:\latexmk\LatexMk可以工作。)

一旦您确定 latexmk 找到了您的 latexmkrc 文件,请尝试将其中的glossaries内容放回去。

答案2

LatexMk 在不同的地方寻找配置文件。一个放置文件以便进行系统范围安装的地方是。

/usr/local/share/LatexMk

注意:这不是您的主目录的一部分,这就是为什么它以斜线开头,而不是波浪号 ~)。并且您可能必须自己创建目录 LatexMk(使用 sudo)。

然后将 LatexMk 文件放入其中。

相关内容