我一直在尝试使用该包制作词汇表词汇表,我显然做错了什么,因为我在编译文档时不断收到错误。
我有以下内容:
创建一个包含所有定义的文档(
glosario.tex
),对我来说,它们大多数都是首字母缩略词,因此我按以下方式定义它们:\acro{CCTV}{\emph{Close Circuit Television}}
将以下命令添加到我的序言中:
\usepackage[toc]{glossaries} % Load the package with the acronym option \makeglossaries{glosario} % Generate the glossary \printglossary[type=\acronymtype] % prints just the list of acronyms
尽管尝试了几种方法,但似乎不起作用。有人知道我做错了什么以及如何解决这个问题吗?
答案1
创建一个包含所有定义的文档 (glosario.tex),对我来说,它们大多数都是首字母缩略词,因此我按以下方式定义它们:\acro{CCTV}{\emph{Close Circuit Television}}
您似乎混淆了包裹。glossaries
没有定义\acro
。
\usepackage[toc]{glossaries} % 使用首字母缩略词选项加载包
这不是使用选项加载包acronym
。而是使用选项加载它toc
。
\makeglossaries{glosario} % 生成词汇表
该\makeglossaries
命令没有参数
你的glosario.tex
文件需要使用 来加载\loadglsentries
。例如glossario.tex
:
\newacronym{CCTV}{CCTV}{Closed Circuit Television}
主要文件:
\documentclass{article}
\usepackage[acronym,toc]{glossaries}
\makeglossaries
% Define a style the emphasizes the long form:
\newacronymstyle{em-long-short}
{%
\GlsUseAcrEntryDispStyle{long-short}%
}%
{%
\GlsUseAcrStyleDefs{long-short}%
\renewcommand*{\genacrfullformat}[2]{%
\emph{\glsentrylong{##1}}##2\space
(\firstacronymfont{\glsentryshort{##1}})%
}%
\renewcommand*{\Genacrfullformat}[2]{%
\emph{\Glsentrylong{##1}}##2\space
(\firstacronymfont{\glsentryshort{##1}})%
}%
\renewcommand*{\genplacrfullformat}[2]{%
\emph{\glsentrylongpl{##1}}##2\space
(\firstacronymfont{\glsentryshortpl{##1}})%
}%
\renewcommand*{\Genplacrfullformat}[2]{%
\emph{\Glsentrylongpl{##1}}##2\space
(\firstacronymfont{\Glsentryshortpl{##1}})%
}%
}
\setacronymstyle{em-long-short}
\loadglsentries{glosario}
\begin{document}
First use: \gls{CCTV}. Next use: \gls{CCTV}.
\printglossary[type=\acronymtype]
\end{document}
构建此文档的步骤:latex
、makeglossaries
、latex
(或pdflatex
代替latex
)。如果您不知道如何运行makeglossaries
,只需将其添加automake
到包选项列表中:
\usepackage[automake,toc,acronym]{glossaries}
得出的结果为:
或者:
文件glosario.tex
:
\newabbreviation{CCTV}{CCTV}{Closed Circuit Television}
主文件:
\documentclass{article}
\usepackage[automake,abbreviations]{glossaries-extra}
\makeglossaries
\setabbreviationstyle{long-short}
\renewcommand{\glsfirstlongdefaultfont}[1]{\emph{#1}}
\loadglsentries{glosario}
\begin{document}
First use: \gls{CCTV}. Next use: \gls{CCTV}.
\printabbreviations
\end{document}
得出的结果为: