From 5d714d9476cbb90b125ff14a9d764ad90bb7c2ed Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Fri, 24 Sep 2021 03:01:47 +0000 Subject: CTAN sync 202109240301 --- .../contrib/glossaries-extra/glossaries-extra.dtx | 906 ++++++++++++++++++--- 1 file changed, 780 insertions(+), 126 deletions(-) (limited to 'macros/latex/contrib/glossaries-extra/glossaries-extra.dtx') diff --git a/macros/latex/contrib/glossaries-extra/glossaries-extra.dtx b/macros/latex/contrib/glossaries-extra/glossaries-extra.dtx index b9f90f6ca8..da86005507 100644 --- a/macros/latex/contrib/glossaries-extra/glossaries-extra.dtx +++ b/macros/latex/contrib/glossaries-extra/glossaries-extra.dtx @@ -1,12 +1,10 @@ %\iffalse % glossaries-extra.dtx generated using makedtx version 1.2 (c) Nicola Talbot % Command line args: -% -setambles ".*\.bib=>\nopreamble\nopostamble" -% -section "chapter" -% -doc "glossaries-extra-codedoc.tex" -% -author "Nicola Talbot" % -macrocode ".*\.tex" % -macrocode ".*\.bib" +% -setambles ".*\.bib=>\nopreamble\nopostamble" +% -section "chapter" % -src "glossaries-extra.sty\Z=>glossaries-extra.sty" % -src "glossaries-extra-bib2gls.sty\Z=>glossaries-extra-bib2gls.sty" % -src "glossaries-extra-stylemods.sty\Z=>glossaries-extra-stylemods.sty" @@ -15,11 +13,13 @@ % -src "glossary-topic.sty\Z=>glossary-topic.sty" % -src "(example-glossaries-.+\.tex)\Z=>\1" % -src "(example-glossaries-.+\.bib)\Z=>\1" +% -codetitle "Main Package Code (\\styfmt{glossaries-extra.sty})" +% -author "Nicola Talbot" +% -doc "glossaries-extra-codedoc.tex" % -comment ".*\.tex" % -comment ".*\.bib" -% -codetitle "Main Package Code (\\styfmt{glossaries-extra.sty})" % glossaries-extra -% Created on 2020/4/1 13:56 +% Created on 2021/9/22 14:44 %\fi %\iffalse %<*package> @@ -42,7 +42,7 @@ %\fi % \iffalse % Doc-Source file to use with LaTeX2e -% Copyright (C) 2020 Nicola Talbot, all rights reserved. +% Copyright (C) 2021 Nicola Talbot, all rights reserved. % \fi % \iffalse %<*driver> @@ -142,7 +142,7 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of \setcounter{IndexColumns}{2} -\CheckSum{27181} +\CheckSum{27294} \newcommand*{\ifirstuse}{\iterm{first use}} \newcommand*{\firstuse}{\gls{firstuse}} @@ -182,13 +182,13 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of \raggedright } -\title{glossaries-extra.sty v1.45: +\title{glossaries-extra.sty v1.46: documented code} \author{Nicola L.C. Talbot\\[10pt] Dickimaw Books\\ \url{http://www.dickimaw-books.com/}} -\date{2020-04-01} +\date{2021-09-20} \begin{document} \DocInput{glossaries-extra.dtx} @@ -233,7 +233,7 @@ Dickimaw Books\\ %\section{Package Initialisation and Options} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra}[2020/04/01 v1.45 (NLCT)] +\ProvidesPackage{glossaries-extra}[2021/09/20 v1.46 (NLCT)] % \end{macrocode} % Requires \sty{xkeyval} to define package options. % \begin{macrocode} @@ -355,10 +355,11 @@ Dickimaw Books\\ % %\begin{macro}{\@glsxtr@do@redef@forglsentries} %\changes{1.11}{2017-01-19}{new} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\@glsxtr@do@redef@forglsentries}{% \renewcommand*{\forglsentries}[3][\glsdefaulttype]{% - \edef\@@glo@list{\csname glolist@##1\endcsname}% + \protected@edef\@@glo@list{\csname glolist@##1\endcsname}% \ifdefstring{\@@glo@list}{,}% {% \GlossariesExtraWarning{No entries defined in glossary `##1'}% @@ -449,7 +450,10 @@ Dickimaw Books\\ \begingroup \ifKV@glslink@noindex \else - \edef\@gls@label{\glsdetoklabel{#1}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@label{\glsdetoklabel{#1}}% \let\glslabel\@gls@label \glswriteentry{#1}% {% @@ -515,8 +519,9 @@ Dickimaw Books\\ %Save the label in case it's needed. This needs to be outside the %existence check to allow the post-link hook to reference it. %\changes{1.42}{2020-02-03}{moved label definition outside of conditional} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} - \edef\@gls@label{\glsdetoklabel{#2}}% + \protected@edef\@gls@label{\glsdetoklabel{#2}}% \let\glslabel\@gls@label \ifglsentryexists{#2}{}% {% @@ -654,7 +659,7 @@ Dickimaw Books\\ %\begin{macro}{\@glsxtr@dorecord} %\changes{1.08}{2016-12-13}{new} %\changes{1.15}{2017-05-10}{corrected premature expansion of \cs{@glslocref}} -%If \pkgopt[alsoindex]{record} is used, then \cs{@glslocref} may +%If \pkgopt[alsoindex]{record} or \pkgopt[hybrid]{record} is used, then \cs{@glslocref} may %have been escaped, but this isn't appropriate here. %\changes{1.19}{2017-09-09}{Use \cs{@glsrecordlocref} instead of \cs{@glslocref}} % \begin{macrocode} @@ -808,16 +813,17 @@ Dickimaw Books\\ % \begin{macrocode} \newcommand*{\@glsxtr@noop@recordcounter}[1]{% \PackageError{glossaries-extra}{\string\GlsXtrRecordCounter\space - requires record=only or record=alsoindex package option}{}% + requires record=only or record=hybrid package option}{}% } % \end{macrocode} %\end{macro} % %\begin{macro}{\@glsxtr@op@recordcounter} %\changes{1.12}{2017-02-03}{new} +%\changes{1.46}{2021-09-20}{changed \cs{eappto} to \cs{protected@eappto}} % \begin{macrocode} \newcommand*{\@glsxtr@op@recordcounter}[1]{% - \eappto\@glsxtr@counterrecordhook{\noexpand\@glsxtr@docounterrecord{#1}}% + \protected@eappto\@glsxtr@counterrecordhook{\noexpand\@glsxtr@docounterrecord{#1}}% } % \end{macrocode} %\end{macro} @@ -927,6 +933,12 @@ Dickimaw Books\\ % %\begin{macro}{\@glsxtr@record@setting@alsoindex} %\changes{1.19}{2017-09-09}{new} +%As from v1.46, the \pkgopt[alsoindex]{record} is renamed to +%\pkgopt[hybrid]{record} with \pkgopt[alsoindex]{record} as a +%deprecated synonym to avoid confusion. The internal commands +%that include \texttt{alsoindex} in the name will remain unchanged +%to avoid breaking things, but this command will need to be +%redefined by \pkgopt[hybrid]{record}. % \begin{macrocode} \newcommand*{\@glsxtr@record@setting@alsoindex}{alsoindex} % \end{macrocode} @@ -970,6 +982,29 @@ Dickimaw Books\\ % \end{macrocode} %\end{macro} % +%\begin{macro}{\@glsxtr@warn@hybrid@noprintgloss} +%\changes{1.46}{2021-09-20}{new} +%Used by hybrid method if \cs{printglossary} isn't used. +% \begin{macrocode} +\newcommand\@glsxtr@warn@hybrid@noprintgloss{% + \ifdefstring{\@glo@types}{,}% + {% + \GlossariesExtraWarningNoLine{No glossaries have been defined}% + }% + {% + \GlossariesExtraWarningNoLine{No \string\printglossary\space + or \string\printglossaries\space + found. ^^JYou have requested the hybrid setting + record=\@glsxtr@record@setting\space which requires a + combination of bib2gls (to fetch entries) and makeindex/xindy + (to sort and collate the entries). If you only want to use + bib2gls then change the option to record=only or record=nameref}% + }% +} +% \end{macrocode} +%\end{macro} +% +% %\begin{macro}{\@glsxtr@record@only@setup} %\changes{1.37}{2018-11-30}{new} %Initialisation code for record=only and record=nameref @@ -1016,10 +1051,13 @@ Dickimaw Books\\ %\begin{option}{record} %Now define the \pkgopt{record} package option. %\changes{1.08}{2016-12-13}{added \pkgopt{record} package option} +%\changes{1.46}{2021-09-20}{added hybrid} +% As from v1.46, \pkgopt[alsoindex]{record} is a deprecated synonym of +% \pkgopt[hybrid]{record} to avoid confusion. % \begin{macrocode} \define@choicekey{glossaries-extra.sty}{record} [\@glsxtr@record@setting\glsxtr@record@nr]% - {off,only,alsoindex,nameref}% + {off,only,alsoindex,nameref,hybrid}% [only]% {% \ifcase\glsxtr@record@nr\relax @@ -1046,9 +1084,14 @@ Dickimaw Books\\ % \end{macrocode} %Record and index. This option doesn't load %\sty{glossaries-extra-bib2gls} as the sorting is performed by -%\app{xindy} or \app{makeindex}. +%\app{xindy} or \app{makeindex}. Index in this sense refers to the +%indexing mechanism used with indexing applications such as +%makeindex and xindy, but this could be confused with recording +%locations so \qt{alsoindex} is now deprecated in favour of +%\qt{hybrid}, which is more obvious. % \begin{macrocode} \def\glsxtr@setup@record{% + \renewcommand*{\@glsxtr@record@setting@alsoindex}{alsoindex}% \renewcommand*{\@do@seeglossary}{\@glsxtr@dosee@alsoindex@glossary}% \let\@glsxtr@record\@@glsxtr@record \let\@@do@wrglossary\glsxtr@do@alsoindex@wrglossary @@ -1069,6 +1112,24 @@ Dickimaw Books\\ {\GlossariesExtraWarning{You have requested record=nameref but the document doesn't support hyperlinks}}% {}% + \or +% \end{macrocode} +% Hybrid record (use bib2gls to fetch definitions) and index (use +% makeindex/xindy to sort and collate). +% \begin{macrocode} + \def\glsxtr@setup@record{% + \renewcommand*{\@glsxtr@record@setting@alsoindex}{hybrid}% + \renewcommand*{\@do@seeglossary}{\@glsxtr@dosee@alsoindex@glossary}% + \let\@glsxtr@record\@@glsxtr@record + \let\@@do@wrglossary\glsxtr@do@alsoindex@wrglossary + \let\@gls@saveentrycounter\glsxtr@indexonly@saveentrycounter + \let\glsxtrundefaction\@glsxtr@warn@undefaction + \let\glsxtr@warnonexistsordo\@glsxtr@warn@onexistsordo + \glsxtr@addloclistfield + \let\@@glsxtr@recordcounter\@glsxtr@op@recordcounter + \def\printunsrtglossaryunit{\print@op@unsrtglossaryunit}% + \undef\glsxtrsetaliasnoindex + }% \fi } % \end{macrocode} @@ -2458,9 +2519,10 @@ Dickimaw Books\\ %label. %\changes{1.43}{2020-02-28}{changed \cs{def} to \cs{edef} to avoid %infinite recursion} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} {% - \edef\glslabel{#1}% + \protected@edef\glslabel{#1}% \glsdoifexistsordo{#1}% {% \ifglshasfield{\GlsXtrFmtField}{#1}% @@ -3446,10 +3508,13 @@ Dickimaw Books\\ {% \ifdefempty\@ignored@glossaries {% - \edef\@ignored@glossaries{#1}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@ignored@glossaries{#1}% }% {% - \eappto\@ignored@glossaries{,#1}% + \protected@eappto\@ignored@glossaries{,#1}% }% \csgdef{glolist@#1}{,}% \ifcsundef{gls@#1@entryfmt}% @@ -3462,7 +3527,10 @@ Dickimaw Books\\ \renewcommand*{\@gls@nohyperlist}{#1}% }% {% - \eappto\@gls@nohyperlist{,#1}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{eappto} to \cs{protected@eappto}} +% \begin{macrocode} + \protected@eappto\@gls@nohyperlist{,#1}% }% }% } @@ -3480,12 +3548,15 @@ Dickimaw Books\\ \glsxtrundefaction{Glossary type `#1' already exists}{}% }% {% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} \ifdefempty\@ignored@glossaries {% - \edef\@ignored@glossaries{#1}% + \protected@edef\@ignored@glossaries{#1}% }% {% - \eappto\@ignored@glossaries{,#1}% + \protected@eappto\@ignored@glossaries{,#1}% }% \csgdef{glolist@#1}{,}% \ifcsundef{gls@#1@entryfmt}% @@ -3546,12 +3617,15 @@ Dickimaw Books\\ \ifcsdef{glolist@#1} {}% {% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} \ifdefempty\@ignored@glossaries {% - \edef\@ignored@glossaries{#1}% + \protected@edef\@ignored@glossaries{#1}% }% {% - \eappto\@ignored@glossaries{,#1}% + \protected@eappto\@ignored@glossaries{,#1}% }% \csgdef{glolist@#1}{,}% \ifcsundef{gls@#1@entryfmt}% @@ -3564,7 +3638,10 @@ Dickimaw Books\\ \renewcommand*{\@gls@nohyperlist}{#1}% }% {% - \eappto\@gls@nohyperlist{,#1}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{eappto} to \cs{protected@eappto}} +% \begin{macrocode} + \protected@eappto\@gls@nohyperlist{,#1}% }% }% } @@ -3579,12 +3656,15 @@ Dickimaw Books\\ \ifcsdef{glolist@#1} {}% {% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} \ifdefempty\@ignored@glossaries {% - \edef\@ignored@glossaries{#1}% + \protected@edef\@ignored@glossaries{#1}% }% {% - \eappto\@ignored@glossaries{,#1}% + \protected@eappto\@ignored@glossaries{,#1}% }% \csgdef{glolist@#1}{,}% \ifcsundef{gls@#1@entryfmt}% @@ -3629,8 +3709,9 @@ Dickimaw Books\\ % Define \cs{glslabel} in case it's needed after this command (for % example in the post-link hook). %\changes{1.08}{2016-12-13}{now defines \cs{glslabel}} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} - \edef\glslabel{\glsdetoklabel{#1}}% + \protected@edef\glslabel{\glsdetoklabel{#1}}% \glsxtrundefaction{Glossary entry `\glslabel' has not been defined}{You need to define a glossary entry before you can reference it.}% @@ -3993,9 +4074,10 @@ Dickimaw Books\\ %Fully expands argument before passing to \cs{glsseelist}. %(The argument to \cs{glsseelist} must be a comma-separated list of %entry labels.) +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newrobustcmd{\glsxtrseelist}[1]{% - \edef\@glo@tmp{\noexpand\glsseelist{#1}}\@glo@tmp + \protected@edef\@glo@tmp{\noexpand\glsseelist{#1}}\@glo@tmp } % \end{macrocode} %\end{macro} @@ -4143,7 +4225,10 @@ Dickimaw Books\\ \ifdefvoid\@glo@seealso {}% {% - \edef\@do@glssee{\noexpand\glsxtrindexseealso +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@do@glssee{\noexpand\glsxtrindexseealso {\@glo@label}{\@glo@seealso}}% \@do@glssee }% @@ -4151,10 +4236,11 @@ Dickimaw Books\\ {% % \end{macrocode} %Add cross-reference if see key hasn't been used. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \ifdefvoid\@glo@see {% - \edef\@do@glssee{\noexpand\glssee{\@glo@label}{\@glo@alias}}% + \protected@edef\@do@glssee{\noexpand\glssee{\@glo@label}{\@glo@alias}}% \@do@glssee }% {}% @@ -4192,7 +4278,10 @@ Dickimaw Books\\ \ifcsvoid{glo@\@glo@label @seealso}% {}% {% - \edef\@do@glssee{\noexpand\glsxtrindexseealso +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@do@glssee{\noexpand\glsxtrindexseealso {\@glo@label}{\csuse{glo@\@glo@label @seealso}}}% \@do@glssee }% @@ -4203,7 +4292,10 @@ Dickimaw Books\\ % \begin{macrocode} \ifdefvoid\@glo@see {% - \edef\@do@glssee{\noexpand\glssee +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@do@glssee{\noexpand\glssee {\@glo@label}{\csuse{glo@\@glo@label @alias}}}% \@do@glssee }% @@ -4373,7 +4465,10 @@ Dickimaw Books\\ % \begin{macrocode} \renewcommand{\@do@seeglossary}[2]{% \@@glsxtrwrglossmark - \edef\@gls@label{\glsdetoklabel{##1}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@label{\glsdetoklabel{##1}}% \protected@write\@auxout{}{% \string\@gls@reference {\csname glo@\@gls@label @type\endcsname}% @@ -5363,12 +5458,15 @@ Dickimaw Books\\ % \begin{macrocode} \def\@gls@link[#1]#2#3{% \leavevmode - \edef\glslabel{\glsdetoklabel{#2}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\glslabel{\glsdetoklabel{#2}}% \def\@gls@link@opts{#1}% \let\@gls@link@label\glslabel \let\@glsnumberformat\@glsxtr@defaultnumberformat - \edef\@gls@counter{\csname glo@\glslabel @counter\endcsname}% - \edef\glstype{\csname glo@\glslabel @type\endcsname}% + \protected@edef\@gls@counter{\csname glo@\glslabel @counter\endcsname}% + \protected@edef\glstype{\csname glo@\glslabel @type\endcsname}% \let\org@ifKV@glslink@hyper\ifKV@glslink@hyper % \end{macrocode} %Save current value of \cs{glolinkprefix}: @@ -5447,10 +5545,11 @@ Dickimaw Books\\ \ifx\@glsxtr@local@textformat\relax % \end{macrocode} % Check \catattr{textformat} attribute (new to v1.21). +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \glshasattribute{\glslabel}{textformat}% {% - \edef\@glsxtr@attrval{\glsgetattribute{\glslabel}{textformat}}% + \protected@edef\@glsxtr@attrval{\glsgetattribute{\glslabel}{textformat}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@textformat}{\@glsxtr@attrval}% @@ -5548,7 +5647,10 @@ Dickimaw Books\\ \glsdoifexists{#2}% {% \let\@glsnumberformat\@glsxtr@defaultnumberformat - \edef\@gls@counter{\csname glo@\glsdetoklabel{#2}@counter\endcsname}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@counter{\csname glo@\glsdetoklabel{#2}@counter\endcsname}% \def\@glsxtr@thevalue{}% \def\@glsxtr@theHvalue{\@glsxtr@thevalue}% % \end{macrocode} @@ -6785,8 +6887,9 @@ Dickimaw Books\\ {\let\glsxtrifwasfirstuse\@firstoftwo}% % \end{macrocode} % Store the category label for convenience. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} - \edef\glscategorylabel{\glscategory{\glslabel}}% + \protected@edef\glscategorylabel{\glscategory{\glslabel}}% \ifglsused{\glslabel}% {% \glsifcategoryattribute{\glscategorylabel}{nohypernext}{true}% @@ -6870,9 +6973,11 @@ Dickimaw Books\\ %\changes{1.12}{2017-02-03}{new} %\changes{1.21}{2017-11-03}{changed to use \cs{glsxtrifhasfield} instead of %\cs{ifglshasfield}} +%\changes{1.46}{2021-09-18}{changed to use starred version of +%\cs{glsxtrifhasfield}} % \begin{macrocode} \newcommand*{\@glsxtrsetaliasnoindex}{% - \glsxtrifhasfield{alias}{\glslabel}% + \s@glsxtrifhasfield{alias}{\glslabel}% {% \let\glsxtrindexaliased\@glsxtrindexaliased \glsxtrsetaliasnoindex @@ -6891,7 +6996,10 @@ Dickimaw Books\\ \else \begingroup \let\@glsnumberformat\@glsxtr@defaultnumberformat - \edef\@gls@counter{\csname glo@\glsdetoklabel{\glslabel}@counter\endcsname}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@counter{\csname glo@\glsdetoklabel{\glslabel}@counter\endcsname}% \glsxtr@saveentrycounter \@@do@wrglossary{\glsxtralias{\glslabel}}% \endgroup @@ -7108,7 +7216,10 @@ Dickimaw Books\\ \ifdef\glsnavhyperlink { \renewcommand*{\glsnavhyperlink}[3][\@glo@type]{% - \edef\gls@grplabel{#2}\protected@edef\@gls@grptitle{#3}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\gls@grplabel{#2}\protected@edef\@gls@grptitle{#3}% % \end{macrocode} %Scope: % \begin{macrocode} @@ -7220,7 +7331,10 @@ Dickimaw Books\\ \glsdoifexists{#2}% {% \def\@glo@label{#2}% - {\edef\glslabel{#2}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + {\protected@edef\glslabel{#2}% \@glslink{\glolinkprefix\glslabel}{#1}}% }% } @@ -8560,9 +8674,10 @@ Dickimaw Books\\ % %\begin{macro}{\@@newglossaryentry@defunitcounters} %\changes{0.5.4}{2015-12-15}{new} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\@@newglossaryentry@defunitcounters}{% - \edef\@glo@countunit{\csuse{@glsxtr@categoryattr@@\@glo@category @unitcount}}% + \protected@edef\@glo@countunit{\csuse{@glsxtr@categoryattr@@\@glo@category @unitcount}}% \ifdefvoid\@glo@countunit {}% {% @@ -8628,11 +8743,12 @@ Dickimaw Books\\ % %\begin{macro}{\@gls@increment@currunitcount} %\changes{0.5.4}{2015-12-15}{new} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\@gls@increment@currunitcount}[1]{% \glshasattribute{#1}{unitcount}% {% - \edef\@glsxtr@csname{\@glsxtr@currentunitcount{#1}}% + \protected@edef\@glsxtr@csname{\@glsxtr@currentunitcount{#1}}% \ifcsundef{\@glsxtr@csname}% {% \csgdef{\@glsxtr@csname}{1}% @@ -8654,11 +8770,12 @@ Dickimaw Books\\ % %\begin{macro}{\@gls@local@increment@currunitcount} %\changes{0.5.4}{2015-12-15}{new} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\@gls@local@increment@currunitcount}[1]{% \glshasattribute{#1}{unitcount}% {% - \edef\@glsxtr@csname{\@glsxtr@currentunitcount{#1}}% + \protected@edef\@glsxtr@csname{\@glsxtr@currentunitcount{#1}}% \ifcsundef{\@glsxtr@csname}% {% \csdef{\@glsxtr@csname}{1}% @@ -8770,7 +8887,10 @@ Dickimaw Books\\ \renewcommand*{\glsxtrpostreset}[1]{% \glshasattribute{##1}{unitcount}% {% - \edef\@glsxtr@csname{\@glsxtr@currentunitcount{##1}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glsxtr@csname{\@glsxtr@currentunitcount{##1}}% \ifcsundef{\@glsxtr@csname}% {}% {\csgdef{\@glsxtr@csname}{0}}% @@ -8782,7 +8902,10 @@ Dickimaw Books\\ \@glsxtr@entryunitcount@org@localreset{##1}% \glshasattribute{##1}{unitcount}% {% - \edef\@glsxtr@csname{\@glsxtr@currentunitcount{##1}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glsxtr@csname{\@glsxtr@currentunitcount{##1}}% \ifcsundef{\@glsxtr@csname}% {}% {\csdef{\@glsxtr@csname}{0}}% @@ -9067,17 +9190,21 @@ Dickimaw Books\\ % %\begin{macro}{\@glsxtr@addabbreviationlist} %\changes{1.42}{2020-02-03}{new} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\@glsxtr@addabbreviationlist}[1]{% - \edef\@glo@type{#1}% + \protected@edef\@glo@type{#1}% \ifdefempty\@glsxtr@abbrlists {\let\@glsxtr@abbrlists\@glo@type}% {% \ifdefequal\@glsxtr@abbrlists\@glo@type {}% {% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{eappto} to \cs{protected@eappto}} +% \begin{macrocode} \expandafter\DTLifinlist\expandafter{\@glo@type}{\@glsxtr@abbrlists}{}% - {\eappto\@glsxtr@abbrlists{,\@glo@type}}% + {\protected@eappto\@glsxtr@abbrlists{,\@glo@type}}% }% }% } @@ -9237,6 +9364,27 @@ Dickimaw Books\\ \let\@glsxtr@org@makeglossaries\makeglossaries % \end{macrocode} % +%\begin{macro}{\@makeglossaries@warn@noprintglossary} +%\changes{1.46}{2021-09-20}{new} +%This command was only introduced to \sty{glossaries} v4.47 so it +%may not be defined. +% \begin{macrocode} +\providecommand\@makeglossaries@warn@noprintglossary{% + \ifdefstring{\@glo@types}{,}% + {% + \GlossariesWarningNoLine{No glossaries have been defined}% + }% + {% + \GlossariesWarningNoLine{No \string\printglossary\space + or \string\printglossaries\space + found. ^^J(Remove \string\makeglossaries\space if you + don't want any glossaries.) ^^JThis document will not + have a glossary}% + }% +}% +% \begin{macrocode} +%\end{macro} +% %\begin{macro}{\@domakeglossaries} %\changes{1.42}{2020-02-03}{provided definition for \cs{@domakeglossaries}} % \sty{glossaries} v4.45 introduced \cs{@domakeglossaries} to @@ -9266,24 +9414,33 @@ Dickimaw Books\\ not permitted\MessageBreak with record=\@glsxtr@record@setting\space package option}% {You may only use \string\makeglossaries\space with - record=off or record=alsoindex options}% + record=off or record=hybrid options}% }% {% \ifblank{#1}% - {\@glsxtr@org@makeglossaries}% + {% + \@glsxtr@org@makeglossaries +% \end{macrocode} +%\changes{1.46}{2021-09-20}{adjust warning on missing glossary for \qt{alsoindex}} +% \begin{macrocode} + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@alsoindex + \let\warn@noprintglossary\@glsxtr@warn@hybrid@noprintgloss + \fi + }% {% \ifx\@glsxtr@record@setting\@glsxtr@record@setting@alsoindex \PackageError{glossaries-extra}{\string\makeglossaries[#1]\space - not permitted\MessageBreak with record=alsoindex package option}% + not permitted\MessageBreak with record=\@glsxtr@record@setting\space package option}% {You may only use the hybrid \string\makeglossaries[...]\space with record=off option}% \else % \end{macrocode} %\cs{@gls@@automake@immediate} was introduced to \sty{glossaries} %v4.42 so it may not be defined. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \ifdef\@gls@@automake@immediate{\@gls@@automake@immediate}{}% - \edef\@glsxtr@reg@glosslist{#1}% + \protected@edef\@glsxtr@reg@glosslist{#1}% \ifundef{\glswrite}{\newwrite\glswrite}{}% \protected@write\@auxout{}{\string\providecommand \string\@glsorder[1]{}} @@ -9334,8 +9491,11 @@ Dickimaw Books\\ \renewcommand*{\@do@seeglossary}[2]{% \glsdoifexists{##1}% {% - \edef\@gls@label{\glsdetoklabel{##1}}% - \edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@label{\glsdetoklabel{##1}}% + \protected@edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% {\@glsxtr@org@doseeglossary{##1}{##2}}% {% @@ -9352,7 +9512,10 @@ Dickimaw Books\\ % \begin{macrocode} \let\@glsxtr@@do@@wrglossary\@@do@@wrglossary \def\@@do@@wrglossary{% - \edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% {\@glsxtr@@do@@wrglossary}% {\gls@noidxglossary}% @@ -9361,17 +9524,15 @@ Dickimaw Books\\ % Suppress warning about no \cs{makeglossaries} % \begin{macrocode} \let\warn@nomakeglossaries\relax - \def\warn@noprintglossary{% - \GlossariesWarningNoLine{No \string\printglossary\space - or \string\printglossaries\space - found.^^J(Remove \string\makeglossaries\space if you don't want - any glossaries.)^^JThis document will not have a glossary}% - }% + \let\warn@noprintglossary\@makeglossaries@warn@noprintglossary % \end{macrocode} % Only warn for glossaries not listed. % \begin{macrocode} \renewcommand{\@gls@noref@warn}[1]{% - \edef\@gls@type{##1}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@type{##1}% \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% {% \GlossariesExtraWarning{Can't use @@ -9548,6 +9709,7 @@ Dickimaw Books\\ % \end{macrocode} %\changes{1.22}{2017-11-08}{changed explicit \cs{let} for \cs{nopostdesc} %to \cs{glsxtractivatenopost}} +%\changes{1.46}{2021-09-20}{changed \cs{xdef} to \cs{protected@xdef}} % \begin{macrocode} \glsxtractivatenopost \gls@dotoctitle @@ -9555,11 +9717,11 @@ Dickimaw Books\\ \let\gls@org@glossaryentryfield\glossentry \let\gls@org@glossarysubentryfield\subglossentry \renewcommand{\glossentry}[1]{% - \xdef\glscurrententrylabel{\glsdetoklabel{##1}}% + \protected@xdef\glscurrententrylabel{\glsdetoklabel{##1}}% \gls@org@glossaryentryfield{##1}% }% \renewcommand{\subglossentry}[2]{% - \xdef\glscurrententrylabel{\glsdetoklabel{##2}}% + \protected@xdef\glscurrententrylabel{\glsdetoklabel{##2}}% \gls@org@glossarysubentryfield{##1}{##2}% }% \@gls@preglossaryhook @@ -9812,7 +9974,10 @@ Dickimaw Books\\ %\changes{1.09}{2016-12-16}{new} % \begin{macrocode} \newcommand\@glsxtr@mixed@assign@sortkey[1]{% - \edef\@glo@type{\@glo@type}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glo@type{\@glo@type}% \expandafter\DTLifinlist\expandafter{\@glo@type}{\@glsxtr@reg@glosslist}% {% \@glo@no@assign@sortkey{#1}% @@ -10133,9 +10298,10 @@ Dickimaw Books\\ %\begin{macro}{\glsxtrdisplaystartloc} %\changes{1.12}{2017-02-03}{new} %Start of a location range. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\glsxtrdisplaystartloc}[2]{% - \edef\glsxtrlocrangefmt{#1}% + \protected@edef\glsxtrlocrangefmt{#1}% \ifx\glsxtrlocrangefmt\empty \def\glsxtrlocrangefmt{glsnumberformat}% \fi @@ -10149,9 +10315,10 @@ Dickimaw Books\\ %\changes{1.12}{2017-02-03}{new} %\changes{1.14}{2017-04-18}{added check for empty format} %End of a location range. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\glsxtrdisplayendloc}[2]{% - \edef\@glsxtr@tmp{#1}% + \protected@edef\@glsxtr@tmp{#1}% \ifdefempty{\@glsxtr@tmp}{\def\@glsxtr@tmp{glsnumberformat}}{}% \ifx\glsxtrlocrangefmt\@glsxtr@tmp \else @@ -10936,8 +11103,11 @@ Dickimaw Books\\ \glsdoifexists{#1}% {% \begingroup - \edef\glscurrententrylabel{\glsdetoklabel{#1}}% - \edef\currentglossary{\GlsXtrStandaloneGlossaryType}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\glscurrententrylabel{\glsdetoklabel{#1}}% + \protected@edef\currentglossary{\GlsXtrStandaloneGlossaryType}% \ifglshasparent{#1}% {\GlsXtrStandaloneSubEntryItem{#1}}% {\glsentryitem{#1}}% @@ -11026,8 +11196,11 @@ Dickimaw Books\\ \glsdoifexists{#1}% {% \begingroup - \edef\glscurrententrylabel{\glsdetoklabel{#1}}% - \edef\currentglossary{\GlsXtrStandaloneGlossaryType}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\glscurrententrylabel{\glsdetoklabel{#1}}% + \protected@edef\currentglossary{\GlsXtrStandaloneGlossaryType}% \ifglshasparent{#1}% {\GlsXtrStandaloneSubEntryItem{#1}}% {\glsentryitem{#1}}% @@ -11168,7 +11341,10 @@ Dickimaw Books\\ {\@glsxtr@groupheading}% }% \fi - \eappto\@glsxtr@doglossary{% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{eappto} to \cs{protected@eappto}} +% \begin{macrocode} + \protected@eappto\@glsxtr@doglossary{% \noexpand\@printunsrt@glossary@handler{\glscurrententrylabel}}% }% }% @@ -11253,12 +11429,15 @@ Dickimaw Books\\ \@glossarystyle \let\gls@org@glossaryentryfield\glossentry \let\gls@org@glossarysubentryfield\subglossentry +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{xdef} to \cs{protected@xdef}} +% \begin{macrocode} \renewcommand{\glossentry}[1]{% - \xdef\glscurrententrylabel{\glsdetoklabel{##1}}% + \protected@xdef\glscurrententrylabel{\glsdetoklabel{##1}}% \gls@org@glossaryentryfield{##1}% }% \renewcommand{\subglossentry}[2]{% - \xdef\glscurrententrylabel{\glsdetoklabel{##2}}% + \protected@xdef\glscurrententrylabel{\glsdetoklabel{##2}}% \gls@org@glossarysubentryfield{##1}{##2}% }% \@gls@preglossaryhook @@ -11330,7 +11509,10 @@ Dickimaw Books\\ {\@glsxtr@groupheading}% }% \fi - \eappto\@glsxtr@doglossary{% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{eappto} to \cs{protected@eappto}} +% \begin{macrocode} + \protected@eappto\@glsxtr@doglossary{% \noexpand\@printunsrt@glossary@handler{\glscurrententrylabel}}% }% }% @@ -11381,9 +11563,10 @@ can only be used within \string\printunsrtglossaryentryprocesshook}{}% % %\begin{macro}{\@printunsrt@glossary@handler} %\changes{1.16}{2017-06-15}{new} +%\changes{1.46}{2021-09-20}{changed \cs{xdef} to \cs{protected@xdef}} % \begin{macrocode} \newcommand{\@printunsrt@glossary@handler}[1]{% - \xdef\glscurrententrylabel{#1}% + \protected@xdef\glscurrententrylabel{#1}% \printunsrtglossaryhandler\glscurrententrylabel } % \end{macrocode} @@ -11531,7 +11714,7 @@ can only be used within \string\printunsrtglossaryentryprocesshook}{}% {% \ifdefempty{\@gls@currentlettergroup}{}% {\def\@glsxtr@groupheading{\glsgroupskip}}% - \eappto\@glsxtr@groupheading{% + \protected@eappto\@glsxtr@groupheading{% \noexpand\glsgroupheading{\expandonce\@glo@thislettergrp}% }% }% @@ -11904,15 +12087,16 @@ defined}{}% %\begin{macro}{\@glsxtr@rglstrigger@record} %\changes{1.21}{2017-11-03}{new} %Still need a record to ensure that \app{bib2gls} selects the entry. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newcommand*{\@glsxtr@rglstrigger@record}[3]{% - \edef\glslabel{\glsdetoklabel{#2}}% + \protected@edef\glslabel{\glsdetoklabel{#2}}% \let\@gls@link@label\glslabel \def\@glsxtr@thevalue{}% \def\@glsxtr@theHvalue{\@glsxtr@thevalue}% \def\@glsnumberformat{glstriggerrecordformat}% - \edef\@gls@counter{\csname glo@\glslabel @counter\endcsname}% - \edef\glstype{\csname glo@\glslabel @type\endcsname}% + \protected@edef\@gls@counter{\csname glo@\glslabel @counter\endcsname}% + \protected@edef\glstype{\csname glo@\glslabel @type\endcsname}% \def\@glsxtr@thevalue{}% \def\@glsxtr@theHvalue{\@glsxtr@thevalue}% \glsxtrinitwrgloss @@ -12233,11 +12417,12 @@ defined}{}% {% % \end{macrocode} %Need to ensure values are fully expanded. +%\changes{1.46}{2021-09-20}{changed \cs{x} to \cs{@glo@tmp}} % \begin{macrocode} \begingroup - \edef\x{\endgroup\noexpand\@addtoreset{glsxtr@linkcount@\glslabel}% + \edef\@glo@tmp{\endgroup\noexpand\@addtoreset{glsxtr@linkcount@\glslabel}% {\glsgetattribute{\glslabel}{linkcountmaster}}}% - \x + \@glo@tmp }% {}% }% @@ -13091,11 +13276,14 @@ defined}{}% {}% \ifdefempty\@gls@longaccess {% - \edef\@gls@shortaccess{\glsdefaultshortaccess +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@shortaccess{\glsdefaultshortaccess {\expandonce\@gls@actuallong}{\expandonce\@gls@actualshort}}% }% {% - \edef\@gls@shortaccess{\glsdefaultshortaccess + \protected@edef\@gls@shortaccess{\glsdefaultshortaccess {\expandonce\@gls@longaccess}{\expandonce\@gls@actualshort}}% }% \eappto\ExtraCustomAbbreviationFields{shortaccess={\@gls@shortaccess},}% @@ -13120,11 +13308,14 @@ defined}{}% }% \ifdefempty\@gls@longaccesspl {% - \edef\@gls@shortaccesspl{\glsdefaultshortaccess +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@gls@shortaccesspl{\glsdefaultshortaccess {\expandonce\@gls@actuallongpl}{\expandonce\@gls@actualshortpl}}% }% {% - \edef\@gls@shortaccesspl{\glsdefaultshortaccess + \protected@edef\@gls@shortaccesspl{\glsdefaultshortaccess {\expandonce\@gls@longaccesspl}{\expandonce\@gls@actualshort}}% }% \eappto\ExtraCustomAbbreviationFields{shortpluralaccess={\@gls@shortaccesspl},}% @@ -14095,10 +14286,11 @@ defined}{}% % As from version 1.04, allow the \catattr{glossdescfont} attribute % to determine the font applied. %\changes{1.04}{2016-05-02}{added glossdescfont attribute check} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \glshasattribute{#1}{glossdescfont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glossdescfont}}% + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glossdescfont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glossdescfont}{\@glsxtr@attrval}% @@ -14139,7 +14331,10 @@ defined}{}% \glssetabbrvfmt{\glscategory{#1}}% \glshasattribute{#1}{glossdescfont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glossdescfont}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glossdescfont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glossdescfont}{\@glsxtr@attrval}% @@ -14187,10 +14382,11 @@ defined}{}% % As from version 1.04, allow the \catattr{glossnamefont} attribute % to determine the font applied. %\changes{1.04}{2016-05-02}{added glossnamefont attribute check} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \glshasattribute{#1}{glossnamefont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glossnamefont}{\@glsxtr@attrval}% @@ -14258,7 +14454,10 @@ defined}{}% \glssetabbrvfmt{\glscategory{#1}}% \glshasattribute{#1}{glossnamefont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glossnamefont}{\@glsxtr@attrval}% @@ -14329,7 +14528,10 @@ defined}{}% % \begin{macrocode} \glshasattribute{#1}{glossnamefont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glossnamefont}{\@glsxtr@attrval}% @@ -14361,7 +14563,10 @@ defined}{}% \glssetabbrvfmt{\glscategory{#1}}% \glshasattribute{#1}{glossnamefont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glossnamefont}{\@glsxtr@attrval}% @@ -14441,13 +14646,14 @@ defined}{}% %This is essentially the reverse of \cs{@gls@fetchfield}, since the %field supplied to \cs{glossentryname} has to be the internal label, %but the \cs{gls\meta{field}accessdisplay} commands use the key name. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} - \edef\@gls@thisval{#1}% + \protected@edef\@gls@thisval{#1}% \@for\@gls@map:=\@gls@keymap\do{% - \edef\@this@key{\expandafter\@secondoftwo\@gls@map}% + \protected@edef\@this@key{\expandafter\@secondoftwo\@gls@map}% \ifdefequal{\@this@key}{\@gls@thisval}% {% - \edef\@gls@thisval{\expandafter\@firstoftwo\@gls@map}% + \protected@edef\@gls@thisval{\expandafter\@firstoftwo\@gls@map}% \@endfortrue }% {}% @@ -14480,11 +14686,12 @@ defined}{}% \glsxtr@setaccessdisplay{#2}% % \end{macrocode} %Set the abbreviation format: +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \glssetabbrvfmt{\glscategory{#1}}% \glshasattribute{#1}{glossnamefont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glossnamefont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glossnamefont}{\@glsxtr@attrval}% @@ -14604,9 +14811,12 @@ defined}{}% \let\@glsxtr@attrval\@glsnumberformat \fi \fi +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{eappto} to \cs{protected@eappto}} +% \begin{macrocode} \ifdefstring{\@glsxtr@attrval}{true}% {}% - {\eappto\@glo@name{\@glsxtr@autoindex@encap\@glsxtr@attrval}}% + {\protected@eappto\@glo@name{\@glsxtr@autoindex@encap\@glsxtr@attrval}}% \expandafter\glsxtrautoindex\expandafter{\@glo@name}% }% {}% @@ -14918,6 +15128,7 @@ defined}{}% %\changes{1.4.2}{??}{new} %There are no case-changing attributes as it's less usual for %symbols. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \newrobustcmd*{\@glossentrysymbol}[1]{% \glsdoifexistsorwarn{#1}% @@ -14926,7 +15137,7 @@ defined}{}% \glssetabbrvfmt{\glscategory{#1}}% \glshasattribute{#1}{glosssymbolfont}% {% - \edef\@glsxtr@attrval{\glsgetattribute{#1}{glosssymbolfont}}% + \protected@edef\@glsxtr@attrval{\glsgetattribute{#1}{glosssymbolfont}}% \ifcsdef{\@glsxtr@attrval}% {% \letcs{\@glsxtr@glosssymbolfont}{\@glsxtr@attrval}% @@ -15509,9 +15720,10 @@ defined}{}% % % If there's a style for the given category, it needs to be applied % by \cs{newabbreviation}. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \define@key{glsxtrabbrv}{category}{% - \edef\glscategorylabel{#1}% + \protected@edef\glscategorylabel{#1}% } % \end{macrocode} % Save the short plural form. This may be needed before the entry is @@ -17028,9 +17240,10 @@ defined}{}% \@glsxtr@dostylewarn % \end{macrocode} % Set up the style for the given category. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} \csdef{@glsabbrv@current@#1}{#2}% - \edef\glscategorylabel{#1}% + \protected@edef\glscategorylabel{#1}% \glsxtr@applyabbrvstyle{#2}% }% }% @@ -25645,7 +25858,7 @@ defined}{}% %automatically loaded by the record option. % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra-bib2gls}[2020/04/01 v1.45 (NLCT)] +\ProvidesPackage{glossaries-extra-bib2gls}[2021/09/20 v1.46 (NLCT)] % \end{macrocode} %Provide convenient shortcut commands for predefined glossary types. %\begin{macro}{\printunsrtacronyms} @@ -26045,17 +26258,20 @@ defined}{}% \def\@glsxtr@bibgls@removespaces#1 #2\@nil{% \toks@=\expandafter{\the\toks@#1}% \ifx\\#2\\% - \edef\x{\the\toks@}% - \ifx\x\empty +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{x} to \cs{@glo@tmp}} +% \begin{macrocode} + \edef\@glo@tmp{\the\toks@}% + \ifx\@glo@tmp\empty \else - \protected@edef\x{\glsentrycounter\@glo@counterprefix\the\toks@}% + \protected@edef\@glo@tmp{\glsentrycounter\@glo@counterprefix\the\toks@}% \ifdefvoid\glsxtrsupplocationurl {% - \expandafter\glsxtrfmtinternalnameref\expandafter{\x}% + \expandafter\glsxtrfmtinternalnameref\expandafter{\@glo@tmp}% {\@glsnumberformat}{\glsxtr@locationhypertext}% }% {% - \expandafter\glsxtrfmtexternalnameref\expandafter{\x}% + \expandafter\glsxtrfmtexternalnameref\expandafter{\@glo@tmp}% {\@glsnumberformat}{\glsxtr@locationhypertext}{\glsxtrsupplocationurl}% }% \fi @@ -26363,14 +26579,18 @@ defined}{}% % \end{macrocode} %Initialise to the unprefixed label in the event that the list is %empty. +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} % \begin{macrocode} - \edef\@gls@thislabel{#1}% + \protected@edef\@gls@thislabel{#1}% \@for\@glsxtr@prefix:=\@glsxtr@labelprefixes\do {% - \edef\@gls@thislabel{\@glsxtr@prefix#1}% + \protected@edef\@gls@thislabel{\@glsxtr@prefix#1}% \ifglsentryexists{\@gls@thislabel}{\@endfortrue}{}% }% - \edef\x{\endgroup\noexpand\def\noexpand\@gls@thislabel{\@gls@thislabel}}\x +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{x} to \cs{@glo@tmp}} +% \begin{macrocode} + \edef\@glo@tmp{\endgroup\noexpand\def\noexpand\@gls@thislabel{\@gls@thislabel}}\@glo@tmp } % \end{macrocode} %\end{macro} @@ -28730,7 +28950,7 @@ defined}{}% % First identify package: % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra-stylemods}[2020/04/01 v1.45 (NLCT)] +\ProvidesPackage{glossaries-extra-stylemods}[2021/09/20 v1.46 (NLCT)] % \end{macrocode} % Provide package options to automatically load required predefined % styles. The simplest method is to just test for the existence of @@ -29622,6 +29842,22 @@ defined}{}% \ifdef{\@glsstyle@tree} {% % \end{macrocode} +% The original \glostyle{alttree} style doesn't use \cs{glstreepredesc} +% but since v1.42 the modified style (below) has switched to using +% \cs{glstreeDescLoc} so provide an alternative that can be used +% with \glostyle{alttree}. +%\begin{macro}{\glsxtrtreepredesc} +%\changes{1.46}{2021-09-20}{new} +% \begin{macrocode} +\newcommand{\glsxtrtreepredesc}{\glstreepredesc} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\glsxtrtreechildpredesc} +%\changes{1.46}{2021-09-20}{new} +% \begin{macrocode} +\newcommand{\glsxtrtreechildpredesc}{\glstreechildpredesc} +% \end{macrocode} +%\end{macro} %Provide a command for use with the \glostyle{tree} styles that displays %the pre-description separator, the %description and post-description hook. @@ -29629,7 +29865,7 @@ defined}{}% %\changes{1.31}{2018-05-09}{new} % \begin{macrocode} \newcommand{\glstreedesc}[1]{% - \glstreepredesc\glossentrydesc{#1}\glspostdescription + \glsxtrtreepredesc\glossentrydesc{#1}\glspostdescription } % \end{macrocode} %\end{macro} @@ -29674,7 +29910,7 @@ defined}{}% %\changes{1.31}{2018-05-09}{new} % \begin{macrocode} \newcommand{\glstreechilddesc}[1]{% - \glstreechildpredesc\glossentrydesc{#1}\glspostdescription + \glsxtrtreechildpredesc\glossentrydesc{#1}\glspostdescription }% % \end{macrocode} %\end{macro} @@ -29909,6 +30145,18 @@ defined}{}% % \end{macrocode} % Only redefine this style if it's already been defined. % +%\begin{macro}{\glsalttreepredesc} +%\changes{1.46}{2021-09-20}{new} +% \begin{macrocode} +\newcommand{\glsalttreepredesc}{} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\glsalttreechildpredesc} +%\changes{1.46}{2021-09-20}{new} +% \begin{macrocode} +\newcommand{\glsalttreechildpredesc}{\glsalttreepredesc} +% \end{macrocode} +%\end{macro} %\begin{macro}{\glsxtralttreeSymbolDescLocation} %\changes{1.05}{2016-06-10}{new} %\begin{definition} @@ -29920,6 +30168,12 @@ defined}{}% \newcommand{\glsxtralttreeSymbolDescLocation}[2]{% {% \let\par\glsxtrAltTreePar +% \end{macrocode} +%\changes{1.46}{2021-09-20}{switch to using \cs{glsalttreepredesc} and +%\cs{glsalttreechildpredesc}} +% \begin{macrocode} + \let\glsxtrtreepredesc\glsalttreepredesc + \let\glsxtrtreechildpredesc\glsalttreechildpredesc \ifglshassymbol{#1}{(\glossentrysymbol{#1})\space}{}% % \end{macrocode} %\changes{1.41}{2019-04-09}{added check for description} @@ -30225,10 +30479,13 @@ defined}{}% {% \ifglshasparent{\@glo@label}% {% - \edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@label}@parent}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@label}@parent}}% \ifglshasparent{\@glo@parent}% {% - \edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@parent}@parent}}% + \protected@edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@parent}@parent}}% \ifglshasparent{\@glo@parent}% {}% {% @@ -30280,10 +30537,13 @@ defined}{}% {% \ifglshasparent{\@glo@label}% {% - \edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@label}@parent}}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{changed \cs{edef} to \cs{protected@edef}} +% \begin{macrocode} + \protected@edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@label}@parent}}% \ifglshasparent{\@glo@parent}% {% - \edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@parent}@parent}}% + \protected@edef\@glo@parent{\csuse{glo@\glsdetoklabel{\@glo@parent}@parent}}% \ifglshasparent{\@glo@parent}% {}% {% @@ -31053,7 +31313,7 @@ defined}{}% %\section{Package Initialisation and Options} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossary-bookindex}[2020/04/01 v1.45 (NLCT)] +\ProvidesPackage{glossary-bookindex}[2021/09/20 v1.46 (NLCT)] % \end{macrocode} %Load required packages. % \begin{macrocode} @@ -31549,7 +31809,7 @@ defined}{}% %Provides additional long styles. % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossary-longextra}[2020/04/01 v1.45 (NLCT)] +\ProvidesPackage{glossary-longextra}[2021/09/20 v1.46 (NLCT)] % \end{macrocode} %Load required packages. % \begin{macrocode} @@ -32978,7 +33238,7 @@ defined}{}% %topic. % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossary-topic}[2020/04/01 v1.45 (NLCT)] +\ProvidesPackage{glossary-topic}[2021/09/20 v1.46 (NLCT)] % \end{macrocode} %Load required package. % \begin{macrocode} @@ -33021,8 +33281,18 @@ defined}{}% \renewcommand{\subglossentry}[3]{% \ifnum\glstopic@prevlevel=0\relax\glstopic@prechildren\fi \def\glstopic@prevlevel{##1}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{grouping added to scope \cs{everypar} (bug 182)} +%Grouping is added to scope the effect of \cs{everypar}. +% \begin{macrocode} + \begingroup \glstopicAssignSubIndent{##1}% \glstopicSubItem{##1}{##2}{##3}% +% \end{macrocode} +%\changes{1.46}{2021-09-20}{added \cs{par} (bug 176)} +% \begin{macrocode} + \par + \endgroup }% \renewcommand*{\glsgroupskip}{}% } @@ -33133,11 +33403,32 @@ defined}{}% \par \parindent\dimexpr#1\glstopicSubIndent-\glstopicSubIndent\relax \glstopicAssignWidest{#1}% - \hangindent\dimexpr\parindent+\glstopicwidest\relax + \glstopicsubitemhangindent=\dimexpr\parindent+\glstopicwidest\relax + \hangindent\glstopicsubitemhangindent\relax +% \end{macrocode} +%\changes{1.46}{2021-09-20}{bug 182 maintain hangindent for multiple paragraphs} +% \begin{macrocode} + \everypar{\hangindent\glstopicsubitemhangindent\relax + \parindent\dimexpr\glstopicSubItemParIndent+\glstopicsubitemhangindent\relax}% } % \end{macrocode} %\end{macro} % +%\begin{macro}{\glstopicsubitemhangindent} +%\changes{1.46}{2021-09-20}{new} +% \begin{macrocode} +\newlength\glstopicsubitemhangindent +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\glstopicSubItemParIndent} +%\changes{1.46}{2021-09-20}{new} +% \begin{macrocode} +\newlength\glstopicSubItemParIndent +\glstopicSubItemParIndent\parindent +% \end{macrocode} +%\end{macro} +% %\begin{macro}{\glstopicwidest} %\changes{1.40}{2019-03-22}{new} % \begin{macrocode} @@ -34127,6 +34418,182 @@ risus ut urna} %\fi %\iffalse % \begin{macrocode} +%<*example-glossaries-childmultipar.bib> +% \end{macrocode} +%\fi +%\iffalse +% \begin{macrocode} +% Encoding: UTF-8 +@entry{hiersedmattis, + user1 = {example-image}, + name = {sed mattis}, + description = {Erat sit amet dolor sit amet, consectetuer adipiscing elit. Ut purus +elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur +dictum gravida mauris. Ut pellentesque augue sed urna. Vestibulum +diam eros, fringilla et, consectetuer eu, nonummy id, sapien. Nullam +at lectus. In sagittis ultrices mauris. Curabitur malesuada erat sit +amet massa. Fusce blandit. Aliquam erat volutpat.} +} + +@entry{hierloremi-ii, + parent = {hiersedmattis}, + name = {lorem 1--2}, + description = {Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, +vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur +dictum gravida mauris. Nam arcu libero, nonummy eget, consectetuer +id, vulputate a, magna. Donec vehicula augue eu neque. Pellentesque +habitant morbi tristique senectus et netus et malesuada fames ac +turpis egestas. Mauris ut leo. Cras viverra metus rhoncus sem. Nulla +et lectus vestibulum urna fringilla ultrices. Phasellus eu tellus +sit amet tortor gravida placerat. Integer sapien est, iaculis in, +pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices +bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar +at, mollis ac, nulla. Curabitur auctor semper nulla. Donec varius +orci eget risus. Duis nibh mi, congue eu, accumsan eleifend, +sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum. + +Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, +wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at, +lobortis vitae, ultricies et, tellus. Donec aliquet, tortor sed +accumsan bibendum, erat ligula aliquet magna, vitae ornare odio +metus a mi. Morbi ac orci et nisl hendrerit mollis. Suspendisse ut +massa. Cras nec ante. Pellentesque a nulla. Cum sociis natoque +penatibus et magnis dis parturient montes, nascetur ridiculus mus. +Aliquam tincidunt urna. Nulla ullamcorper vestibulum turpis. +Pellentesque cursus luctus mauris.} +} + +@entry{hierloremiii-iv, + user1 = {example-image}, + parent = {hiersedmattis}, + name = {lorem 3--4}, + description = {Nulla malesuada porttitor diam. Donec felis erat, congue non, +volutpat at, tincidunt tristique, libero. Vivamus viverra fermentum +felis. Donec nonummy pellentesque ante. Phasellus adipiscing semper +elit. Proin fermentum massa ac quam. Sed diam turpis, molestie +vitae, placerat a, molestie nec, leo. Maecenas lacinia. Nam ipsum +ligula, eleifend at, accumsan nec, suscipit a, ipsum. Morbi blandit +ligula feugiat magna. Nunc eleifend consequat lorem. Sed lacinia +nulla vitae enim. Pellentesque tincidunt purus vel magna. Integer +non enim. Praesent euismod nunc eu purus. Donec bibendum quam in +tellus. Nullam cursus pulvinar lectus. Donec et mi. Nam vulputate +metus eu enim. Vestibulum pellentesque felis eu massa. + +Quisque ullamcorper placerat ipsum. Cras nibh. Morbi vel justo +vitae lacus tincidunt ultrices. Lorem ipsum dolor sit amet, +consectetuer adipiscing elit. In hac habitasse platea dictumst. +Integer tempus convallis augue. Etiam facilisis. Nunc elementum +fermentum wisi. Aenean placerat. Ut imperdiet, enim sed gravida +sollicitudin, felis odio placerat quam, ac pulvinar elit purus eget +enim. Nunc vitae tortor. Proin tempus nibh sit amet nisl. Vivamus +quis tortor vitae risus porta vehicula.} +} + +@entry{hierloremv-vi, + parent = {hiersedmattis}, + name = {lorem 5--6}, + description = {Fusce mauris. Vestibulum luctus nibh at lectus. Sed bibendum, nulla +a faucibus semper, leo velit ultricies tellus, ac venenatis arcu +wisi vel nisl. Vestibulum diam. Aliquam pellentesque, augue quis +sagittis posuere, turpis lacus congue quam, in hendrerit risus eros +eget felis. Maecenas eget erat in sapien mattis porttitor. +Vestibulum porttitor. Nulla facilisi. Sed a turpis eu lacus commodo +facilisis. Morbi fringilla, wisi in dignissim interdum, justo lectus +sagittis dui, et vehicula libero dui cursus dui. Mauris tempor +ligula sed lacus. Duis cursus enim ut augue. Cras ac magna. Cras +nulla. Nulla egestas. Curabitur a leo. Quisque egestas wisi eget +nunc. Nam feugiat lacus vel est. Curabitur consectetuer.% + + +Suspendisse vel felis. Ut lorem lorem, interdum eu, tincidunt sit +amet, laoreet vitae, arcu. Aenean faucibus pede eu ante. Praesent +enim elit, rutrum at, molestie non, nonummy vel, nisl. Ut lectus +eros, malesuada sit amet, fermentum eu, sodales cursus, magna. Donec +eu purus. Quisque vehicula, urna sed ultricies auctor, pede lorem +egestas dui, et convallis elit erat sed nulla. Donec luctus. +Curabitur et nunc. Aliquam dolor odio, commodo pretium, ultricies +non, pharetra in, velit. Integer arcu est, nonummy in, fermentum +faucibus, egestas vel, odio.} +} + +@entry{hiergravida, + name = {gravida}, + description = {Malesuada libero, nonummy eget, consectetuer id, vulputate a, magna. Donec +vehicula augue eu neque. Pellentesque habitant morbi tristique +senectus et netus et malesuada fames ac turpis egestas. Mauris ut +leo. + +Morbi ultrices rutrum lorem. Nam elementum ullamcorper +leo. Morbi dui. Aliquam sagittis. Nunc placerat. Pellentesque +tristique sodales est. Maecenas imperdiet lacinia velit. Cras non +urna. Morbi eros pede, suscipit ac, varius vel, egestas non, eros.} +} + +@entry{hierloremvii-viii, + user1 = {example-image-b}, + parent = {hiergravida}, + name = {lorem 7--8}, + description = {Sed commodo posuere pede. Mauris ut est. Ut quis purus. Sed ac odio. +Sed vehicula hendrerit sem. Duis non odio. Morbi ut dui. Sed +accumsan risus eget odio. In hac habitasse platea dictumst. +Pellentesque non elit. Fusce sed justo eu urna porta tincidunt. +Mauris felis odio, sollicitudin sed, volutpat a, ornare ac, erat. +Morbi quis dolor. Donec pellentesque, erat ac sagittis semper, nunc +dui lobortis purus, quis congue purus metus ultricies tellus. Proin +et quam. Class aptent taciti sociosqu ad litora torquent per conubia +nostra, per inceptos hymenaeos. Praesent sapien turpis, fermentum +vel, eleifend faucibus, vehicula eu, lacus. + +Pellentesque habitant morbi tristique senectus et netus et malesuada +fames ac turpis egestas. Donec odio elit, dictum in, hendrerit sit +amet, egestas sed, leo. Praesent feugiat sapien aliquet odio. +Integer vitae justo. Aliquam vestibulum fringilla lorem. Sed neque +lectus, consectetuer at, consectetuer sed, eleifend ac, lectus. +Nulla facilisi. Pellentesque eget lectus. Proin eu metus. Sed +porttitor. In hac habitasse platea dictumst. Suspendisse eu lectus. +Ut mi mi, lacinia sit amet, placerat et, mollis vitae, dui. Sed ante +tellus, tristique ut, iaculis eu, malesuada ac, dui. Mauris nibh +leo, facilisis non, adipiscing quis, ultrices a, dui.} +} + +@entry{hierloremix-x, + user1 = {example-image-c}, + parent = {hiergravida}, + name = {lorem 9--10}, + description = {Morbi luctus, wisi viverra faucibus pretium, nibh est placerat odio, +nec commodo wisi enim eget quam. Quisque libero justo, consectetuer +a, feugiat vitae, porttitor eu, libero. Suspendisse sed mauris +vitae elit sollicitudin malesuada. Maecenas ultricies eros sit amet +ante. Ut venenatis velit. Maecenas sed mi eget dui varius euismod. +Phasellus aliquet volutpat odio. Vestibulum ante ipsum primis in +faucibus orci luctus et ultrices posuere cubilia Curae; Pellentesque +sit amet pede ac sem eleifend consectetuer. Nullam elementum, urna +vel imperdiet sodales, elit ipsum pharetra ligula, ac pretium ante +justo a nulla. Curabitur tristique arcu eu metus. Vestibulum lectus. +Proin mauris. Proin eu nunc eu urna hendrerit faucibus. Aliquam +auctor, pede consequat laoreet varius, eros tellus scelerisque quam, +pellentesque hendrerit ipsum dolor sed augue. Nulla nec lacus. + +Suspendisse vitae elit. Aliquam arcu neque, ornare in, ullamcorper +quis, commodo eu, libero. Fusce sagittis erat at erat tristique +mollis. Maecenas sapien libero, molestie et, lobortis in, sodales +eget, dui. Morbi ultrices rutrum lorem. Nam elementum ullamcorper +leo. Morbi dui. Aliquam sagittis. Nunc placerat. Pellentesque +tristique sodales est. Maecenas imperdiet lacinia velit. Cras non +urna. Morbi eros pede, suscipit ac, varius vel, egestas non, eros. +Praesent malesuada, diam id pretium elementum, eros sem dictum +tortor, vel consectetuer odio sem sed wisi.} +} + +% \end{macrocode} +%\fi +%\iffalse +% \begin{macrocode} +% +% \end{macrocode} +%\fi +%\iffalse +% \begin{macrocode} %<*example-glossaries-childnoname.bib> % \end{macrocode} %\fi @@ -34888,6 +35355,193 @@ bibendum quam in tellus.} %\fi %\iffalse % \begin{macrocode} +%<*example-glossaries-longchild.bib> +% \end{macrocode} +%\fi +%\iffalse +% \begin{macrocode} +% Encoding: UTF-8 +@entry{longsedmattis, + name = {sed mattis}, + description = {erat sit amet dolor sit amet, consectetuer adipiscing elit. Ut purus +elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur +dictum gravida mauris.} +} + +@entry{longgravida, + parent = {longsedmattis}, + name = {gravida}, + description = {malesuada libero, nonummy eget, consectetuer id, vulputate a, magna. Donec +vehicula augue eu neque. Pellentesque habitant morbi tristique +senectus et netus et malesuada fames ac turpis egestas. Mauris ut +leo.} +} + +@entry{longelitaugue, + parent = {longsedmattis}, + name = {elit augue}, + description = {egestas diam metus rhoncus sem. Nulla et lectus vestibulum +urna fringilla ultrices. Phasellus eu tellus sit amet tortor gravida +placerat.} +} + +@entry{longtempus, + parent = {longsedmattis}, + name = {tempus}, + description = {scelerisque est, iaculis in, pretium quis, viverra ac, +nunc. Praesent eget sem vel leo ultrices bibendum. Aenean +faucibus.} +} + +@entry{longnunc, + name = {nunc}, + description = {nisl vitae nulla, malesuada eu, pulvinar at, mollis ac, nulla. +Curabitur auctor semper nulla. Donec varius orci eget risus. Duis +nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis +eget orci sit amet orci dignissim rutrum.} +} + +@entry{longlibero, + parent = {longnunc}, + name = {libero}, + description = {sed consequat ligula, fringilla a, euismod sodales, +sollicitudin vel, wisi. Morbi auctor lorem non justo.} +} + +@entry{longfeugiat, + parent = {longnunc}, + name = {feugiat}, + description = {massa libero, pretium at, lobortis vitae, ultricies et, +tellus. Donec aliquet, tortor sed accumsan bibendum, erat ligula aliquet magna, +vitae ornare odio metus a mi.} +} + +@entry{longporta, + parent = {longnunc}, + name = {porta}, + description = {eros in eleifend orci et nisl hendrerit mollis. Suspendisse ut massa. +Cras nec ante. Pellentesque a nulla. Cum sociis natoque penatibus +et magnis dis parturient montes, nascetur ridiculus mus.} +} + +@entry{longvariuserat, + parent = {longnunc}, + name = {varius erat}, + description = {leo rutrum dui tincidunt urna. Nulla ullamcorper +vestibulum turpis. Pellentesque cursus luctus mauris.} +} + +@entry{longnonconvallis, + name = {non convallis}, + description = {lectus orci ut nibh porttitor diam. Donec felis erat, +congue non, volutpat at, tincidunt tristique, libero. Vivamus +viverra fermentum felis.} +} + +@entry{longsedlorem, + parent = {longnonconvallis}, + name = {sedlorem}, + description = {massa pellentesque ante. Phasellus +adipiscing semper elit. Proin fermentum massa ac quam. Sed diam +turpis, molestie vitae, placerat a, molestie nec, leo.} +} + +@entry{longnonummyquis, + parent = {longnonconvallis}, + name = {nonummy +quis}, + description = {egestas id nam ipsum ligula, eleifend at, accumsan nec, suscipit +a, ipsum. Morbi blandit ligula feugiat magna. Nunc eleifend consequat +lorem.} +} + +@entry{longcondimentum, + name = {condimentum}, + description = {at nisl nulla vitae enim. Pellentesque tincidunt purus +vel magna. Integer non enim. Praesent euismod nunc eu purus. Donec +bibendum quam in tellus.} +} + +@entry{longmaecenas, + parent = {longcondimentum}, + name = {maecenas}, + description = {at nibh fringilla a, euismod sodales, sollicitudin vel, +wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at, +lobortis vitae, ultricies et, tellus. Donec aliquet, tortor sed +accumsan bibendum, erat ligula aliquet magna, vitae ornare odio +metus a mi. Morbi ac orci et nisl hendrerit mollis. Suspendisse ut +massa. Cras nec ante. Pellentesque a nulla. Cum sociis natoque +penatibus et magnis dis parturient montes, nascetur ridiculus mus. +Aliquam tincidunt urna. Nulla ullamcorper vestibulum turpis. +Pellentesque cursus luctus mauris.} +} + +@entry{longaliquamet, + name = {aliquam et}, + description = {augue felis erat, congue non, +volutpat at, tincidunt tristique, libero. Vivamus viverra fermentum +felis. Donec nonummy pellentesque ante.} +} + +@entry{longatnunc, + parent = {longaliquamet}, + name = {at nunc}, + description = {pellentesque ullamcorper el justo +vitae lacus tincidunt ultrices. Lorem ipsum dolor sit amet, +consectetuer adipiscing elit.} +} + +@entry{longduisnisl, + parent = {longatnunc}, + name = {duisnisl}, + description = {laoreet suscipit ac venenatis arcu +wisi vel nisl. Vestibulum diam. Aliquam pellentesque, augue quis +sagittis posuere, turpis lacus congue quam, in hendrerit risus eros +eget felis. Maecenas eget erat in sapien mattis porttitor.} +} + +@entry{longduisnibh, + parent = {longatnunc}, + name = {duisnibh}, + description = {convallis ut justo lectus +sagittis dui, et vehicula libero dui cursus dui. Mauris tempor +ligula sed lacus. Duis cursus enim ut augue. Cras ac magna.} +} + +@entry{longrutrum, + name = {rutrum}, + description = {id, enim elit, rutrum at, molestie non, nonummy vel, nisl. Ut lectus +eros, malesuada sit amet, fermentum eu, sodales cursus, magna. Donec +eu purus. Quisque vehicula, urna sed ultricies auctor, pede lorem +egestas dui, et convallis elit erat sed nulla.} +} + +@entry{longphasellus, + parent = {longrutrum}, + name = {phasellus}, + description = {odio volutpat a, ornare ac, erat. +Morbi quis dolor. Donec pellentesque, erat ac sagittis semper, nunc +dui lobortis purus, quis congue purus metus ultricies tellus. Proin +et quam.} +} + +@entry{longnullanulla, + parent = {longrutrum}, + name = {nulla nulla}, + description = {elit, molestie non wisi viverra faucibus pretium, nibh est placerat odio, +nec commodo wisi enim eget quam. Quisque libero justo, consectetuer +a, feugiat vitae, porttitor eu, libero.} +} + +% \end{macrocode} +%\fi +%\iffalse +% \begin{macrocode} +% +% \end{macrocode} +%\fi +%\iffalse +% \begin{macrocode} %<*example-glossaries-multipar.bib> % \end{macrocode} %\fi -- cgit v1.2.3