summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/glossaries/glossaries.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/glossaries/glossaries.dtx')
-rw-r--r--Master/texmf-dist/source/latex/glossaries/glossaries.dtx630
1 files changed, 398 insertions, 232 deletions
diff --git a/Master/texmf-dist/source/latex/glossaries/glossaries.dtx b/Master/texmf-dist/source/latex/glossaries/glossaries.dtx
index 9a965aa9d6d..73ace503d2d 100644
--- a/Master/texmf-dist/source/latex/glossaries/glossaries.dtx
+++ b/Master/texmf-dist/source/latex/glossaries/glossaries.dtx
@@ -1,14 +1,19 @@
%\iffalse
% glossaries.dtx generated using makedtx version 1.1 (c) Nicola Talbot
% Command line args:
-% -doc "glossaries-manual.tex"
% -setambles ".*\.perl=>\nopreamble\nopostamble"
% -setambles ".*\.tex=>\nopreamble\nopostamble"
% -setambles ".*\.xdy=>\nopreamble\nopostamble"
% -codetitle "Main Package Code"
+% -section "chapter"
% -macrocode ".*\.perl"
% -macrocode ".*\.tex"
% -macrocode ".*\.xdy"
+% -author "Nicola Talbot"
+% -doc "glossaries-manual.tex"
+% -comment ".*\.perl"
+% -comment ".*\.tex"
+% -comment ".*\.xdy"
% -src "glossaries\.sty\Z=>glossaries.sty"
% -src "glossaries-prefix.sty\Z=>glossaries-prefix.sty"
% -src "(glossary-.+)\.(sty)\Z=>\1.\2"
@@ -25,13 +30,8 @@
% -src "(samplexdy-mc.*\.xdy)\Z=>\1"
% -src "(database.*\.tex)\Z=>\1"
% -src "(.*\.perl)\Z=>\1"
-% -author "Nicola Talbot"
-% -section "chapter"
-% -comment ".*\.perl"
-% -comment ".*\.tex"
-% -comment ".*\.xdy"
% glossaries
-% Created on 2017/1/19 12:05
+% Created on 2017/6/11 13:36
%\fi
%\iffalse
%<*package>
@@ -145,7 +145,7 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of
\setcounter{IndexColumns}{2}
-\CheckSum{19231}
+\CheckSum{19312}
\newcommand*{\ifirstuse}{\iterm{first use}}
\newcommand*{\firstuse}{\gls{firstuse}}
@@ -172,12 +172,12 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of
%\fi
%\MakeShortVerb{"}
%
-% \title{Documented Code For glossaries v4.29}
+% \title{Documented Code For glossaries v4.30}
% \author{Nicola L.C. Talbot\\[10pt]
%Dickimaw Books\\
%\url{http://www.dickimaw-books.com/}}
%
-% \date{2017-01-19}
+% \date{2017-06-11}
% \maketitle
%
%This is the documented code for the \styfmt{glossaries} package.
@@ -193,7 +193,7 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of
%glossaries package}.
%
%\item[\url{glossaries-user.pdf}]
-%For the main user guide, read \qt{glossaries.sty v4.29:
+%For the main user guide, read \qt{glossaries.sty v4.30:
%\LaTeX2e\ Package to Assist Generating Glossaries}.
%
%\item[\url{mfirstuc-manual.pdf}]
@@ -248,7 +248,7 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of
% This package requires \LaTeXe.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossaries}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
%\changes{4.18}{2015-09-09}{split mfirstuc into separate bundle}
% Required packages:
@@ -370,11 +370,11 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of
% \begin{macrocode}
\newcommand*{\@gls@see@noindex}{%
\PackageError{glossaries}%
- {`see' key may only be used after \string\makeglossaries\space
+ {`\gls@xr@key' key may only be used after \string\makeglossaries\space
or \string\makenoidxglossaries}%
{You must use \string\makeglossaries\space
or \string\makenoidxglossaries\space before defining
- any entries that have a `see' key}%
+ any entries that have a `\gls@xr@key' key}%
}
% \end{macrocode}
%\end{macro}
@@ -385,15 +385,15 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of
\ifcase\nr
\renewcommand*{\@gls@see@noindex}{%
\PackageError{glossaries}%
- {`see' key may only be used after \string\makeglossaries\space
+ {`\gls@xr@key' key may only be used after \string\makeglossaries\space
or \string\makenoidxglossaries}%
{You must use \string\makeglossaries\space
or \string\makenoidxglossaries\space before defining
- any entries that have a `see' key}%
+ any entries that have a `\gls@xr@key' key}%
}%
\or
\renewcommand*{\@gls@see@noindex}{%
- \GlossariesWarning{`see' key ignored}%
+ \GlossariesWarning{`\gls@xr@key' key ignored}%
}%
\or
\renewcommand*{\@gls@see@noindex}{}%
@@ -784,7 +784,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \pkgopt[def]{sort} (order of definition) or
% \pkgopt[use]{sort} (order of use).
% \begin{macrocode}
-\define@choicekey{glossaries.sty}{sort}{standard,def,use}{%
+\define@choicekey{glossaries.sty}{sort}{standard,def,use,none}{%
\renewcommand*{\@glo@default@sorttype}{#1}%
\csname @gls@setupsort@#1\endcsname
}
@@ -806,6 +806,14 @@ false,nolabel,autolabel,nameref}[nolabel]{%
}
% \end{macrocode}
%\end{macro}
+%
+%\begin{macro}{\@glo@check@sortallowed}
+%\changes{4.30}{2017-06-11}{new}
+% \begin{macrocode}
+\newcommand*{\@glo@check@sortallowed}[1]{}
+% \end{macrocode}
+%\end{macro}
+%
%\begin{macro}{\@gls@setupsort@standard}
%\changes{3.0}{2011-04-02}{new}
% Set up the macros for default sorting.
@@ -841,6 +849,11 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% Don't need to do anything when the entry is used.
% \begin{macrocode}
\def\@gls@setsort##1{}%
+% \end{macrocode}
+% This sort option is allowed with \cs{makeglossaries} and
+% \cs{makenoidxglossaries}.
+% \begin{macrocode}
+ \let\@glo@check@sortallowed\@gobble
}
% \end{macrocode}
% Set standard sort as the default:
@@ -886,6 +899,14 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% the sort key.
% \begin{macrocode}
\def\@gls@defsort##1##2{%
+% \end{macrocode}
+% It may be that the sort order was changed after the glossary was
+% defined, so check if the count register has been defined.
+%\changes{4.30}{2017-06-11}{added check for register}
+% \begin{macrocode}
+ \ifcsundef{glossary@##1@sortcount}%
+ {\@gls@defsortcount{##1}}%
+ {}%
\expandafter\global\expandafter
\advance\csname glossary@##1@sortcount\endcsname by 1\relax
\expandafter\protected@xdef\csname glo@##2@sort\endcsname{%
@@ -896,6 +917,11 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% Don't need to do anything when the entry is used.
% \begin{macrocode}
\def\@gls@setsort##1{}%
+% \end{macrocode}
+% This sort option is allowed with \cs{makeglossaries} and
+% \cs{makenoidxglossaries}.
+% \begin{macrocode}
+ \let\@glo@check@sortallowed\@gobble
}
% \end{macrocode}
%\end{macro}
@@ -952,6 +978,46 @@ false,nolabel,autolabel,nameref}[nolabel]{%
\@glo@storeentry{##1}%
\fi
}%
+% \end{macrocode}
+% This sort option is allowed with \cs{makeglossaries} and
+% \cs{makenoidxglossaries}.
+% \begin{macrocode}
+ \let\@glo@check@sortallowed\@gobble
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\@gls@setupsort@none}
+%\changes{4.30}{2017-06-11}{new}
+% Slightly improves efficiency in the event that no indexing is
+% required.
+% \begin{macrocode}
+\newcommand*{\@gls@setupsort@none}{%
+% \end{macrocode}
+% Don't store entry index information.
+% \begin{macrocode}
+ \def\do@glo@storeentry##1{}%
+% \end{macrocode}
+% No count register required for standard sort.
+% \begin{macrocode}
+ \def\@gls@defsortcount##1{}%
+% \end{macrocode}
+% Don't modify sort value.
+% \begin{macrocode}
+ \def\@gls@defsort##1##2{%
+ \expandafter\global\expandafter\let\csname glo@##2@sort\endcsname\@glo@sort
+ }%
+% \end{macrocode}
+% Don't need to do anything when the entry is used.
+% \begin{macrocode}
+ \def\@gls@setsort##1{}%
+% \end{macrocode}
+% This sort option isn't allowed with \cs{makeglossaries} or
+% \cs{makenoidxglossaries}.
+% \begin{macrocode}
+ \renewcommand\@glo@check@sortallowed[1]{\PackageError{glossaries}
+ {Option sort=none not allowed with \string##1}%
+ {(Use sort=def instead)}}%
}
% \end{macrocode}
%\end{macro}
@@ -1263,6 +1329,19 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \end{macrocode}
%\end{macro}
%
+%\begin{macro}{\glosortentrieswarning}
+%\changes{4.30}{2017-06-11}{new}
+%Warn user that sorting may take a long time. This is actually an
+%informational message rather than a warning so just use
+%\cs{typeout}.
+% \begin{macrocode}
+\newcommand{\glosortentrieswarning}{%
+ \typeout{Using TeX to sort glossary entries---this may
+ take a while}%
+}
+% \end{macrocode}
+%\end{macro}
+%
%\begin{option}{nowarn}
% Define package option to suppress warnings
% \begin{macrocode}
@@ -1272,6 +1351,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
\else
\renewcommand*{\GlossariesWarning}[1]{}%
\renewcommand*{\GlossariesWarningNoLine}[1]{}%
+ \renewcommand*{\glosortentrieswarning}{}%
\fi
}
% \end{macrocode}
@@ -1477,6 +1557,11 @@ false,nolabel,autolabel,nameref}[nolabel]{%
%
%\begin{macro}{\glsnoidxstripaccents}
%\changes{4.04}{2014-03-06}{new}
+%This strips accents by redefining the standard accent commands to
+%just do their argument. (This will be localised since
+%\cs{glsnoidxstripaccents} is used within a group.) Anything outside
+%this standard set really shouldn't be using
+%\cs{makenoidxglossaries}.
% \begin{macrocode}
\newcommand*\glsnoidxstripaccents{%
\let\IeC\@firstofone
@@ -1495,6 +1580,10 @@ false,nolabel,autolabel,nameref}[nolabel]{%
\let\H\@firstofone
\let\c\@firstofone
\let\b\@firstofone
+% \end{macrocode}
+%\changes{4.30}{2017-06-11}{added \cs{a}}
+% \begin{macrocode}
+ \let\a\@secondoftwo
\def\AE{AE}%
\def\ae{ae}%
\def\OE{OE}%
@@ -1508,6 +1597,12 @@ false,nolabel,autolabel,nameref}[nolabel]{%
\def\SS{SS}%
\def\ss{ss}%
\def\th{th}%
+% \end{macrocode}
+%\changes{4.30}{2017-06-11}{added \cs{TH}, \cs{dh} and \cs{DH}}
+% \begin{macrocode}
+ \def\TH{TH}%
+ \def\dh{dh}%
+ \def\DH{DH}%
}
% \end{macrocode}
%\end{macro}
@@ -3366,6 +3461,16 @@ false,nolabel,autolabel,nameref}[nolabel]{%
\fi
% \end{macrocode}
%
+%\begin{macro}{\@xdycrossrefhook}
+%\changes{4.30}{2017-06-11}{new}
+%Hook used after writing cross-reference class information.
+% \begin{macrocode}
+\ifglsxindy
+ \newcommand\@xdycrossrefhook{}
+\fi
+% \end{macrocode}
+%\end{macro}
+%
%\begin{macro}{\GlsAddXdyLocation}
% \cs{GlsAddXdyLocation}\oarg{prefix-loc}\marg{name}\marg{definition}
% Define a new location called \meta{name}. The definition
@@ -3393,9 +3498,12 @@ false,nolabel,autolabel,nameref}[nolabel]{%
:sep "\glsclosebrace"))
}%
\fi
+% \end{macrocode}
+%\changes{4.30}{2017-06-11}{bug fix: changed \#1 to \#2}
+% \begin{macrocode}
\edef\@xdyuserlocationnames{%
\@xdyuserlocationnames^^J\space\space\space
- \string"#1\string"}%
+ \string"#2\string"}%
}
% \end{macrocode}
% Only has an effect before \ics{writeist}:
@@ -3410,9 +3518,10 @@ false,nolabel,autolabel,nameref}[nolabel]{%
%
%\begin{macro}{\@xdylocationclassorder}
% Define location class order
+%\changes{4.30}{2017-06-11}{bug fix: changed \cs{edef} to \cs{def}}
% \begin{macrocode}
\ifglsxindy
- \edef\@xdylocationclassorder{^^J\space\space\space
+ \def\@xdylocationclassorder{^^J\space\space\space
\string"roman-page-numbers\string"^^J\space\space\space
\string"arabic-page-numbers\string"^^J\space\space\space
\string"arabic-section-numbers\string"^^J\space\space\space
@@ -4567,12 +4676,33 @@ false,nolabel,autolabel,nameref}[nolabel]{%
%\changes{3.13a}{2013-11-05}{added \cs{gls@checkseeallowed}}
% \begin{macrocode}
\define@key{glossentry}{see}{%
+ \gls@set@xr@key{see}{\@glo@see}{#1}%
+}
+% \end{macrocode}
+%\end{key}
+%
+%\begin{macro}{\gls@set@xr@key}
+%\changes{4.30}{2017-06-11}{new}
+%\begin{definition}
+%\cs{gls@set@xr@key}\marg{key name}\marg{cs}\marg{value}
+%\end{definition}
+%Assign a cross-reference key.
+% \begin{macrocode}
+\newcommand*{\gls@set@xr@key}[3]{%
+ \renewcommand*{\gls@xr@key}{#1}%
\gls@checkseeallowed
- \def\@glo@see{#1}%
+ \def#2{#3}%
\@glo@seeautonumberlist
}
% \end{macrocode}
-%\end{key}
+%\end{macro}
+%
+%\begin{macro}{\gls@xr@key}
+%\changes{4.30}{2017-06-11}{new}
+% \begin{macrocode}
+\newcommand*{\gls@xr@key}{see}
+% \end{macrocode}
+%\end{macro}
%
%\begin{macro}{\gls@checkseeallowed}
%\changes{3.13a}{2013-11-05}{new}
@@ -4588,7 +4718,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \begin{macrocode}
\newcommand*{\gls@checkseeallowed@preambleonly}{%
\GlossariesWarning{glossaries}%
- {`see' key doesn't have any effect when used in the document
+ {`\gls@xr@key' key doesn't have any effect when used in the document
environment. Move the definition to the preamble
after \string\makeglossaries\space
or \string\makenoidxglossaries}%
@@ -5609,40 +5739,40 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \end{macrocode}
% Prevent any further use of \cs{GlsSetQuote}:
% \begin{macrocode}
- \let\GlsSetQuote\gls@nosetquote
+ \let\GlsSetQuote\gls@nosetquote
% \end{macrocode}
% Store label
% \begin{macrocode}
- \edef\@glo@label{\glsdetoklabel{#1}}%
+ \edef\@glo@label{\glsdetoklabel{#1}}%
% \end{macrocode}
% \changes{3.12a}{2013-10-16}{added \cs{glslabel}}
% Provide a means for user defined keys to reference the label:
% \begin{macrocode}
- \let\glslabel\@glo@label
+ \let\glslabel\@glo@label
% \end{macrocode}
% Set up defaults. If the \gloskey{name} or \gloskey{description}
% keys are omitted, an error will be generated.
% \begin{macrocode}
- \let\@glo@name\@glsnoname
- \let\@glo@desc\@glsnodesc
+ \let\@glo@name\@glsnoname
+ \let\@glo@desc\@glsnodesc
% \end{macrocode}
% \changes{1.12}{2008-03-08}{descriptionplural support added}
% \begin{macrocode}
- \let\@glo@descplural\@gls@default@value
+ \let\@glo@descplural\@gls@default@value
% \end{macrocode}
% \begin{macrocode}
- \let\@glo@type\@gls@default@value
- \let\@glo@symbol\@gls@default@value
+ \let\@glo@type\@gls@default@value
+ \let\@glo@symbol\@gls@default@value
% \end{macrocode}
% \changes{1.12}{2008-03-08}{symbolplural support added}
% \begin{macrocode}
- \let\@glo@symbolplural\@gls@default@value
+ \let\@glo@symbolplural\@gls@default@value
% \end{macrocode}
% \begin{macrocode}
- \let\@glo@text\@gls@default@value
+ \let\@glo@text\@gls@default@value
% \end{macrocode}
% \begin{macrocode}
- \let\@glo@plural\@gls@default@value
+ \let\@glo@plural\@gls@default@value
% \end{macrocode}
% \changes{1.13}{2008-05-10}{Changed default first value}
% Using \cs{let} instead of \cs{def} to make later comparison
@@ -5651,13 +5781,13 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \changes{1.16}{2008-08-27}{Changed def to let}
%\changes{3.10a}{2013-10-13}{Changed to using \cs{@gls@default@value}}
% \begin{macrocode}
- \let\@glo@first\@gls@default@value
+ \let\@glo@first\@gls@default@value
% \end{macrocode}
% \changes{1.12}{2008-03-08}{Changed default first plural to be first
% key with s appended (was text key with s appended)}
% \changes{1.13}{2008-05-10}{Changed default firstplural value}
% \begin{macrocode}
- \let\@glo@firstplural\@gls@default@value
+ \let\@glo@firstplural\@gls@default@value
% \end{macrocode}
% Set the default sort:
%\changes{3.10a}{2013-10-13}{Changed to using \cs{@gls@default@value}}
@@ -5666,194 +5796,194 @@ false,nolabel,autolabel,nameref}[nolabel]{%
%\changes{1.18}{2009-01-14}{Changed default value of sort
% to \cs{@glsdefaultsort}}
% \begin{macrocode}
- \let\@glo@sort\@gls@default@value
+ \let\@glo@sort\@gls@default@value
% \end{macrocode}
% Set the default counter:
% \begin{macrocode}
- \let\@glo@counter\@gls@default@value
+ \let\@glo@counter\@gls@default@value
% \end{macrocode}
%\changes{1.17}{2008-12-26}{added see key}
% \begin{macrocode}
- \def\@glo@see{}%
+ \def\@glo@see{}%
% \end{macrocode}
%\changes{1.17}{2008-12-26}{added parent key}
% \begin{macrocode}
- \def\@glo@parent{}%
+ \def\@glo@parent{}%
% \end{macrocode}
%\changes{1.17}{2008-12-26}{added nonumberlist key}
% \begin{macrocode}
- \def\@glo@prefix{}%
+ \def\@glo@prefix{}%
% \end{macrocode}
% Initialise nonumberlist setting if we're in the \env{document}
% environment.
% \begin{macrocode}
- \@gls@initnonumberlist
+ \@gls@initnonumberlist
% \end{macrocode}
%\changes{2.04}{2009-11-10}{added user1-6 keys}
% \begin{macrocode}
- \def\@glo@useri{}%
- \def\@glo@userii{}%
- \def\@glo@useriii{}%
- \def\@glo@useriv{}%
- \def\@glo@userv{}%
- \def\@glo@uservi{}%
+ \def\@glo@useri{}%
+ \def\@glo@userii{}%
+ \def\@glo@useriii{}%
+ \def\@glo@useriv{}%
+ \def\@glo@userv{}%
+ \def\@glo@uservi{}%
% \end{macrocode}
%\changes{3.0}{2011-04-02}{added short and long keys}
% \begin{macrocode}
- \def\@glo@short{}%
- \def\@glo@shortpl{}%
- \def\@glo@long{}%
- \def\@glo@longpl{}%
+ \def\@glo@short{}%
+ \def\@glo@shortpl{}%
+ \def\@glo@long{}%
+ \def\@glo@longpl{}%
% \end{macrocode}
% Add start hook in case another package wants to add extra keys.
% \begin{macrocode}
- \@newglossaryentryprehook
+ \@newglossaryentryprehook
% \end{macrocode}
% Extract key-val information from third parameter:
% \begin{macrocode}
- \setkeys{glossentry}{#2}%
+ \setkeys{glossentry}{#2}%
% \end{macrocode}
%\changes{3.14a}{2013-11-12}{added check for existence of default glossary}
% Check there is a default glossary.
% \begin{macrocode}
- \ifundef\glsdefaulttype
- {%
- \PackageError{glossaries}%
- {No default glossary type (have you used `nomain' by mistake?)}%
- {If you use package option `nomain' you must define
- a new glossary before you can define entries}%
- }%
- {}%
+ \ifundef\glsdefaulttype
+ {%
+ \PackageError{glossaries}%
+ {No default glossary type (have you used `nomain' by mistake?)}%
+ {If you use package option `nomain' you must define
+ a new glossary before you can define entries}%
+ }%
+ {}%
% \end{macrocode}
% Assign type. This must be fully expandable
%\changes{4.03}{2014-01-20}{replaced \#1 with \cs{@glo@label}}
% \begin{macrocode}
- \gls@assign@field{\glsdefaulttype}{\@glo@label}{type}{\@glo@type}%
- \edef\@glo@type{\glsentrytype{\@glo@label}}%
+ \gls@assign@field{\glsdefaulttype}{\@glo@label}{type}{\@glo@type}%
+ \edef\@glo@type{\glsentrytype{\@glo@label}}%
% \end{macrocode}
% Check to see if this glossary type has been defined, if it has,
% add this label to the relevant list, otherwise generate an error.
%\changes{3.0}{2011-04-02}{replaced \cs{@ifundefined} with
%\cs{ifcsundef}}
% \begin{macrocode}
- \ifcsundef{glolist@\@glo@type}%
- {%
- \PackageError{glossaries}%
- {Glossary type `\@glo@type' has not been defined}%
- {You need to define a new glossary type, before making entries
- in it}%
- }%
- {%
+ \ifcsundef{glolist@\@glo@type}%
+ {%
+ \PackageError{glossaries}%
+ {Glossary type `\@glo@type' has not been defined}%
+ {You need to define a new glossary type, before making entries
+ in it}%
+ }%
+ {%
% \end{macrocode}
%\changes{4.08}{2014-07-30}{added check for ignored glossary}
% Check if it's an ignored glossary
% \begin{macrocode}
- \ifignoredglossary\@glo@type
+ \ifignoredglossary\@glo@type
{%
% \end{macrocode}
% The description may be omitted for an entry in an ignored
% glossary.
% \begin{macrocode}
- \ifx\@glo@desc\@glsnodesc
- \let\@glo@desc\@empty
- \fi
- }%
- {%
- }%
- \protected@edef\@glolist@{\csname glolist@\@glo@type\endcsname}%
- \expandafter\xdef\csname glolist@\@glo@type\endcsname{%
- \@glolist@{\@glo@label},}%
+ \ifx\@glo@desc\@glsnodesc
+ \let\@glo@desc\@empty
+ \fi
}%
+ {%
+ }%
+ \protected@edef\@glolist@{\csname glolist@\@glo@type\endcsname}%
+ \expandafter\xdef\csname glolist@\@glo@type\endcsname{%
+ \@glolist@{\@glo@label},}%
+ }%
% \end{macrocode}
% Initialise level to 0.
% \begin{macrocode}
- \gls@level=0\relax
+ \gls@level=0\relax
% \end{macrocode}
% Has this entry been assigned a parent?
% \begin{macrocode}
- \ifx\@glo@parent\@empty
+ \ifx\@glo@parent\@empty
% \end{macrocode}
% Doesn't have a parent. Set \cs{glo@}\meta{label}"@parent" to
% empty.
% \begin{macrocode}
- \expandafter\gdef\csname glo@\@glo@label @parent\endcsname{}%
- \else
+ \expandafter\gdef\csname glo@\@glo@label @parent\endcsname{}%
+ \else
% \end{macrocode}
% Has a parent. Check to ensure this entry isn't its own parent.
%\changes{4.03}{2014-01-20}{replaced \cs{ifthenelse} with
%\cs{ifdefequal}}
% \begin{macrocode}
- \ifdefequal\@glo@label\@glo@parent%
- {%
- \PackageError{glossaries}{Entry `\@glo@label' can't be its own parent}{}%
- \def\@glo@parent{}%
- \expandafter\gdef\csname glo@\@glo@label @parent\endcsname{}%
- }%
- {%
+ \ifdefequal\@glo@label\@glo@parent%
+ {%
+ \PackageError{glossaries}{Entry `\@glo@label' can't be its own parent}{}%
+ \def\@glo@parent{}%
+ \expandafter\gdef\csname glo@\@glo@label @parent\endcsname{}%
+ }%
+ {%
% \end{macrocode}
% Check the parent exists:
% \begin{macrocode}
- \ifglsentryexists{\@glo@parent}%
- {%
+ \ifglsentryexists{\@glo@parent}%
+ {%
% \end{macrocode}
% Parent exists. Set \cs{glo@}\meta{label}"@parent".
% \begin{macrocode}
- \expandafter\xdef\csname glo@\@glo@label @parent\endcsname{%
- \@glo@parent}%
+ \expandafter\xdef\csname glo@\@glo@label @parent\endcsname{%
+ \@glo@parent}%
% \end{macrocode}
% Determine level.
% \begin{macrocode}
- \gls@level=\csname glo@\@glo@parent @level\endcsname\relax
- \advance\gls@level by 1\relax
+ \gls@level=\csname glo@\@glo@parent @level\endcsname\relax
+ \advance\gls@level by 1\relax
% \end{macrocode}
% If name hasn't been specified, use same as the parent name
% \begin{macrocode}
- \ifx\@glo@name\@glsnoname
- \expandafter\let\expandafter\@glo@name
- \csname glo@\@glo@parent @name\endcsname
+ \ifx\@glo@name\@glsnoname
+ \expandafter\let\expandafter\@glo@name
+ \csname glo@\@glo@parent @name\endcsname
% \end{macrocode}
% If name and plural haven't been specified, use same as the parent
% \begin{macrocode}
- \ifx\@glo@plural\@gls@default@value
- \expandafter\let\expandafter\@glo@plural
- \csname glo@\@glo@parent @plural\endcsname
- \fi
+ \ifx\@glo@plural\@gls@default@value
+ \expandafter\let\expandafter\@glo@plural
+ \csname glo@\@glo@parent @plural\endcsname
\fi
- }%
- {%
+ \fi
+ }%
+ {%
% \end{macrocode}
% Parent doesn't exist, so issue an error message and change this
% entry to have no parent
% \begin{macrocode}
- \PackageError{glossaries}%
- {%
- Invalid parent `\@glo@parent'
- for entry `\@glo@label' - parent doesn't exist%
- }%
- {%
- Parent entries must be defined before their children%
- }%
- \def\@glo@parent{}%
- \expandafter\gdef\csname glo@\@glo@label @parent\endcsname{}%
+ \PackageError{glossaries}%
+ {%
+ Invalid parent `\@glo@parent'
+ for entry `\@glo@label' - parent doesn't exist%
}%
+ {%
+ Parent entries must be defined before their children%
+ }%
+ \def\@glo@parent{}%
+ \expandafter\gdef\csname glo@\@glo@label @parent\endcsname{}%
}%
- \fi
+ }%
+ \fi
% \end{macrocode}
% Set the level for this entry
% \begin{macrocode}
- \expandafter\xdef\csname glo@\@glo@label @level\endcsname{\number\gls@level}%
+ \expandafter\xdef\csname glo@\@glo@label @level\endcsname{\number\gls@level}%
% \end{macrocode}
% Define commands associated with this entry:
% \begin{macrocode}
- \gls@assign@field{\@glo@name}{\@glo@label}{sortvalue}{\@glo@sort}%
- \letcs\@glo@sort{glo@\@glo@label @sortvalue}%
- \gls@assign@field{\@glo@name}{\@glo@label}{text}{\@glo@text}%
- \expandafter\gls@assign@field\expandafter
- {\csname glo@\@glo@label @text\endcsname\glspluralsuffix}%
- {\@glo@label}{plural}{\@glo@plural}%
- \expandafter\gls@assign@field\expandafter
- {\csname glo@\@glo@label @text\endcsname}%
- {\@glo@label}{first}{\@glo@first}%
+ \gls@assign@field{\@glo@name}{\@glo@label}{sortvalue}{\@glo@sort}%
+ \letcs\@glo@sort{glo@\@glo@label @sortvalue}%
+ \gls@assign@field{\@glo@name}{\@glo@label}{text}{\@glo@text}%
+ \expandafter\gls@assign@field\expandafter
+ {\csname glo@\@glo@label @text\endcsname\glspluralsuffix}%
+ {\@glo@label}{plural}{\@glo@plural}%
+ \expandafter\gls@assign@field\expandafter
+ {\csname glo@\@glo@label @text\endcsname}%
+ {\@glo@label}{first}{\@glo@first}%
% \end{macrocode}
%\changes{3.14a}{2013-11-12}{set the default for firstplural to be the value
%of plural}
@@ -5862,118 +5992,110 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \cs{glspluralsuffix}, otherwise make the default the value of the
% \gloskey{plural} key.
% \begin{macrocode}
- \ifx\@glo@first\@gls@default@value
- \expandafter\gls@assign@field\expandafter
- {\csname glo@\@glo@label @plural\endcsname}%
- {\@glo@label}{firstpl}{\@glo@firstplural}%
- \else
- \expandafter\gls@assign@field\expandafter
- {\csname glo@\@glo@label @first\endcsname\glspluralsuffix}%
- {\@glo@label}{firstpl}{\@glo@firstplural}%
- \fi
+ \ifx\@glo@first\@gls@default@value
+ \expandafter\gls@assign@field\expandafter
+ {\csname glo@\@glo@label @plural\endcsname}%
+ {\@glo@label}{firstpl}{\@glo@firstplural}%
+ \else
+ \expandafter\gls@assign@field\expandafter
+ {\csname glo@\@glo@label @first\endcsname\glspluralsuffix}%
+ {\@glo@label}{firstpl}{\@glo@firstplural}%
+ \fi
% \end{macrocode}
%\changes{3.11a}{2013-10-15}{Fixed default counter if none supplied}
% \begin{macrocode}
- \ifcsundef{@glotype@\@glo@type @counter}%
- {%
- \def\@glo@defaultcounter{\glscounter}%
- }%
- {%
- \letcs\@glo@defaultcounter{@glotype@\@glo@type @counter}%
- }%
- \gls@assign@field{\@glo@defaultcounter}{\@glo@label}{counter}{\@glo@counter}%
- \gls@assign@field{}{\@glo@label}{useri}{\@glo@useri}%
- \gls@assign@field{}{\@glo@label}{userii}{\@glo@userii}%
- \gls@assign@field{}{\@glo@label}{useriii}{\@glo@useriii}%
- \gls@assign@field{}{\@glo@label}{useriv}{\@glo@useriv}%
- \gls@assign@field{}{\@glo@label}{userv}{\@glo@userv}%
- \gls@assign@field{}{\@glo@label}{uservi}{\@glo@uservi}%
- \gls@assign@field{}{\@glo@label}{short}{\@glo@short}%
- \gls@assign@field{}{\@glo@label}{shortpl}{\@glo@shortpl}%
- \gls@assign@field{}{\@glo@label}{long}{\@glo@long}%
- \gls@assign@field{}{\@glo@label}{longpl}{\@glo@longpl}%
- \ifx\@glo@name\@glsnoname
- \@glsnoname
- \let\@gloname\@gls@default@value
- \fi
- \gls@assign@field{}{\@glo@label}{name}{\@glo@name}%
+ \ifcsundef{@glotype@\@glo@type @counter}%
+ {%
+ \def\@glo@defaultcounter{\glscounter}%
+ }%
+ {%
+ \letcs\@glo@defaultcounter{@glotype@\@glo@type @counter}%
+ }%
+ \gls@assign@field{\@glo@defaultcounter}{\@glo@label}{counter}{\@glo@counter}%
+ \gls@assign@field{}{\@glo@label}{useri}{\@glo@useri}%
+ \gls@assign@field{}{\@glo@label}{userii}{\@glo@userii}%
+ \gls@assign@field{}{\@glo@label}{useriii}{\@glo@useriii}%
+ \gls@assign@field{}{\@glo@label}{useriv}{\@glo@useriv}%
+ \gls@assign@field{}{\@glo@label}{userv}{\@glo@userv}%
+ \gls@assign@field{}{\@glo@label}{uservi}{\@glo@uservi}%
+ \gls@assign@field{}{\@glo@label}{short}{\@glo@short}%
+ \gls@assign@field{}{\@glo@label}{shortpl}{\@glo@shortpl}%
+ \gls@assign@field{}{\@glo@label}{long}{\@glo@long}%
+ \gls@assign@field{}{\@glo@label}{longpl}{\@glo@longpl}%
+ \ifx\@glo@name\@glsnoname
+ \@glsnoname
+ \let\@gloname\@gls@default@value
+ \fi
+ \gls@assign@field{}{\@glo@label}{name}{\@glo@name}%
% \end{macrocode}
%\changes{3.02}{2012-05-21}{added numberlist element}
% Set default numberlist if not defined:
% \begin{macrocode}
- \ifcsundef{glo@\@glo@label @numberlist}%
- {%
- \csxdef{glo@\@glo@label @numberlist}{%
- \noexpand\@gls@missingnumberlist{\@glo@label}}%
- }%
- {}%
+ \ifcsundef{glo@\@glo@label @numberlist}%
+ {%
+ \csxdef{glo@\@glo@label @numberlist}{%
+ \noexpand\@gls@missingnumberlist{\@glo@label}}%
+ }%
+ {}%
% \end{macrocode}
% Store nonumberlist setting if we're in the \env{document}
% environment.
% \begin{macrocode}
- \@gls@storenonumberlist{\@glo@label}%
+ \@gls@storenonumberlist{\@glo@label}%
% \end{macrocode}
% The smaller and smallcaps options set the description to
% \cs{@glo@first}. Need to check for this, otherwise it won't get
% expanded if the description gets sanitized.
%\changes{1.15}{2008-08-15}{check for \cs{@glo@first} in description}%
% \begin{macrocode}
- \def\@glo@@desc{\@glo@first}%
- \ifx\@glo@desc\@glo@@desc
- \let\@glo@desc\@glo@first
- \fi
- \ifx\@glo@desc\@glsnodesc
- \@glsnodesc
- \let\@glodesc\@gls@default@value
- \fi
- \gls@assign@desc{\@glo@label}%
+ \def\@glo@@desc{\@glo@first}%
+ \ifx\@glo@desc\@glo@@desc
+ \let\@glo@desc\@glo@first
+ \fi
+ \ifx\@glo@desc\@glsnodesc
+ \@glsnodesc
+ \let\@glodesc\@gls@default@value
+ \fi
+ \gls@assign@desc{\@glo@label}%
% \end{macrocode}
%\changes{1.18}{2009-01-14}{moved sort sanitization to
% \cs{newglossaryentry}}
%\changes{3.0}{2011-04-02}{added \cs{@gls@defsort}}
% Set the sort key for this entry:
% \begin{macrocode}
- \@gls@defsort{\@glo@type}{\@glo@label}%
+ \@gls@defsort{\@glo@type}{\@glo@label}%
% \end{macrocode}
%\changes{1.15}{2008-08-15}{check for \cs{@glo@text} in symbol}%
% \begin{macrocode}
- \def\@glo@@symbol{\@glo@text}%
- \ifx\@glo@symbol\@glo@@symbol
- \let\@glo@symbol\@glo@text
- \fi
- \gls@assign@field{\relax}{\@glo@label}{symbol}{\@glo@symbol}%
- \expandafter
- \gls@assign@field\expandafter
- {\csname glo@\@glo@label @symbol\endcsname}
- {\@glo@label}{symbolplural}{\@glo@symbolplural}%
+ \def\@glo@@symbol{\@glo@text}%
+ \ifx\@glo@symbol\@glo@@symbol
+ \let\@glo@symbol\@glo@text
+ \fi
+ \gls@assign@field{\relax}{\@glo@label}{symbol}{\@glo@symbol}%
+ \expandafter
+ \gls@assign@field\expandafter
+ {\csname glo@\@glo@label @symbol\endcsname}
+ {\@glo@label}{symbolplural}{\@glo@symbolplural}%
% \end{macrocode}
% Define an associated boolean variable to determine whether this
% entry has been used yet (needs to be defined globally):
% \begin{macrocode}
- \expandafter\xdef\csname glo@\@glo@label @flagfalse\endcsname{%
- \noexpand\global
- \noexpand\let\expandafter\noexpand
- \csname ifglo@\@glo@label @flag\endcsname\noexpand\iffalse
- }%
- \expandafter\xdef\csname glo@\@glo@label @flagtrue\endcsname{%
- \noexpand\global
- \noexpand\let\expandafter\noexpand
- \csname ifglo@\@glo@label @flag\endcsname\noexpand\iftrue
- }%
- \csname glo@\@glo@label @flagfalse\endcsname
+ \expandafter\xdef\csname glo@\@glo@label @flagfalse\endcsname{%
+ \noexpand\global
+ \noexpand\let\expandafter\noexpand
+ \csname ifglo@\@glo@label @flag\endcsname\noexpand\iffalse
+ }%
+ \expandafter\xdef\csname glo@\@glo@label @flagtrue\endcsname{%
+ \noexpand\global
+ \noexpand\let\expandafter\noexpand
+ \csname ifglo@\@glo@label @flag\endcsname\noexpand\iftrue
+ }%
+ \csname glo@\@glo@label @flagfalse\endcsname
% \end{macrocode}
% Sort out any cross-referencing if required.
%\changes{4.04}{2014-03-06}{replaced \cs{ifx} with \cs{ifdefvoid}}
% \begin{macrocode}
- \ifdefvoid\@glo@see
- {}%
- {%
- \protected@edef\@do@glssee{%
- \noexpand\@gls@fixbraces\noexpand\@glo@list\@glo@see
- \noexpand\@nil
- \noexpand\expandafter\noexpand\@glssee\noexpand\@glo@list{\@glo@label}}%
- \@do@glssee
- }%
+ \@glo@autosee
% \end{macrocode}
% Determine and store main part of the entry's index format.
%\changes{1.17}{2008-12-26}{Stored main part of entry
@@ -6001,6 +6123,30 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \cs{newglossaryentry} in the preamble}
%\end{macro}
%
+%\begin{macro}{\@glo@autosee}
+%\changes{4.30}{2017-06-11}{new}
+%Automatically implement \cs{glssee}.
+% \begin{macrocode}
+\newcommand*{\@glo@autosee}{%
+ \ifdefvoid\@glo@see{}%
+ {%
+ \protected@edef\@do@glssee{%
+ \noexpand\@gls@fixbraces\noexpand\@glo@list\@glo@see\noexpand\@nil
+ \noexpand\expandafter\noexpand\@glssee\noexpand\@glo@list{\@glo@label}}%
+ \@do@glssee
+ }%
+ \@glo@autoseehook
+}%
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\@glo@autoseehook}
+%\changes{4.30}{2017-06-11}{new}
+% \begin{macrocode}
+\newcommand*{\@glo@autoseehook}{}
+% \end{macrocode}
+%\end{macro}
+%
%\begin{macro}{\@newglossaryentryprehook}
% Allow extra information to be added to glossary entries:
%\changes{2.04}{2009-11-10}{new}
@@ -11505,7 +11651,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \begin{macrocode}
\define@key{glossadd}{counter}{\def\@gls@counter{#1}}
% \end{macrocode}
-%\changes{2.07}{2010-07-10}{glssadd format key stored in \cs{@glsnumberformat}
+%\changes{2.07}{2010-07-10}{glsadd format key stored in \cs{@glsnumberformat}
%(was mistakenly stored in \cs{@glo@format})}
% \begin{macrocode}
\define@key{glossadd}{format}{\def\@glsnumberformat{#1}}
@@ -11860,6 +12006,11 @@ false,nolabel,autolabel,nameref}[nolabel]{%
:open \string"\string\glsseeformat\string"
:close \string"{}\string")}%
% \end{macrocode}
+% Provide hook to write extra material here (used by
+% \sty{glossaries-extra} to define a seealso class).
+% \begin{macrocode}
+ \@xdycrossrefhook
+% \end{macrocode}
% List the order to sort the classes.
% \begin{macrocode}
\write\glswrite{^^J; define the order of the location classes}%
@@ -12523,6 +12674,10 @@ false,nolabel,autolabel,nameref}[nolabel]{%
}%
}%
\fi
+% \end{macrocode}
+% Check the sort setting:
+% \begin{macrocode}
+ \@glo@check@sortallowed\makeglossaries
}
% \end{macrocode}
%\changes{4.02}{2013-13-05}{made preamble only}
@@ -12723,6 +12878,10 @@ false,nolabel,autolabel,nameref}[nolabel]{%
\let\@@gls@sanitizesort\@gls@noidx@sanitizesort
\let\@@gls@nosanitizesort\@@gls@noidx@nosanitizesort
\@gls@noidx@setsanitizesort
+% \end{macrocode}
+% Check sort option allowed.
+% \begin{macrocode}
+ \@glo@check@sortallowed\makenoidxglossaries
}
% \end{macrocode}
% Preamble-only command:
@@ -13413,7 +13572,7 @@ you
% \end{macrocode}
%\end{macro}
%\begin{macro}{\glsseesep}
-% Separator to use between entires in a cross-referencing list.
+% Separator to use between entries in a cross-referencing list.
% \begin{macrocode}
\newcommand*{\glsseesep}{, }
% \end{macrocode}
@@ -13432,7 +13591,7 @@ you
%\changes{3.0}{2011-04-02}{new}
% As from v3.0, default is to use \ics{glsentrytext} instead of
% \ics{glsentryname}. (To avoid problems with the \gloskey{name} key being
-% sanitized.)
+% sanitized, although this is no longer a problem now.)
% \begin{macrocode}
\newcommand*{\glsseeitemformat}[1]{\glsentrytext{#1}}
% \end{macrocode}
@@ -13797,6 +13956,7 @@ you
%\changes{4.04}{2014-03-06}{new}
% \begin{macrocode}
\newcommand*{\@glo@sortentries}[2]{%
+ \glosortentrieswarning
\def\@glo@sortinglist{}%
\def\@glo@sortinghandler{#1}%
\edef\@glo@type{#2}%
@@ -13820,7 +13980,6 @@ you
}
% \end{macrocode}
%\end{macro}
-%
%\begin{macro}{\@glo@addchildren}
%\changes{4.04}{2014-03-06}{new}
%\begin{definition}
@@ -14101,7 +14260,6 @@ you
% \end{macrocode}
%\end{macro}
%
-%
%\begin{macro}{\@glo@sortmacro@def@do}
%\changes{4.04}{2014-03-06}{new}
% This won't include parent entries that haven't been referenced.
@@ -14286,7 +14444,16 @@ you
% \end{macrocode}
% Do the group header:
% \begin{macrocode}
- \ifdefempty{\@gls@currentlettergroup}{}{\glsgroupskip}%
+ \ifdefempty{\@gls@currentlettergroup}{}%
+ {%
+% \end{macrocode}
+%\changes{4.30}{2017-06-11}{letter group assignment made
+%global}
+%The group skip may start a new scope, so make a global assignment.
+% \begin{macrocode}
+ \global\let\@glo@thislettergrp\@glo@thislettergrp
+ \glsgroupskip
+ }%
\glsgroupheading{\@glo@thislettergrp}%
}%
% \end{macrocode}
@@ -15142,7 +15309,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
}
% \end{macrocode}
%\end{macro}
-%\begin{macro}{\@gls@getothergrouptitle}
+%\begin{macro}{\@gls@noidx@getgrouptitle}
%\changes{4.04}{2014-03-06}{new}
% Version for the no-indexing app option:
% \begin{macrocode}
@@ -18391,7 +18558,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \cs{gls}\marg{label}} on subsequent use.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries-prefix}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossaries-prefix}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Pass all options to \sty{glossaries}:
% \begin{macrocode}
@@ -18806,7 +18973,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
%\label{sec:code:hypernav}
% Package Definition:
% \begin{macrocode}
-\ProvidesPackage{glossary-hypernav}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-hypernav}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
%
% The commands defined in this package are provided to
@@ -18986,7 +19153,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% This defines an in-line style where the entries are
% comma-separated with just the name and description displayed.
% \begin{macrocode}
-\ProvidesPackage{glossary-inline}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-inline}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
%
%\begin{style}{inline}
@@ -19177,7 +19344,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \ics{item} command, it will appear in a bold font by
% default.
% \begin{macrocode}
-\ProvidesPackage{glossary-list}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-list}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
%\begin{macro}{\indexspace}
%\changes{4.13}{2015-02-03}{new}
@@ -19459,7 +19626,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% The glossary styles defined in the \isty{glossary-long} package
% used the \env{longtable} environment in the glossary.
% \begin{macrocode}
-\ProvidesPackage{glossary-long}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-long}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Requires the \isty{longtable} package:
% \begin{macrocode}
@@ -19956,7 +20123,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \url{http://tex.stackexchange.com/a/56890}
%
% \begin{macrocode}
-\ProvidesPackage{glossary-longbooktabs}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-longbooktabs}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Requires \sty{booktabs} package:
% \begin{macrocode}
@@ -20297,7 +20464,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% used the \env{longtable} environment in the glossary and use
% ragged right formatting for the multiline columns.
% \begin{macrocode}
-\ProvidesPackage{glossary-longragged}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-longragged}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Requires the \isty{array} package:
% \begin{macrocode}
@@ -20730,7 +20897,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
%use the \sty{multicol} package. These use the tree-like glossary
%styles in a multicol environment.
% \begin{macrocode}
-\ProvidesPackage{glossary-mcols}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-mcols}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Required packages:
% \begin{macrocode}
@@ -21166,7 +21333,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% The glossary styles defined in the \isty{glossary-super} package
% use the \env{supertabular} environment.
% \begin{macrocode}
-\ProvidesPackage{glossary-super}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-super}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Requires the \isty{supertabular} package:
% \begin{macrocode}
@@ -21698,7 +21865,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% are like those provided by the \isty{glossary-super} package,
% except that the multiline columns have ragged right justification.
% \begin{macrocode}
-\ProvidesPackage{glossary-superragged}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-superragged}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Requires the \isty{array} package:
% \begin{macrocode}
@@ -22138,7 +22305,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% that have a tree-like structure. These are designed for
% hierarchical glossaries.
% \begin{macrocode}
-\ProvidesPackage{glossary-tree}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossary-tree}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
%
%\begin{macro}{\indexspace}
@@ -22859,7 +23026,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% hyperlinks may not work properly.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries-compatible-207}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossaries-compatible-207}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
%\begin{macro}{\GlsAddXdyAttribute}
% Adds an attribute in old format.
@@ -23220,7 +23387,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
%\section{glossaries-compatible-307}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries-compatible-307}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossaries-compatible-307}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
%
% Compatibility macros for predefined glossary styles:
@@ -24028,7 +24195,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% \end{macrocode}
% Package version number now in line with main glossaries package number.
% \begin{macrocode}
-\ProvidesPackage{glossaries-accsupp}[2017/01/19 v4.29 (NLCT)
+\ProvidesPackage{glossaries-accsupp}[2017/06/11 v4.30 (NLCT)
Experimental glossaries accessibility]
% \end{macrocode}
% Pass all options to \sty{glossaries}:
@@ -26467,7 +26634,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% modules.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries-babel}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossaries-babel}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Load \sty{tracklang} to obtain language settings.
% \begin{macrocode}
@@ -26511,7 +26678,7 @@ false,nolabel,autolabel,nameref}[nolabel]{%
% modules.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries-polyglossia}[2017/01/19 v4.29 (NLCT)]
+\ProvidesPackage{glossaries-polyglossia}[2017/06/11 v4.30 (NLCT)]
% \end{macrocode}
% Load \sty{tracklang} to obtain language settings.
% \begin{macrocode}
@@ -31541,8 +31708,7 @@ doesn't have associated numbers.
\chapter{Introduction}
\pagenumbering{arabic}
-\glslink{gls:set}{Sets}
-are denoted by a caligraphic font
+\Glspl{gls:set} are denoted by a calligraphic font
e.g.\ \gls{not:set}.
Let \gls[format=hyperit]{not:U} denote the universal set.