%% %% This is file `glossaries-prefix.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% glossaries.dtx (with options: `glossaries-prefix.sty,package') %% %% glossaries.dtx %% Copyright 2020 Nicola Talbot %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 %% of this license or (at your option) any later version. %% The latest version of this license is in %% http://www.latex-project.org/lppl.txt %% and version 1.3 or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `maintained'. %% %% The Current Maintainer of this work is Nicola Talbot. %% %% This work consists of the files glossaries.dtx and glossaries.ins and the derived files glossaries.sty, glossaries-prefix.sty, glossary-hypernav.sty, glossary-inline.sty, glossary-list.sty, glossary-long.sty, glossary-longbooktabs.sty, glossary-longragged.sty, glossary-mcols.sty, glossary-super.sty, glossary-superragged.sty, glossary-tree.sty, glossaries-compatible-207.sty, glossaries-compatible-307.sty, glossaries-accsupp.sty, glossaries-babel.sty, glossaries-polyglossia.sty, example-glossaries-acronym-desc.tex, example-glossaries-acronym.tex, example-glossaries-acronyms-lang.tex, example-glossaries-brief.tex, example-glossaries-childnoname.tex, example-glossaries-cite.tex, example-glossaries-images.tex, example-glossaries-long.tex, example-glossaries-multipar.tex, example-glossaries-parent.tex, example-glossaries-symbolnames.tex, example-glossaries-symbols.tex, example-glossaries-url.tex, glossaries.perl. %% %% \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 %% Lower-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 %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{glossaries-prefix}[2020/03/19 v4.46 (NLCT)] \DeclareOption*{\PassOptionsToPackage{\CurrentOption}{glossaries}} \ProcessOptions \RequirePackage{glossaries} \define@key{glossentry}{prefixfirst}{\def\@glo@entryprefixfirst{#1}}% \define@key{glossentry}{prefixfirstplural}{\def\@glo@entryprefixfirstplural{#1}}% \define@key{glossentry}{prefix}{\def\@glo@entryprefix{#1}}% \define@key{glossentry}{prefixplural}{\def\@glo@entryprefixplural{#1}}% \appto\@gls@keymap{,% {prefixfirst}{prefixfirst},% {prefixfirstplural}{prefixfirstplural},% {prefix}{prefix},% {prefixplural}{prefixplural}% } \appto\@newglossaryentryprehook{% \def\@glo@entryprefix{}% \def\@glo@entryprefixplural{}% \let\@glo@entryprefixfirst\@gls@default@value \let\@glo@entryprefixfirstplural\@gls@default@value } \appto\@newglossaryentryposthook{% \gls@assign@field{}{\@glo@label}{prefix}{\@glo@entryprefix}% \gls@assign@field{}{\@glo@label}{prefixplural}{\@glo@entryprefixplural}% \expandafter\gls@assign@field\expandafter {\csname glo@\@glo@label @prefix\endcsname}{\@glo@label}{prefixfirst}% {\@glo@entryprefixfirst}% \expandafter\gls@assign@field\expandafter {\csname glo@\@glo@label @prefixplural\endcsname}{\@glo@label}% {prefixfirstplural}{\@glo@entryprefixfirstplural}% } \newcommand*{\glsentryprefixfirst}[1]{\csuse{glo@\glsdetoklabel{#1}@prefixfirst}} \newcommand*{\glsentryprefixfirstplural}[1]{% \csuse{glo@\glsdetoklabel{#1}@prefixfirstplural}} \newcommand*{\glsentryprefix}[1]{\csuse{glo@\glsdetoklabel{#1}@prefix}} \newcommand*{\glsentryprefixplural}[1]{\csuse{glo@\glsdetoklabel{#1}@prefixplural}} \newrobustcmd*{\Glsentryprefixfirst}[1]{% \protected@edef\@glo@text{\csname glo@\glsdetoklabel{#1}@prefixfirst\endcsname}% \xmakefirstuc\@glo@text } \newrobustcmd*{\Glsentryprefixfirstplural}[1]{% \protected@edef\@glo@text{\csname glo@\glsdetoklabel{#1}@prefixfirstplural\endcsname}% \xmakefirstuc\@glo@text } \newrobustcmd*{\Glsentryprefix}[1]{% \protected@edef\@glo@text{\csname glo@\glsdetoklabel{#1}@prefix\endcsname}% \xmakefirstuc\@glo@text } \newrobustcmd*{\Glsentryprefixplural}[1]{% \protected@edef\@glo@text{\csname glo@\glsdetoklabel{#1}@prefixplural\endcsname}% \xmakefirstuc\@glo@text } \newcommand*{\ifglshasprefix}[3]{% \ifcsempty{glo@\glsdetoklabel{#1}@prefix}% {#3}% {#2}% } \newcommand*{\ifglshasprefixplural}[3]{% \ifcsempty{glo@\glsdetoklabel{#1}@prefixplural}% {#3}% {#2}% } \newcommand*{\ifglshasprefixfirst}[3]{% \ifcsempty{glo@\glsdetoklabel{#1}@prefixfirst}% {#3}% {#2}% } \newcommand*{\ifglshasprefixfirstplural}[3]{% \ifcsempty{glo@\glsdetoklabel{#1}@prefixfirstplural}% {#3}% {#2}% } \providecommand{\@glsprefix@record@hook}[2]{% \ifdef\@glsxtr@record {\@glsxtr@record{#1}{#2}{glslink}}% {}% } \newcommand{\glsprefixsep}{} \newrobustcmd{\pgls}{\@gls@hyp@opt\@pgls} \newcommand*{\@pgls}[2][]{% \new@ifnextchar[% {\@pgls@{#1}{#2}}% {\@pgls@{#1}{#2}[]}% } \def\@pgls@#1#2[#3]{% \@glsprefix@record@hook{#1}{#2}% \glsdoifexists{#2}% {% \ifglsused{#2}% {% \ifglshasprefix{#2}{\glsentryprefix{#2}\glsprefixsep}{}% }% {% \ifglshasprefixfirst{#2}{\glsentryprefixfirst{#2}\glsprefixsep}{}% }% \@gls@{#1}{#2}[#3]% }% } \newrobustcmd{\pglspl}{\@gls@hyp@opt\@pglspl} \newcommand*{\@pglspl}[2][]{% \new@ifnextchar[% {\@pglspl@{#1}{#2}}% {\@pglspl@{#1}{#2}[]}% } \def\@pglspl@#1#2[#3]{% \@glsprefix@record@hook{#1}{#2}% \glsdoifexists{#2}% {% \ifglsused{#2}% {% \ifglshasprefixplural{#2}{\glsentryprefixplural{#2}\glsprefixsep}{}% }% {% \ifglshasprefixfirstplural{#2}% {\glsentryprefixfirstplural{#2}\glsprefixsep}{}% }% \@glspl@{#1}{#2}[#3]% }% } \newrobustcmd{\Pgls}{\@gls@hyp@opt\@Pgls} \newcommand*{\@Pgls}[2][]{% \new@ifnextchar[% {\@Pgls@{#1}{#2}}% {\@Pgls@{#1}{#2}[]}% } \def\@Pgls@#1#2[#3]{% \@glsprefix@record@hook{#1}{#2}% \glsdoifexists{#2}% {% \ifglsused{#2}% {% \ifglshasprefix{#2}% {% \Glsentryprefix{#2}% \glsprefixsep \@gls@{#1}{#2}[#3]% }% {\@Gls@{#1}{#2}[#3]}% }% {% \ifglshasprefixfirst{#2}% {% \Glsentryprefixfirst{#2}% \glsprefixsep \@gls@{#1}{#2}[#3]% }% {\@Gls@{#1}{#2}[#3]}% }% }% } \newrobustcmd{\Pglspl}{\@gls@hyp@opt\@Pglspl} \newcommand*{\@Pglspl}[2][]{% \new@ifnextchar[% {\@Pglspl@{#1}{#2}}% {\@Pglspl@{#1}{#2}[]}% } \def\@Pglspl@#1#2[#3]{% \@glsprefix@record@hook{#1}{#2}% \glsdoifexists{#2}% {% \ifglsused{#2}% {% \ifglshasprefixplural{#2}% {% \Glsentryprefixplural{#2}% \glsprefixsep \@glspl@{#1}{#2}[#3]% }% {\@Glspl@{#1}{#2}[#3]}% }% {% \ifglshasprefixfirstplural{#2}% {% \Glsentryprefixfirstplural{#2}% \glsprefixsep \@glspl@{#1}{#2}[#3]% }% {\@Glspl@{#1}{#2}[#3]}% }% }% } \newrobustcmd{\PGLS}{\@gls@hyp@opt\@PGLS} \newcommand*{\@PGLS}[2][]{% \new@ifnextchar[% {\@PGLS@{#1}{#2}}% {\@PGLS@{#1}{#2}[]}% } \def\@PGLS@#1#2[#3]{% \@glsprefix@record@hook{#1}{#2}% \glsdoifexists{#2}% {% \ifglsused{#2}% {% \ifglshasprefix{#2}% {\mfirstucMakeUppercase{\glsentryprefix{#2}\glsprefixsep}}{}% }% {% \ifglshasprefixfirst{#2}% {\mfirstucMakeUppercase{\glsentryprefixfirst{#2}\glsprefixsep}}{}% }% \@GLS@{#1}{#2}[#3]% }% } \newrobustcmd{\PGLSpl}{\@gls@hyp@opt\@PGLSpl} \newcommand*{\@PGLSpl}[2][]{% \new@ifnextchar[% {\@PGLSpl@{#1}{#2}}% {\@PGLSpl@{#1}{#2}[]}% } \def\@PGLSpl@#1#2[#3]{% \@glsprefix@record@hook{#1}{#2}% \glsdoifexists{#2}% {% \ifglsused{#2}% {% \ifglshasprefixplural{#2}% {\mfirstucMakeUppercase{\glsentryprefixplural{#2}\glsprefixsep}}{}% }% {% \ifglshasprefixfirstplural{#2}% {\mfirstucMakeUppercase{\glsentryprefixfirstplural{#2}\glsprefixsep}}{}% }% \@GLSpl@{#1}{#2}[#3]% }% } \endinput %% %% End of file `glossaries-prefix.sty'.