diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty | 377 |
1 files changed, 314 insertions, 63 deletions
diff --git a/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty b/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty index 4be61aae9d4..cee1d645b41 100644 --- a/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty +++ b/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty @@ -21,7 +21,7 @@ %% %% The Current Maintainer of this work is Nicola Talbot. %% -%% This work consists of the files glossaries-extra.dtx and glossaries-extra.ins and the derived files glossaries-extra.sty, glossaries-extra-bib2gls.sty, glossaries-extra-stylemods.sty, glossary-bookindex.sty, example-glossaries-xr.tex, example-glossaries-acronym-desc.bib, example-glossaries-acronym.bib, example-glossaries-acronyms-lang.bib, example-glossaries-brief.bib, example-glossaries-childnoname.bib, example-glossaries-cite.bib, example-glossaries-images.bib, example-glossaries-long.bib, example-glossaries-multipar.bib, example-glossaries-parent.bib, example-glossaries-symbols.bib, example-glossaries-url.bib, example-glossaries-xr.bib. +%% This work consists of the files glossaries-extra.dtx and glossaries-extra.ins and the derived files glossaries-extra.sty, glossaries-extra-bib2gls.sty, glossaries-extra-stylemods.sty, glossary-bookindex.sty, glossary-longextra.sty, example-glossaries-xr.tex, example-glossaries-acronym-desc.bib, example-glossaries-acronym.bib, example-glossaries-acronyms-lang.bib, example-glossaries-brief.bib, example-glossaries-childnoname.bib, example-glossaries-cite.bib, example-glossaries-images.bib, example-glossaries-long.bib, example-glossaries-multipar.bib, example-glossaries-parent.bib, example-glossaries-symbols.bib, example-glossaries-url.bib, example-glossaries-xr.bib. %% %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -39,7 +39,7 @@ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra}[2018/08/18 v1.36 (NLCT)] +\ProvidesPackage{glossaries-extra}[2018/11/30 1.37 (NLCT)] \RequirePackage{xkeyval} \RequirePackage{etoolbox} \@ifpackageloaded{glossaries} @@ -170,11 +170,15 @@ \def\@glsxtr@theHvalue{\@glsxtr@thevalue}% \let\@glsxtr@org@theHvalue\@glsxtr@theHvalue \let\@gls@counter\glscounter + \if@glsxtr@equations + \@glsxtr@use@equation@counter + \fi \@gls@setdefault@glslink@opts \csuse{@glsxtr@#3@prekeys}% \setkeys{#3}{#1}% + \glsxtr@do@autoadd{#3}% \csuse{@glsxtr@#3@postkeys}% - \glsxtr@inc@wrglossaryctr{#2}% + \glsxtr@inc@wrglossaryctr{#2}% \ifKV@glslink@noindex \else \glswriteentry{#2}% @@ -218,28 +222,66 @@ }% \@do@gls@getcounterprefix \fi - \protected@write\@auxout{}{\string\glsxtr@record + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@nameref + \@glsxtr@do@nameref@record {\@gls@label}{\@glo@counterprefix}{\@gls@counter}{\@glsnumberformat}% - {\@glsrecordlocref}}% + {\@glsrecordlocref}% + \else + \protected@write\@auxout{}{\string\glsxtr@record + {\@gls@label}{\@glo@counterprefix}{\@gls@counter}{\@glsnumberformat}% + {\@glsrecordlocref}}% + \fi \@glsxtr@counterrecordhook \let\@glo@counterprefix\@glsxtr@orgprefix } \newcommand*\@glsxtr@dorecordnodefer{% \ifx\theglsentrycounter\theHglsentrycounter - \protected@write\@auxout{}{\string\glsxtr@record - {\@gls@label}{}{\@gls@counter}{\@glsnumberformat}% - {\theglsentrycounter}}% + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@nameref + \@glsxtr@do@nameref@record + {\@gls@label}{}{\@gls@counter}{\@glsnumberformat}% + {\theglsentrycounter}% + \else + \protected@write\@auxout{}{\string\glsxtr@record + {\@gls@label}{}{\@gls@counter}{\@glsnumberformat}% + {\theglsentrycounter}}% + \fi \else - \edef\@do@gls@getcounterprefix{\noexpand\@gls@getcounterprefix - {\theglsentrycounter}{\theHglsentrycounter}% - }% - \@do@gls@getcounterprefix - \protected@write\@auxout{}{\string\glsxtr@record - {\@gls@label}{\@glo@counterprefix}{\@gls@counter}{\@glsnumberformat}% - {\theglsentrycounter}}% + \edef\@do@gls@getcounterprefix{\noexpand\@gls@getcounterprefix + {\theglsentrycounter}{\theHglsentrycounter}% + }% + \@do@gls@getcounterprefix + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@nameref + \@glsxtr@do@nameref@record + {\@gls@label}{\@glo@counterprefix}{\@gls@counter}% + {\@glsnumberformat}{\theglsentrycounter}% + \else + \protected@write\@auxout{}{\string\glsxtr@record + {\@gls@label}{\@glo@counterprefix}{\@gls@counter}{\@glsnumberformat}% + {\theglsentrycounter}}% + \fi \fi \@glsxtr@counterrecordhook } +\newcommand{\@glsxtr@ifnum@mmode}[2]{% + \ifmmode + \ifst@rred + #2% + \else + \if@display #1\else #2\fi + \fi + \else + #2% + \fi +} +\newcommand*{\@glsxtr@do@nameref@record}[5]{% + \gls@ifnotmeasuring + {% + \protected@write\@auxout{}{\string\glsxtr@record@nameref + {#1}{#2}{#3}{#4}{#5}% + {\csuse{@currentlabelname}}{\csuse{@currentHref}}% + {\theHglsentrycounter}}% + }% +} \newcommand*{\@@glsxtr@recordcounter}{% \@glsxtr@noop@recordcounter } @@ -304,10 +346,41 @@ \newcommand*{\@glsxtr@record@setting}{off} \newcommand*{\@glsxtr@record@setting@alsoindex}{alsoindex} \newcommand*{\@glsxtr@record@setting@only}{only} +\newcommand*{\@glsxtr@record@setting@nameref}{nameref} +\newcommand*{\@glsxtr@if@record@only}[2]{% + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@only + #1% + \else + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@nameref + #1% + \else + #2% + \fi + \fi +} \newcommand*{\@glsxtr@record@setting@off}{off} +\newcommand*{\@glsxtr@record@only@setup}{% + \def\glsxtr@setup@record{% + \@glsxtr@autoseeindexfalse + \let\@do@seeglossary\@glsxtr@recordsee + \let\@glsxtr@record\@@glsxtr@record + \let\@@do@wrglossary\@glsxtr@do@record@wrglossary + \let\@gls@saveentrycounter\relax + \let\glsxtrundefaction\@glsxtr@warn@undefaction + \let\glsxtr@warnonexistsordo\@glsxtr@warn@onexistsordo + \glsxtr@addloclistfield + \renewcommand*{\@glsxtr@autoindexcrossrefs}{}% + \let\@@glsxtr@recordcounter\@glsxtr@op@recordcounter + \def\printunsrtglossaryunit{\print@op@unsrtglossaryunit}% + \def\glsxtrsetaliasnoindex{}% + \ifdef\@gls@setupsort@none{\@gls@setupsort@none}{}% + \def\glsxtrNoGlossaryWarning{\@glsxtr@record@noglossarywarning}% + \RequirePackage{glossaries-extra-bib2gls}% + }% +} \define@choicekey{glossaries-extra.sty}{record} [\@glsxtr@record@setting\glsxtr@record@nr]% - {off,only,alsoindex}% + {off,only,alsoindex,nameref}% [only]% {% \ifcase\glsxtr@record@nr\relax @@ -323,23 +396,7 @@ \undef\glsxtrsetaliasnoindex }% \or - \def\glsxtr@setup@record{% - \@glsxtr@autoseeindexfalse - \let\@do@seeglossary\@glsxtr@recordsee - \let\@glsxtr@record\@@glsxtr@record - \let\@@do@wrglossary\@glsxtr@do@record@wrglossary - \let\@gls@saveentrycounter\relax - \let\glsxtrundefaction\@glsxtr@warn@undefaction - \let\glsxtr@warnonexistsordo\@glsxtr@warn@onexistsordo - \glsxtr@addloclistfield - \renewcommand*{\@glsxtr@autoindexcrossrefs}{}% - \let\@@glsxtr@recordcounter\@glsxtr@op@recordcounter - \def\printunsrtglossaryunit{\print@op@unsrtglossaryunit}% - \def\glsxtrsetaliasnoindex{}% - \ifdef\@gls@setupsort@none{\@gls@setupsort@none}{}% - \def\glsxtrNoGlossaryWarning{\@glsxtr@record@noglossarywarning}% - \RequirePackage{glossaries-extra-bib2gls}% - }% + \@glsxtr@record@only@setup \or \def\glsxtr@setup@record{% \renewcommand*{\@do@seeglossary}{\@glsxtr@dosee@alsoindex@glossary}% @@ -353,6 +410,12 @@ \def\printunsrtglossaryunit{\print@op@unsrtglossaryunit}% \undef\glsxtrsetaliasnoindex }% + \or + \@glsxtr@record@only@setup + \ifundef\hyperlink + {\GlossariesExtraWarning{You have requested record=nameref but + the document doesn't support hyperlinks}}% + {}% \fi } \newcommand*{\@glsxtr@docdefval}{0} @@ -382,6 +445,21 @@ \define@boolkey{glossaries-extra.sty}[@glsxtr@]{autoseeindex}[true]{% } \@glsxtr@autoseeindextrue +\define@boolkey{glossaries-extra.sty}[@glsxtr@]{equations}[true]{% +} +\@glsxtr@equationsfalse +\let\glsxtr@float\@float +\let\glsxtr@dblfloat\@dblfloat +\define@boolkey{glossaries-extra.sty}[@glsxtr@]{floats}[true]{% + \if@glsxtr@floats + \renewcommand*{\@float}[1]{\renewcommand{\glscounter}{##1}\glsxtr@float{##1}}% + \renewcommand*{\@dblfloat}[1]{\renewcommand{\glscounter}{##1}\glsxtr@dblfloat{##1}}% + \else + \let\@float\glsxtr@float + \let\@dblfloat\glsxtr@dblfloat + \fi +} +\@glsxtr@floatsfalse \newcommand*{\GlossariesExtraWarning}[1]{\PackageWarning{glossaries-extra}{#1}} \newcommand*{\GlossariesExtraWarningNoLine}[1]{% \PackageWarningNoLine{glossaries-extra}{#1}} @@ -768,6 +846,35 @@ } \let\glsxtr@saveentrycounter\@gls@saveentrycounter \let\@gls@saveentrycounter\glsxtr@indexonly@saveentrycounter +\renewcommand*\@gls@getcounterprefix[2]{% + \protected@edef\@gls@thisloc{#1}\protected@edef\@gls@thisHloc{#2}% + \ifx\@gls@thisloc\@gls@thisHloc + \def\@glo@counterprefix{}% + \else + \def\@gls@get@counterprefix##1.#1##2\end@getprefix{% + \def\@glo@tmp{##2}% + \ifx\@glo@tmp\@empty + \def\@glo@counterprefix{}% + \else + \def\@glo@counterprefix{##1}% + \fi + }% + \@gls@get@counterprefix#2.#1\end@getprefix + \ifx\@glo@counterprefix\@empty + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@nameref + \else + \GlossariesExtraWarning{Hyper target `#2' can't be formed by + prefixing^^Jlocation `#1'. You need to modify the + definition of \string\theH\@gls@counter^^Jotherwise you + will get the warning: "`name{\@gls@counter.#1}' has been^^J + referenced but does not exist"% + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@only + . You may want to consider using record=nameref instead% + \fi}% + \fi + \fi + \fi +} \newcommand*{\@glsxtrdialecthook}{} \glsxtr@setup@record \AtBeginDocument{% @@ -954,8 +1061,31 @@ \newcommand*{\glsxtrusefield}[2]{% \@gls@entry@field{#1}{#2}% } -\newcommand*{\Glsxtrusefield}[2]{% - \@gls@entry@field{#1}{#2}% +\ifdef\texorpdfstring +{ + \newcommand*{\Glsxtrusefield}[2]{% + \texorpdfstring + {\@Gls@entry@field{#1}{#2}} + {\@gls@entry@field{#1}{#2}}% + } +} +{ + \newcommand*{\Glsxtrusefield}[2]{% + \@Gls@entry@field{#1}{#2}% + } +} +\ifdef\texorpdfstring +{ + \newcommand*{\GLSxtrusefield}[2]{% + \texorpdfstring + {\glsdoifexists{#1}{\mfirstucMakeUppercase{\@gls@entry@field{#1}{#2}}}}% + {\@gls@entry@field{#1}{#2}}% + } +} +{ + \newcommand*{\GLSxtrusefield}[2]{% + \glsdoifexists{#1}{\mfirstucMakeUppercase{\@gls@entry@field{#1}{#2}}}% + } } \newcommand*{\glsxtrdeffield}[2]{\csdef{glo@\glsdetoklabel{#1}@#2}} \newcommand*{\glsxtredeffield}[2]{\protected@csedef{glo@\glsdetoklabel{#1}@#2}} @@ -1405,8 +1535,58 @@ \glsseeformat[#1]{#2}{}% } \renewcommand*{\glsseeitemformat}[1]{% - \ifglshasshort{\glslabel}{\glsaccesstext{#1}}{\glsaccessname{#1}}% + \ifglshasshort{#1}{\glsaccesstext{#1}}{\glsaccessname{#1}}% +} +\newcommand*{\glsxtrhiername}[1]{% + \glsdoifexists{#1}% + {% + \glsxtrifhasfield{parent}{#1}% + {\glsxtrhiername{\glscurrentfieldvalue}\glsxtrhiernamesep}% + {}% + \ifglshasshort{#1}{\glsaccessshort{#1}}{\glsaccessname{#1}}% + }% } +\newcommand*{\Glsxtrhiername}[1]{% + \glsdoifexists{#1}% + {% + \glsxtrifhasfield{parent}{#1}% + {% + \Glsxtrhiername{\glscurrentfieldvalue}\glsxtrhiernamesep + \ifglshasshort{#1}{\glsaccessshort{#1}}{\glsaccessname{#1}}% + }% + {\ifglshasshort{#1}{\Glsaccessshort{#1}}{\Glsaccessname{#1}}}% + }% +} +\newcommand*{\GlsXtrhiername}[1]{% + \glsdoifexists{#1}% + {% + \glsxtrifhasfield{parent}{#1}% + {\GlsXtrhiername{\glscurrentfieldvalue}\glsxtrhiernamesep}% + {}% + \ifglshasshort{#1}{\Glsaccessshort{#1}}{\Glsaccessname{#1}}% + }% +} +\newcommand*{\GLSxtrhiername}[1]{% + \glsdoifexists{#1}% + {% + \glsxtrifhasfield{parent}{#1}% + {% + \GLSxtrhiername{\glscurrentfieldvalue}\glsxtrhiernamesep + \ifglshasshort{#1}{\glsaccessshort{#1}}{\glsaccessname{#1}}% + }% + {\ifglshasshort{#1}{\GLSaccessshort{#1}}{\GLSaccessname{#1}}}% + }% +} +\newcommand*{\GLSXTRhiername}[1]{% + \glsdoifexists{#1}% + {% + \glsxtrifhasfield{parent}{#1}% + {\GLSXTRhiername{\glscurrentfieldvalue}\glsxtrhiernamesep}% + {} + \ifglshasshort{#1}{\GLSaccessshort{#1}}{\GLSaccessname{#1}}% + }% +} +\newcommand*{\glsxtrhiernamesep}{\,{\small$\triangleright$}\,} \newcommand*{\glsxtruseseealso}[1]{% \glsdoifexists{#1}% {% @@ -2065,6 +2245,24 @@ \protected@edef\@glsxtr@tmp{#2}% \expandafter#1\expandafter{\@glsxtr@tmp}% } +\newcommand*{\@glsxtr@use@equation@counter}{% + \@glsxtr@ifnum@mmode{\def\@gls@counter{equation}}{}% +} +\newcommand*{\glsxtr@do@autoadd}[1]{} +\newcommand*{\GlsXtrAutoAddOnFormat}[3][\glslabel]{% + \renewcommand*{\glsxtr@do@autoadd}[1]{% + \begingroup + \protected@edef\@glsxtr@do@autoadd{% + \noexpand\ifstrequal{##1}{glslink}% + {% + \noexpand\DTLifinlist{\@glsnumberformat}{#2}{\noexpand\glsadd[format={\@glsnumberformat},#3]{#1}}{}% + }% + {}% + }% + \@glsxtr@do@autoadd + \endgroup + }% +} \def\@gls@link[#1]#2#3{% \leavevmode \edef\glslabel{\glsdetoklabel{#2}}% @@ -2081,11 +2279,15 @@ \glsxtrinitwrgloss \glsxtrinithyperoutside \@gls@setdefault@glslink@opts - \glsxtr@inc@linkcount + \glsxtr@inc@linkcount + \if@glsxtr@equations + \@glsxtr@use@equation@counter + \fi \do@glsdisablehyperinlist \do@gls@link@checkfirsthyper \glslinkpresetkeys \setkeys{glslink}{#1}% + \glsxtr@do@autoadd{glslink}% \glslinkpostsetkeys \ifdefempty{\@glsxtr@thevalue}% {% @@ -2150,27 +2352,30 @@ {}% {% \@gls@adjustmode - \@glsxtr@record{#1}{#2}{glossadd}% - \glsdoifexists{#2}% - {% - \let\@glsnumberformat\@glsxtr@defaultnumberformat - \edef\@gls@counter{\csname glo@\glsdetoklabel{#2}@counter\endcsname}% - \def\@glsxtr@thevalue{}% - \def\@glsxtr@theHvalue{\@glsxtr@thevalue}% - \glsaddpresetkeys - \setkeys{glossadd}{#1}% - \glsaddpostsetkeys - \ifdefempty{\@glsxtr@thevalue}% + \begingroup + \@glsxtr@record{#1}{#2}{glossadd}% + \glsdoifexists{#2}% {% - \@gls@saveentrycounter - }% - {% - \let\theglsentrycounter\@glsxtr@thevalue - \def\theHglsentrycounter{\@glsxtr@theHvalue}% + \let\@glsnumberformat\@glsxtr@defaultnumberformat + \edef\@gls@counter{\csname glo@\glsdetoklabel{#2}@counter\endcsname}% + \def\@glsxtr@thevalue{}% + \def\@glsxtr@theHvalue{\@glsxtr@thevalue}% + \glsaddpresetkeys + \setkeys{glossadd}{#1}% + \glsaddpostsetkeys + \ifdefempty{\@glsxtr@thevalue}% + {% + \@gls@saveentrycounter + }% + {% + \let\theglsentrycounter\@glsxtr@thevalue + \def\theHglsentrycounter{\@glsxtr@theHvalue}% + }% + \@gls@setsort{#2}% + \KV@glslink@noindexfalse + \@@do@wrglossary{#2}% }% - \@gls@setsort{#2}% - \@@do@wrglossary{#2}% - }% + \endgroup }% } \newrobustcmd{\glsaddeach}[2][]{% @@ -2844,6 +3049,12 @@ \let\@gls@hyp@opt\@gls@alt@hyp@opt \def\@gls@alt@hyp@opt@char{#1}% \def\@gls@alt@hyp@opt@keys{#2}% + \ifdefequal\@glsxtr@record@setting\@glsxtr@record@setting@off + {}% + {% + \protected@write\@auxout{}{\string\providecommand{\string\@glsxtr@altmodifier}[1]{}}% + \protected@write\@auxout{}{\string\@glsxtr@altmodifier{#1}}% + }% } \let\glsxtr@org@dohyperlink\glsdohyperlink \ifdef\glsnavhyperlink @@ -3883,12 +4094,15 @@ \newcommand*{\@glsxtr@reg@glosslist}{} \let\@glsxtr@org@makeglossaries\makeglossaries \renewcommand*{\makeglossaries}[1][]{% - \ifx\@glsxtr@record@setting\@glsxtr@record@setting@only + \@glsxtr@if@record@only + {% \PackageError{glossaries-extra}{\string\makeglossaries\space - not permitted\MessageBreak with record=only package option}% + 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}% - \else + }% + {% \ifblank{#1}% {\@glsxtr@org@makeglossaries}% {% @@ -4021,7 +4235,7 @@ \ifdef\@glo@check@sortallowed{\@glo@check@sortallowed\makeglossaries}{}% \fi }% - \fi + }% } \newcommand{\@glsxtr@orgprintglossary}[2]{% \def\@glo@type{\glsdefaulttype}% @@ -4606,6 +4820,7 @@ \makeatletter \@input{#2.glstex}% \@bibgls@restoreat + \@glsxtr@check@bibgls@nameref }% {% \GlossariesExtraWarning{No file `#2.glstex'}% @@ -4613,6 +4828,17 @@ \let\@gls@see@noindex\@glsxtr@org@see@noindex } \@onlypreamble\glsxtrresourcefile +\newcommand{\@glsxtr@check@bibgls@nameref}{% + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@nameref + \ifdef\bibglshrefchar + {}% + {% + \GlossariesExtraWarning{record=nameref requires at least + version 1.8 of bib2gls}% + }% + \fi + \let\@glsxtr@check@bibgls@nameref\relax +} \newcommand*{\glsxtrresourceinit}{} \newcount\glsxtrresourcecount \newcommand*{\GlsXtrLoadResources}[1][]{% @@ -4644,6 +4870,10 @@ \protected@write\@auxout{}{\string\glsxtr@fields{\@gls@keymap}}% \protected@write\@auxout{}% {\string\providecommand*{\string\glsxtr@record}[5]{}}% + \ifx\@glsxtr@record@setting\@glsxtr@record@setting@nameref + \protected@write\@auxout{}% + {\string\providecommand*{\string\glsxtr@record@nameref}[8]{}}% + \fi \ifdef\CurrentTrackedLanguageTag {% \protected@write\@auxout{}{% @@ -4683,6 +4913,7 @@ }% } \newcommand*{\glsxtr@record}[5]{} +\newcommand*{\glsxtr@record@nameref}[8]{} \newcommand*{\glsxtr@counterrecord}[3]{% \glsxtrfieldlistgadd{#1}{record.#2}{#3}% } @@ -4712,13 +4943,16 @@ \ifglshasparent{#1}% {\GlsXtrStandaloneSubEntryItem{#1}}% {\glsentryitem{#1}}% - \glstarget{#1}{\glossentryname{#1}}% + \GlsXtrStandaloneEntryName{#1}% \endgroup }% }% {\glsentryname{#1}}% {\glsxtrheadname{#1}}% } +\newcommand*{\GlsXtrStandaloneEntryName}[1]{% + \glstarget{#1}{\glossentryname{#1}}% +} \newcommand{\GlsXtrStandaloneGlossaryType}{\glsentrytype{\glscurrententrylabel}} \newcommand*{\GlsXtrStandaloneSubEntryItem}[1]{% \GlsXtrIfFieldEqNum{level}{#1}{1}{\glssubentryitem{#1}}{}% @@ -4758,13 +4992,16 @@ \ifglshasparent{#1}% {\GlsXtrStandaloneSubEntryItem{#1}}% {\glsentryitem{#1}}% - \glstarget{#1}{\glossentrynameother{#1}{#2}}% + \GlsXtrStandaloneEntryOther{#1}% \endgroup }% }% {\@gls@entry@field{#1}{#2}}% {#3}% } +\newcommand*{\GlsXtrStandaloneEntryOther}[2]{% + \glstarget{#1}{\glossentrynameother{#1}{#2}}% +} \newcommand*{\printunsrtglossary}{% \@ifstar\s@printunsrtglossary\@printunsrtglossary } @@ -4902,11 +5139,12 @@ can only be used within \string\printunsrtglossaryentryprocesshook}{}% }% \let\@gls@currentlettergroup\@glo@thislettergrp } +\newcommand*{\GlsXtrLocationField}{location} \newcommand{\@glsxtr@noidx@do}[1]{% \ifglsentryexists{#1}% {% \global\letcs{\@gls@loclist}{glo@\glsdetoklabel{#1}@loclist}% - \global\letcs{\@gls@location}{glo@\glsdetoklabel{#1}@location}% + \global\letcs{\@gls@location}{glo@\glsdetoklabel{#1}@\GlsXtrLocationField}% \ifglshasparent{#1}% {% \gls@level=\csuse{glo@\glsdetoklabel{#1}@level}\relax @@ -4952,6 +5190,18 @@ can only be used within \string\printunsrtglossaryentryprocesshook}{}% {}% } \newcount\@glsxtrnewgls@inner +\newcommand*{\@glsxtr@providenewgls}{% + \protected@write\@auxout{}{\string\providecommand{\string\@glsxtr@newglslike}[2]{}}% + \let\@glsxtr@providenewgls\relax +} +\newcommand{\glsxtridentifyglslike}[2]{% + \ifdefequal\@glsxtr@record@setting\@glsxtr@record@setting@off + {}% + {% + \@glsxtr@providenewgls + \protected@write\@auxout{}{\string\@glsxtr@newglslike{#1}{\string#2}}% + }% +} \newcommand*{\@glsxtrnewgls}[4]{% \ifdef{#3}% {% @@ -4959,6 +5209,7 @@ can only be used within \string\printunsrtglossaryentryprocesshook}{}% defined}{}% }% {% + \glsxtridentifyglslike{#2}{#3}% \ifcsdef{@#4like@#2}% {% \advance\@glsxtrnewgls@inner by \@ne |