我正在尝试创建一个包含多个词汇表的 latex 文件。经过多次调试尝试,问题似乎与 Mac 上的 TeXShop 有关。具体来说,我尝试了下面的代码(来自https://texblog.org/2014/04/01/multiple-glossaries-in-latex/)。当我在 Overleaf 中编译它时,一切似乎都运行良好。但是,当我使用 pdflatexmk 或 lualatexmk 在本地 TexShop(Mac 上的 v 4.66)上编译它时,只会出现主词汇表。
\documentclass{article}
\usepackage{glossaries}
%Alternative glossary for top-level domains
\newglossary[tlg]{domain}{tld}{tdn}{Top-Level Domains}
% Generate glossaries
\makeglossaries
\begin{document}
\section{Top-level domains}
%Term definitions
\newglossaryentry{gls:tld}{name=TLD, description={List of top-level domains}}
\newglossaryentry{tld:com}{type=domain, name=.com, description={Commercial entities}}
\newglossaryentry{tld:net}{type=domain, name=.net, description={Network infrastructure}}
\newglossaryentry{tld:org}{type=domain, name=.org, description={Public interest registry}}
% Use the terms
Top-level domains (\gls{gls:tld}) include \gls{tld:com}, \gls{tld:net}, and \gls{tld:org}.
% Print the glossaries
\printglossary[type=domain]
\printglossary
\end{document}
知道为什么会发生这种情况或如何解决吗?
答案1
有趣的是……TeXShop 的 latexmk 引擎设置为与旧词汇表包一起使用,并简单使用词汇表包。如需更复杂的使用,请TeXShop latexmk and advanced glossaries package use.zip
从下载文件https://herbs.github.io。有关于如何安装更改以及如何为项目中的自定义词汇表创建 platexmkrc 文件的说明。这些更改会消除与旧词汇表包的兼容性,并且提供了一个 platexmkrc 文件以在需要时恢复该兼容性。
一旦进行了更改,这里就会出现一个示例 platexmkrc 文件,该文件将使用这些更改作为词汇表包示例文件之一:
# custom dependencies for glossary-lipsum-examples.tex
add_cus_dep('glo2', 'gls2', 0, 'makeacn2acr');
add_cus_dep('glo3', 'gls3', 0, 'makeacn2acr');
add_cus_dep('glo4', 'gls4', 0, 'makeacn2acr');
add_cus_dep('glo5', 'gls5', 0, 'makeacn2acr');
add_cus_dep('glo6', 'gls6', 0, 'makeacn2acr');
add_cus_dep('glo7', 'gls7', 0, 'makeacn2acr');
add_cus_dep('glo8', 'gls8', 0, 'makeacn2acr');
add_cus_dep('glo9', 'gls9', 0, 'makeacn2acr');
add_cus_dep('glo10', 'gls10', 0, 'makeacn2acr');
add_cus_dep('slo', 'sls', 0, 'makeacn2acr');
答案2
出于某种原因,当我使用
\makenoidxglossaries \
\printnoidxglossary
代替
\makeglossaries\
\printglossary
非主要词汇表显示在 TeXShop 中。
我还是不明白为什么会出现这种情况,也不明白为什么在 Overleaf 中事情会这样发展。