每种类型仅打印一份词汇表

每种类型仅打印一份词汇表

我终于得到了词汇表包'工作'。不确定我是否安装不正确,或者我在代码中是否做错了什么。我想要两种类型的词汇表、符号和缩写。我得到了一个生成的列表,但它只显示每个使用的类型的第一个值。

列表中每种类型只有一个词汇表

\documentclass{IEEEtran}

\usepackage[nomain,acronym,xindy,toc,nopostdot]{glossaries}
\newglossary[slg]       {symbols}       {not}       {ntn}       {Symbols}
\newglossary[alg]       {abbreviations} {abb}       {abr}       {Abbreviations}
\makeglossaries

\newglossaryentry{LA}% label 
{% 
    type=abbreviations,% glossary type 
    name={LA},% 
    description={Los Angeles},% 
    sort={S}% 
}

\newglossaryentry{NY}% label 
{% 
    type=abbreviations,% glossary type 
    name={NY},% 
    description={New York City},% 
    sort={S}% 
}

\newglossaryentry{theta}% label 
{% 
    type=symbols,% glossary type 
    name={$\theta$},% 
    description={The angle of attack},% 
    sort={S}% 
}   
\newglossaryentry{alpha}% label 
{% 
    type=symbols,% glossary type 
    name={$\alpha$},% 
    description={The angle of measurements},% 
    sort={S}% 
}

\begin{document}

\printglossary[type=symbols, title={List of Symbols}]
\printglossary[type=abbreviations, title={List of Abbreviations}]


\section{Section One}

Here are my two abbreviations \gls{LA} and \gls{NY}.\\
Here are my two symbols \gls{alpha} and \gls{theta}.

\end{document}

答案1

您为所有条目赋予了相同的sort值 ( S)。这意味着xindy无法区分它们并将它们合并。如果插入分页符,您可以更清楚地看到这一点:

Here are my two abbreviations \gls{LA} and
\clearpage
\gls{NY}.

Here are my two symbols \gls{alpha} and
\clearpage
\gls{theta}.

词汇表图片

的条目alpha具有位置 2 (对应于\gls{alpha}) 和 3 (对应于\gls{theta})。同样,的条目LA具有位置 1 (对应于\gls{LA}) 和 2 (对应于NY)。

xindy这只是处理具有相同排序值的条目的方式,makeindex尽管无法对它们进行排序,但会将它们分开。

您对全部条目使用相同的方法有什么特别的原因吗sort?如果您想要一个未排序的列表,最好只使用\makenoidxglossaries(而不是\makeglossaries) 和\printnoidxglossary[sort=def,...](或sort=use)。如果您希望条目按字母顺序排序,则只需sort从缩写中删除键(因为name提供了自然排序)并sort为符号提供唯一值。例如:

\documentclass{IEEEtran}

\usepackage[nomain,acronym,xindy,toc,nopostdot]{glossaries}
\newglossary[slg]       {symbols}       {not}       {ntn}       {Symbols}
\newglossary[alg]       {abbreviations} {abb}       {abr}       {Abbreviations}
\makeglossaries

\newglossaryentry{LA}% label 
{% 
    type=abbreviations,% glossary type 
    name={LA},% 
    description={Los Angeles}% 
}

\newglossaryentry{NY}% label 
{% 
    type=abbreviations,% glossary type 
    name={NY},% 
    description={New York City}% 
}

\newglossaryentry{theta}% label 
{% 
    type=symbols,% glossary type 
    name={$\theta$},% 
    description={The angle of attack},% 
    sort={theta}% 
}   
\newglossaryentry{alpha}% label 
{% 
    type=symbols,% glossary type 
    name={$\alpha$},% 
    description={The angle of measurements},% 
    sort={alpha}% 
}

\begin{document}

\printglossary[type=symbols, title={List of Symbols}]
\printglossary[type=abbreviations, title={List of Abbreviations}]


\section{Section One}

Here are my two abbreviations \gls{LA} and \gls{NY}.

Here are my two symbols \gls{alpha} and \gls{theta}.

\end{document}

文件图像

顺便说一下,glossaries-extrapackage 在使用 package 选项\glsxtrnewsymbol时会提供命令,将字段设置为标签而不是值。因此上面的代码可以改为:symbolssortname

\documentclass{IEEEtran}

\usepackage[nomain,symbols,abbreviations,xindy]{glossaries-extra}

\makeglossaries

\setabbreviationstyle{short}

\newabbreviation{LA}{LA}{Los Angeles}
\newabbreviation{NY}{NY}{New York City}

\glsxtrnewsymbol[description={The angle of attack}]{theta}{$\theta$}
\glsxtrnewsymbol[description={The angle of measurement}]{alpha}{$\alpha$}

\begin{document}

\printsymbols[title={List of Symbols}]
\printabbreviations[title={List of Abbreviations}]


\section{Section One}

Here are my two abbreviations \gls{LA} and \gls{NY}.

Here are my two symbols \gls{alpha} and \gls{theta}.

\end{document}

产生相同的结果。

相关内容