如何显示词汇表

如何显示词汇表

如何在 sharelatex 中显示词汇表?

这是我的简化文档。

我的main.tex

\input{header}

\makeglossaries   
\input{glossar}
\begin{document}

\frontmatter


\begin{abstract}
In dieser Arbeit wurden die Zusammenhänge zwischen der Knochendichte, Porosität und dielektrischer Permittivität von Spongiosa untersucht.
\end{abstract}

%\listofacronyms
%\listofsymbols
\printglossaries



\tableofcontents

\mainmatter

Die komplexe Permittivität \underline{\gls{Perm}} eines Materials kann in der folgenden Form ausgedrückt werden: 


\glsaddall

\backmatter
\listoffigures
\listoftables
\literature

\end{document}

我的header.tex

%!TEX root = main.tex

\documentclass[a4paper,
        color,
        nocolortitle,
        twoside,    
        german, %nogerman
        serifmath,
        12pt,
        noproprietaryfonts,
        thesis,
        ] {tudbook} 

% Typographie
\usepackage{morewrites}
\usepackage{microtype}
\usepackage{multicol}
\usepackage{textcomp}

% Sprachanpassungen
\usepackage[babel]{csquotes}

% Bild- und  Tabellenunterschriften
\usepackage[twoside, margin={0.5cm,0.5cm}]{caption}

\usepackage{float}

\usepackage{enumitem}
\setlist{nosep,noitemsep}

% Formeln und Mathe
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{upgreek}
\usepackage{siunitx}
\addto\extrasgerman{\sisetup{locale=DE}}
\def\mathbi#1{\boldsymbol{#1}}

% Tabellen
\usepackage{booktabs}

% Referenzierung
\usepackage[colorlinks,linkcolor=black,citecolor=black,urlcolor=HKS41-30]{hyperref}
\usepackage{nameref}

% Einbindung ganzer PDF-Seiten
\usepackage{pdfpages}

% Farbige Absätze
\usepackage[backend=biber,style=numeric-comp,hyperref=true,backref=true]{biblatex}

\usepackage{lipsum}

\bibliography{bibliographie.bib}

% Zeilenabstand
\renewcommand{\arraystretch}{1.2}

% Spaltenabstand
\setlength{\columnsep}{1.3pc}



\usepackage{enumitem}
\setlist{nosep,noitemsep}

\usepackage[utf8]{inputenc}
\usepackage{glossaries}

我的glossar.tex

\newglossaryentry{Perm}{name=\ensuremath{{\epsilon}},description={Komplexe relative Permittivität des Mediums}
unit={$\frac{F}{m}$},
 type=symbolslist}

最小示例有效,但带有标题的示例无效:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{glossaries}
\title{EjGlos}

\begin{abstract}
In dieser Arbeit wurden die Zusammenhänge zwischen der Knochendichte, Porosität und dielektrischer Permittivität von Spongiosa untersucht.
\end{abstract}



\newglossaryentry{Perm}{name=\ensuremath{{\epsilon}},description={Komplexe relative Permittivität des Mediums}
unit={$\frac{F}{m}$}}


\makeglossaries
\begin{document}
\maketitle
\section{1}

Die komplexe Permittivität \underline{\gls{Perm}} eines Materials kann in der folgenden Form ausgedrückt werden: 

\printglossaries
\end{document}

另外 sharelatex.com/project/5955f9a5ade7f36849037653 是公开且可编辑的。

答案1

看起来该类tudbook会自动加载glossaries选项xindy(并且还会执行\makeglossaries¹,以便您可以从文件中删除\usepackage{glossaries}和)。\makeglossariesheader.tex

记录.glg文件包含以下错误:

ERROR: CHAR: index 0 should be less than the length of the string


*** Unable to execute: '"xindy"  -L german -C din5007-utf8 -I xindy -M "output" -t "output.glg" -o "output.gls" "output.glo"' ***

来自glossaries常问问题

xindy 错误“CHAR:索引 0 应该小于字符串的长度”是什么意思?

xindy丢弃排序字符串中的所有命令和括号。如果您的排序字符串(由键sort或键指定)仅由命令组成,它将被当作空排序字符串name处理,这会在较新版本的 中产生错误消息。例如,以下内容将导致问题:xindyxindy

\newglossaryentry{alpha}{name={\ensuremath{\alpha}},  
  description=alpha} 

对条目使用不同的排序键,例如:

\newglossaryentry{alpha}{sort=alpha,  
  name={\ensuremath{\alpha}},  
  description=alpha} 

或者,如果所有条目都是这样,您可能更喜欢使用sort=usesort=def包选项。请参阅排序选项有关排序选项的更多详细信息,请参阅用户手册的部分。

因此您需要sort在您的条目中添加一个键:

\newglossaryentry{Perm}{name=\ensuremath{{\epsilon}},description={Komplexe relative Permittivität des Mediums}
unit={$\frac{F}{m}$},
sort={epsilon},
 type=symbolslist}

您没有遇到 MWE 问题的原因是因为它使用的是makeindex而不是xindy


¹我不建议在类文件中采用这种做法,因为有些命令必须放在之前\makeglossaries,例如\newglossary,所以此类不允许您定义自己的自定义词汇表。

相关内容