我正在使用 \makenomenclature 和 \printnomenclature。从昨天开始,我一直在寻找使用 nomenclature 的解决方案,但一无所获。有人有解决方案吗?我不想使用 glossary,因为 documentclasse 是 book,而且我有很多 tex 文件。当我使用 glossary 时,我必须在许多 tex 文件中搜索 nomenclatur 中的每个单词。
我有一个问题。我的命名法如下所示
AAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
BBBB BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
number angelsperunitz The number of angels per unit are
这是命名代码。
\nomenclature{number angelsperunitz }{The number of angels per unit area}
我希望它像这样显示,因为首字母缩略词太长,我想把它放在下一行。我该怎么做?我使用连字符,但没有成功。
AAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
BBBB BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
number angelsp-
erunitz The number of angels per unit are
这是代码..
\documentclass{book}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{nomencl}
\makenomenclature
\begin{document}
\nomenclature{AAAA}{AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA}%
\nomenclature{BBBB}{BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB}%
\nomenclature{number angelsperunitz}{The number of angels per unit are}%
\backmatter
\addcontentsline{toc}{chapter}{Nomenclature}
\printnomenclature[2.8 cm]
\end{document}
答案1
重新定义\nomlabel
使用\parbox[b]
并重置\nomlabelwidth
:
\documentclass{book}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{nomencl}
\usepackage{ragged2e}
\renewcommand{\nomlabel}[1]{%
\parbox[b]{\nomlabelwidth}{\RaggedRight\hspace{0pt}#1}%
}
\setlength{\nomlabelwidth}{2.5cm}
\makenomenclature
\begin{document}
\nomenclature{AAAA}{AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA}%
\nomenclature{BBBB}{BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB}%
\nomenclature{number angelsperunitz}{The number of angels per unit are}%
Do something!
\backmatter
\addcontentsline{toc}{chapter}{Nomenclature}
\printnomenclature
\end{document}
答案2
我遇到了类似的问题,但我使用的是词汇表包。这comp.text.tex 中的线程给了我一个可行的解决方案:
\documentclass[b5paper]{scrreprt}
\usepackage{calc}
\usepackage[colorlinks]{hyperref}
\usepackage[acronym,nonumberlist,]{glossaries} % make a separate list of
acronyms
\usepackage{glossary-tree}
\setlength{\glslistdottedwidth}{4cm}
\newglossarystyle{altlistdotted}%
{%
\glossarystyle{tree}%
\renewcommand{\glossaryentryfield}[5]{%
\hangindent0pt\relax
\parindent0pt\relax
\makebox[\glslistdottedwidth][l]%
{%
\glsentryitem{##1}\textbf{\glstarget{##1}{##2}}%
\unskip\leaders\hbox to 2.9mm{\hss.}\hfill\strut
}%
\parbox[t]{\linewidth-\glslistdottedwidth}{##3}\par}%
}
\glossarystyle{altlistdotted}
\makeglossaries
\newacronym{Acronym}{Acronym}{Explanation of an acronym}
\newacronym{short}{short}{This is only short}
\newacronym{long}{long}{This explanation is longer, so you get a line break here}
\newacronym{superlong}{superlong}{This explanation is so long, that it is even long than the long example}
\glsaddall
\begin{document}
\printglossaries
\end{document}