% This file is public domain % If you want to use arara, you need the following directives: % arara: pdflatex: { synctex: on } % arara: makeglossaries % arara: pdflatex: { synctex: on } % arara: pdflatex: { synctex: on } % %http://mirrors.ctan.org/macros/latex/contrib/glossaries/glossaries-user.html#sample-inline \documentclass[a4paper]{report} \usepackage[plainpages=false,colorlinks]{hyperref} \usepackage[toc,order=word,subentrycounter]{glossaries} \usepackage{glossary-inline} \renewcommand*{\glossarysection}[2][]{\textbf{#1}: } \renewcommand{\glsnamefont}[1]{\textsc{#1}} \setglossarystyle{inline} \makeglossaries \newcommand{\scriptlang}[1]{\textsf{#1}} \newglossaryentry{Perl}{name=\scriptlang{Perl}, sort=Perl, % need a sort key because name contains a command description=A scripting language} \newglossaryentry{glossary}{name=glossary, description={\nopostdesc}, plural={glossaries}} \newglossaryentry{glossarycol}{ description={collection of glosses}, sort={2}, parent={glossary}} \newglossaryentry{glossarylist}{ description={list of technical words}, sort={1}, parent={glossary}} \newglossaryentry{pagelist}{name=page list, % description value has to be enclosed in braces % because it contains commas description={a list of individual pages or page ranges (e.g.\ 1,2,4,7-9)}} \newglossaryentry{mtrx}{name=matrix, description={rectangular array of quantities}, % plural is not simply obtained by appending an s, so specify plural=matrices} % entry with a paragraph break in the description \newglossaryentry{par}{name=paragraph, description={distinct section of piece of writing. Beginning on new, usually indented, line}} % entry with two types of plural. Set the plural form to the % form most likely to be used. If you want to use a different % plural, you will need to explicity specify it in \glslink \newglossaryentry{cow}{name=cow, % this isn't necessary, as this form (appending an s) is % the default plural=cows, user1=kine, % description: description={(\emph{pl.}\ cows, \emph{archaic} kine) an adult female of any bovine animal}} \newglossaryentry{bravo}{name={bravo}, description={\nopostdesc}} \newglossaryentry{bravo1}{description={cry of approval (pl.\ bravos)}, sort={1}, plural={bravos}, parent=bravo} \newglossaryentry{bravo2}{description={hired ruffian or killer (pl.\ bravoes)}, sort={2}, plural={bravoes}, parent=bravo} \newglossaryentry{seal}{name=seal,description={sea mammal with flippers that eats fish}} \newglossaryentry{sealion}{name={sea lion}, description={large seal}} \begin{document} \title{Sample Document Using glossary Package} \author{Nicola Talbot} \pagenumbering{alph}% prevent duplicate page link names if using PDF \maketitle \pagenumbering{roman} \tableofcontents \chapter{Introduction} \pagenumbering{arabic} This document has a glossary in a footnote\footnote{\printglossaries}. A \gls{glossarylist} (definition~\glsrefentry{glossarylist}) is a very useful addition to any technical document, although a \gls{glossarycol} (definition~\glsrefentry{glossarycol}) can also simply be a collection of glosses, which is another thing entirely. Some documents have multiple \glspl{glossarylist}. Once you have run your document through \LaTeX, you will then need to run the \texttt{.glo} file through \texttt{makeindex}. You will need to set the output file so that it creates a \texttt{.gls} file instead of an \texttt{.ind} file, and change the name of the log file so that it doesn't overwrite the index log file (if you have an index for your document). Rather than having to remember all the command line switches, you can call the \gls{Perl} script \texttt{makeglossaries} which provides a convenient wrapper. If a comma appears within the name or description, grouping must be used, e.g.\ in the description of \gls{pagelist}. \chapter{Plurals and Paragraphs} Plurals are assumed to have the letter s appended, but if this is not the case, as in \glspl{mtrx}, then you need to specify the plural when you define the entry. If a term may have multiple plurals (for example \glspl{cow}/\glsuseri{cow}) then define the entry with the plural form most likely to be used. The alternative can simply be referenced with \verb|\glslink| (e.g.\ \glslink{cow}{kine}) or \verb|\glsdisp| (e.g.\ \glsdisp{cow}{kine}). Another option is to save the alternative plural in another key. In this case, the ``user1'' key has been used, but a custom key can be defined instead. \Glspl{seal} and \glspl{sealion} have regular plural forms. \Gls{bravo} is a homograph, but the plural forms are spelt differently. The plural of \gls{bravo1}, a cry of approval (definition~\glsrefentry{bravo1}), is \glspl{bravo1}, whereas the plural of \gls{bravo2}, a hired ruffian or killer (definition~\glsrefentry{bravo2}), is \glspl{bravo2}. \Glspl{par} can cause a problem in commands, so care is needed when having a paragraph break in a \gls{glossarylist} entry. \chapter{Ordering} There are two types of ordering: word ordering (which places ``\gls{sealion}'' before ``\gls{seal}'') and letter ordering (which places ``\gls{seal}'' before ``\gls{sealion}''). \end{document}