下面的文档导致
Package hyperref Warning: Token not allowed in a PDF string (Unicode):
(hyperref) removing `\textgerman' on input line 1.
! LaTeX Error: Something's wrong--perhaps a missing \item.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.27 \end{theglossary}
\glossarypostamble
? X
在 XeLaTeX 之后,makeglossaries 我再次使用 XeLaTeX。
\documentclass[a4paper, twoside]{book}%[a4paper,oneside]
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}
\setotherlanguages{english, greek}
\usepackage[citecolor=black,urlcolor=black,linkcolor=black]{hyperref}
\hypersetup{
colorlinks=true,
}
\usepackage[xindy={language=german,codepage=duden-utf8},
nonumberlist,
toc,
nopostdot,
style=altlist,
nogroupskip
]{glossaries}
\GlsSetXdyCodePage{duden-utf8}
\makeindex
\makeglossaries
\newglossaryentry{computer}
{
name=computer,
description={is a programmable machine that receives input,
stores and manipulates data, and provides
output in a useful format}
}
\begin{titlepage}
\title{Meine Chance\\Projektarbeit und IT-Basics}
\author{Erik Itter}
\end{titlepage}
\begin{document}
\maketitle
\tableofcontents
\printglossary
\chapter{Recherche}\index{Rechercher}
\chapter{Projektarbeit}\index{Projektarbeit}
\chapter{Präsentation}
\section{Dokument/ Ausarbeitung}
\section{Vortrag}
\chapter{Techniken}
\section{Mind-Map}\index{Techniken!Mind-Map}\index{Mind-Map}
\end{document}
我不知道以这种方式指定语言/代码页是否正确,只是在它告诉我它没有德语 utf8 模块后尝试了我发现的方法
答案1
“您在文档中使用过 \gls 或 glsadd 之类的命令吗?此答案中介绍了一种词汇表的调试方法” – Nicola Talbot
就是这样。只需添加对任何词汇表条目的引用(带有 MWE 的 \gls{computer})即可。
答案2
@erik-itter (和 Nicola Talbot) 说的对。但是,你还可以做另外一件事。这完全取决于你需要什么/不需要什么。
\gls
使用或 的任何单一引用\glsadd
都只会生成包含已引用项目的词汇表。假设您为词汇表定义了 100 个条目,但文档中只引用了 1 个,那么您编译的词汇表中将只有一个条目。
如果你想全部尽管文档中没有明确引用,但要出现的条目,请使用以下命令:
\glsaddall[types={main}]
(假设仅使用默认词汇表)
\glsaddall[types={symbols}]
(假设只是一个符号词汇表)
\glsaddall[types={main,symbols}]
(主要词汇表和符号词汇表)
ETC。
按照这种方法,您可以拥有多个词汇表,其中一些词汇表仅包含参考条目,而其他词汇表包含所有条目。