diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/glossaries/base/glossaries.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/glossaries/base/glossaries.sty | 1509 |
1 files changed, 1076 insertions, 433 deletions
diff --git a/Master/texmf-dist/tex/latex/glossaries/base/glossaries.sty b/Master/texmf-dist/tex/latex/glossaries/base/glossaries.sty index de71ffe206e..4cbe187656e 100644 --- a/Master/texmf-dist/tex/latex/glossaries/base/glossaries.sty +++ b/Master/texmf-dist/tex/latex/glossaries/base/glossaries.sty @@ -21,7 +21,7 @@ %% %% 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, mfirstuc.sty, glossary-hypernav.sty, glossary-list.sty, glossary-long.sty, glossary-longragged.sty, glossary-super.sty, glossary-superragged.sty, glossary-tree.sty, glossaries-accsupp.sty, glossaries-babel.sty, glossaries-dictionary-Brazilian.dict, glossaries-dictionary-Danish.dict, glossaries-dictionary-Dutch.dict, glossaries-dictionary-English.dict, glossaries-dictionary-French.dict, glossaries-dictionary-German.dict, glossaries-dictionary-Irish.dict, glossaries-dictionary-Italian.dict, glossaries-dictionary-Magyar.dict, glossaries-dictionary-Polish.dict, glossaries-dictionary-Spanish.dict, minimalgls.tex, sample.tex, sample4col.tex, sampleaccsupp.tex, sampleAcr.tex, sampleAcrDesc.tex, sampleDB.tex, sampleDesc.tex, sampleEq.tex, sampleEqPg.tex, sampleNtn.tex, sampleSec.tex, sampletree.tex, sampleutf8.tex, samplexdy.tex, samplexdy-mc.xdy, database1.tex, database2.tex, glossaries.perl. +%% This work consists of the files glossaries.dtx and glossaries.ins and the derived files glossaries.sty, mfirstuc.sty, glossary-hypernav.sty, glossary-list.sty, glossary-long.sty, glossary-longragged.sty, glossary-super.sty, glossary-superragged.sty, glossary-tree.sty, glossaries-accsupp.sty, glossaries-babel.sty, glossaries-polyglossia.sty, glossaries-dictionary-Brazilian.dict, glossaries-dictionary-Danish.dict, glossaries-dictionary-Dutch.dict, glossaries-dictionary-English.dict, glossaries-dictionary-French.dict, glossaries-dictionary-German.dict, glossaries-dictionary-Irish.dict, glossaries-dictionary-Italian.dict, glossaries-dictionary-Magyar.dict, glossaries-dictionary-Polish.dict, glossaries-dictionary-Spanish.dict, minimalgls.tex, sample.tex, sample4col.tex, sampleaccsupp.tex, sampleAcr.tex, sampleAcrDesc.tex, sampleacronyms.tex, sampleDB.tex, sampleDesc.tex, sampleEq.tex, sampleEqPg.tex, sampleNtn.tex, sampleSec.tex, sampletree.tex, sampleutf8.tex, samplexdy.tex, samplexdy-mc.xdy, database1.tex, database2.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 @@ -39,7 +39,7 @@ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries}[2009/09/23 v2.03 (NLCT)] +\ProvidesPackage{glossaries}[2009/11/01 v2.04 (NLCT)] \RequirePackage{ifthen} \RequirePackage{xkeyval}[2006/11/18] \RequirePackage{mfirstuc} @@ -48,25 +48,27 @@ \define@boolkey{glossaries.sty}[gls]{toc}[true]{} \define@boolkey{glossaries.sty}[gls]{numberline}[true]{} \@ifundefined{chapter}{\newcommand*{\@@glossarysec}{section}}{% -\newcommand*{\@@glossarysec}{chapter}} + \newcommand*{\@@glossarysec}{chapter}} \define@choicekey{glossaries.sty}{section}{part,chapter,section,% subsection,subsubsection,paragraph,subparagraph}[section]{% -\renewcommand*{\@@glossarysec}{#1}} + \renewcommand*{\@@glossarysec}{#1}} \newcommand*{\@@glossarysecstar}{*} \newcommand*{\@@glossaryseclabel}{} \newcommand*{\glsautoprefix}{} \define@choicekey{glossaries.sty}{numberedsection}[\val\nr]{% false,nolabel,autolabel}[nolabel]{% -\ifcase\nr\relax - \renewcommand*{\@@glossarysecstar}{*}% - \renewcommand*{\@@glossaryseclabel}{}% -\or - \renewcommand*{\@@glossarysecstar}{}% - \renewcommand*{\@@glossaryseclabel}{}% -\or - \renewcommand*{\@@glossarysecstar}{}% - \renewcommand*{\@@glossaryseclabel}{\label{\glsautoprefix\@glo@type}}% -\fi} + \ifcase\nr\relax + \renewcommand*{\@@glossarysecstar}{*}% + \renewcommand*{\@@glossaryseclabel}{}% + \or + \renewcommand*{\@@glossarysecstar}{}% + \renewcommand*{\@@glossaryseclabel}{}% + \or + \renewcommand*{\@@glossarysecstar}{}% + \renewcommand*{\@@glossaryseclabel}{% + \label{\glsautoprefix\@glo@type}}% + \fi +} \newcommand*{\@glossary@default@style}{list} \define@key{glossaries.sty}{style}{% \renewcommand*{\@glossary@default@style}{#1}} @@ -99,10 +101,50 @@ false,nolabel,autolabel}[nolabel]{% \let\glsdefaulttype\relax \renewcommand*{\glsdefmain}{}% } -\define@boolkey{glossaries.sty}[gls]{acronym}[true]{} +\define@boolkey{glossaries.sty}[gls]{acronym}[true]{% + \DeclareAcronymList{acronym}% +} +\newcommand*{\@glsacronymlists}{} +\newcommand*{\@addtoacronymlists}[1]{% + \ifx\@glsacronymlists\@empty + \protected@xdef\@glsacronymlists{#1}% + \else + \protected@xdef\@glsacronymlists{\@glsacronymlists,#1}% + \fi +} +\newcommand*{\DeclareAcronymList}[1]{% + \glsIfListOfAcronyms{#1}{}{\@addtoacronymlists{#1}}% +} +\newcommand{\glsIfListOfAcronyms}[1]{% + \edef\@do@gls@islistofacronyms{% + \noexpand\@gls@islistofacronyms{#1}{\@glsacronymlists}}% + \@do@gls@islistofacronyms +} +\newcommand{\@gls@islistofacronyms}[4]{% + \def\gls@islistofacronyms##1,#1,##2\end@gls@islistofacronyms{% + \def\@before{##1}\def\@after{##2}}% + \gls@islistofacronyms,#2,#1,\@nil\end@gls@islistofacronyms + \ifx\@after\@nnil + #4% + \else + #3% + \fi +} +\newif\if@glsisacronymlist +\newcommand*{\gls@checkisacronymlist}[1]{% + \glsIfListOfAcronyms{#1}% + {\@glsisacronymlisttrue}{\@glsisacronymlistfalse}% +} +\newcommand*{\SetAcronymLists}[1]{% + \renewcommand*{\@glsacronymlists}{#1}% +} +\define@key{glossaries.sty}{acronymlists}{% + \@addtoacronymlists{#1}% +} \newcommand{\glscounter}{page} \define@key{glossaries.sty}{counter}{% -\renewcommand*{\glscounter}{#1}} + \renewcommand*{\glscounter}{#1}% +} \newcommand*{\@gls@sanitizedesc}{\@onelevel@sanitize\@glo@desc} \newcommand*{\@gls@sanitizename}{\@onelevel@sanitize\@glo@name} \newcommand*{\@gls@sanitizesymbol}{\@onelevel@sanitize\@glo@symbol} @@ -137,7 +179,8 @@ name=true]{% \define@boolkey{glossaries.sty}[gls]{translate}[true]{} \glstranslatefalse \@ifpackageloaded{translator}{\glstranslatetrue}{% -\@ifpackageloaded{babel}{\glstranslatetrue}{}} +\@ifpackageloaded{babel}{\glstranslatetrue}{% +\@ifpackageloaded{polyglossia}{\glstranslatetrue}{}}} \define@boolkey{glossaries.sty}[gls]{hyperfirst}[true]{} \glshyperfirsttrue \define@boolkey{glossaries.sty}[glsacr]{footnote}[true]{% @@ -227,8 +270,49 @@ name=true]{% \newcommand*{\glspluralsuffix}{s} \providecommand*{\seename}{see} \providecommand*{\andname}{\&} +\newcommand*{\addglossarytocaptions}[1]{% + \@ifundefined{captions#1}{}{% + \expandafter\let\expandafter\@gls@tmp\csname captions#1\endcsname + \expandafter\toks@\expandafter{\@gls@tmp + \renewcommand*{\glossaryname}{\translate{Glossary}}% + }% + \expandafter\edef\csname captions#1\endcsname{\the\toks@}% + }% +} \ifglstranslate - \@ifpackageloaded{translator}{\usedictionary{glossaries-dictionary}% + \@ifpackageloaded{translator}{% + \usedictionary{glossaries-dictionary}% + \addglossarytocaptions{portuges}% + \addglossarytocaptions{portuguese}% + \addglossarytocaptions{brazil}% + \addglossarytocaptions{brazilian}% + \addglossarytocaptions{danish}% + \addglossarytocaptions{dutch}% + \addglossarytocaptions{afrikaans}% + \addglossarytocaptions{english}% + \addglossarytocaptions{UKenglish}% + \addglossarytocaptions{USenglish}% + \addglossarytocaptions{american}% + \addglossarytocaptions{australian}% + \addglossarytocaptions{british}% + \addglossarytocaptions{canadian}% + \addglossarytocaptions{newzealand}% + \addglossarytocaptions{french}% + \addglossarytocaptions{frenchb}% + \addglossarytocaptions{francais}% + \addglossarytocaptions{acadian}% + \addglossarytocaptions{canadien}% + \addglossarytocaptions{german}% + \addglossarytocaptions{germanb}% + \addglossarytocaptions{austrian}% + \addglossarytocaptions{naustrian}% + \addglossarytocaptions{ngerman}% + \addglossarytocaptions{irish}% + \addglossarytocaptions{italian}% + \addglossarytocaptions{magyar}% + \addglossarytocaptions{hungarian}% + \addglossarytocaptions{polish}% + \addglossarytocaptions{spanish}% \renewcommand*{\glssettoctitle}[1]{% \ifthenelse{\equal{#1}{main}}{% \translatelet{\glossarytoctitle}{Glossary}}{% @@ -248,7 +332,12 @@ name=true]{% \renewcommand*{\glsnumbersgroupname}{% \translate{Numbers (glossaries)}}% }{% - \@ifpackageloaded{babel}{\RequirePackage{glossaries-babel}}{}} + \@ifpackageloaded{babel}% + {\RequirePackage{glossaries-babel}}% + {% + \@ifpackageloaded{polyglossia}{% + \RequirePackage{glossaries-polyglossia}}{}% + }} \fi \newcommand*{\glspostdescription}{.} \newcommand*{\nopostdesc}{} @@ -593,10 +682,12 @@ name=true]{% \expandafter\def\csname @glotype@#2@out\endcsname{#4}% \expandafter\def\csname @glotype@#2@title\endcsname{#5}% \protected@write\@auxout{}{\string\@newglossary{#2}{#1}{#3}{#4}}% - \expandafter\gdef\csname gls@#2@display\endcsname{% - \glsdisplay}% + \@ifundefined{gls@#2@display}{% + \expandafter\gdef\csname gls@#2@display\endcsname{% + \glsdisplay}}{}% + \@ifundefined{gls@#2@displayfirst}{% \expandafter\gdef\csname gls@#2@displayfirst\endcsname{% - \glsdisplayfirst}% + \glsdisplayfirst}}{}% \@ifnextchar[{\@gls@setcounter{#2}}% {\@gls@setcounter{#2}[\glscounter]}}} \@onlypreamble{\newglossary} @@ -650,6 +741,24 @@ counter as its value}}{% \def\@glo@parent{#1}} \define@key{glossentry}{nonumberlist}[none]{% \def\@glo@prefix{\glsnonextpages}} +\define@key{glossentry}{user1}{% + \def\@glo@useri{#1}% +} +\define@key{glossentry}{user2}{% + \def\@glo@userii{#1}% +} +\define@key{glossentry}{user3}{% + \def\@glo@useriii{#1}% +} +\define@key{glossentry}{user4}{% + \def\@glo@useriv{#1}% +} +\define@key{glossentry}{user5}{% + \def\@glo@userv{#1}% +} +\define@key{glossentry}{user6}{% + \def\@glo@uservi{#1}% +} \newcommand*{\@glsnoname}{% \PackageError{glossaries}{name key required in \string\newglossaryentry\space for entry `\@glo@label'}{You @@ -662,7 +771,7 @@ counter as its value}}{% \def\@glo@label{#1}% \let\@glo@name\@glsnoname \def\@glo@desc{\PackageError{glossaries}{description key required in -\string\newglossaryentry}{You haven't specified the entry description}}% +\string\newglossaryentry\space for entry `\@glo@label'}{You haven't specified the entry description}}% \def\@glo@descplural{\@glo@desc}% \def\@glo@type{\glsdefaulttype}% \def\@glo@symbol{\relax}% @@ -676,6 +785,13 @@ counter as its value}}{% \def\@glo@see{}% \def\@glo@parent{}% \def\@glo@prefix{}% +\def\@glo@useri{}% +\def\@glo@userii{}% +\def\@glo@useriii{}% +\def\@glo@useriv{}% +\def\@glo@userv{}% +\def\@glo@uservi{}% + \@newglossaryentryprehook \setkeys{glossentry}{#2}% \@ifundefined{glolist@\@glo@type}{\PackageError{glossaries}{% Glossary type '\@glo@type' has not been defined}{% @@ -727,12 +843,30 @@ in it}}{% \def\@glo@first{\@glo@text}% \fi \fi -\expandafter\protected@xdef\csname glo@#1@text\endcsname{\@glo@text}% -\expandafter\protected@xdef\csname glo@#1@plural\endcsname{\@glo@plural}% -\expandafter\protected@xdef\csname glo@#1@first\endcsname{\@glo@first}% -\expandafter\protected@xdef\csname glo@#1@firstpl\endcsname{\@glo@firstplural}% -\expandafter\protected@xdef\csname glo@#1@type\endcsname{\@glo@type}% -\expandafter\protected@xdef\csname glo@#1@counter\endcsname{\@glo@counter}% +\expandafter + \protected@xdef\csname glo@#1@text\endcsname{\@glo@text}% +\expandafter + \protected@xdef\csname glo@#1@plural\endcsname{\@glo@plural}% +\expandafter + \protected@xdef\csname glo@#1@first\endcsname{\@glo@first}% +\expandafter + \protected@xdef\csname glo@#1@firstpl\endcsname{\@glo@firstplural}% +\expandafter + \protected@xdef\csname glo@#1@type\endcsname{\@glo@type}% +\expandafter + \protected@xdef\csname glo@#1@counter\endcsname{\@glo@counter}% +\expandafter + \protected@xdef\csname glo@#1@useri\endcsname{\@glo@useri}% +\expandafter + \protected@xdef\csname glo@#1@userii\endcsname{\@glo@userii}% +\expandafter + \protected@xdef\csname glo@#1@useriii\endcsname{\@glo@useriii}% +\expandafter + \protected@xdef\csname glo@#1@useriv\endcsname{\@glo@useriv}% +\expandafter + \protected@xdef\csname glo@#1@userv\endcsname{\@glo@userv}% +\expandafter + \protected@xdef\csname glo@#1@uservi\endcsname{\@glo@uservi}% \@gls@sanitizename \expandafter\protected@xdef\csname glo@#1@name\endcsname{\@glo@name}% \def\@glo@@desc{\@glo@first}% @@ -771,7 +905,22 @@ in it}}{% \fi }% \@glo@storeentry{#1}% + \@newglossaryentryposthook } +\newcommand*{\@newglossaryentryprehook}{} +\newcommand*{\@newglossaryentryposthook}{} +\ifglsxindy + \newcommand*{\@glossaryentryfield}{\string\\glossaryentryfield} +\else + \newcommand*{\@glossaryentryfield}{\string\glossaryentryfield} +\fi +\ifglsxindy + \newcommand*{\@glossarysubentryfield}{% + \string\\glossarysubentryfield} +\else + \newcommand*{\@glossarysubentryfield}{% + \string\glossarysubentryfield} +\fi \newcommand{\@glo@storeentry}[1]{% \protected@edef\@glo@sort{\csname glo@#1@sort\endcsname}% \@gls@checkmkidxchars\@glo@sort @@ -792,14 +941,14 @@ in it}}{% \ifx\@glo@parent\@empty \expandafter\protected@xdef\csname glo@#1@index\endcsname{% (\string"\@glo@sort\string" % - \string"\@glo@prefix\string\\glossaryentryfield{#1}{\@glo@name + \string"\@glo@prefix\@glossaryentryfield{#1}{\@glo@name }{\@glo@desc}{\@glo@symbol}\string") % }% \else \expandafter\protected@xdef\csname glo@#1@index\endcsname{% \csname glo@\@glo@parent @index\endcsname (\string"\@glo@sort\string" % - \string"\@glo@prefix\string\\glossarysubentryfield% + \string"\@glo@prefix\@glossarysubentryfield% {\csname glo@#1@level\endcsname}{#1}{\@glo@name }{\@glo@desc}{\@glo@symbol}\string") % }% @@ -809,14 +958,14 @@ in it}}{% \@onelevel@sanitize\@glo@prefix \expandafter\protected@xdef\csname glo@#1@index\endcsname{% \@glo@sort\@gls@actualchar\@glo@prefix - \string\glossaryentryfield{#1}{\@glo@name}{\@glo@desc + \@glossaryentryfield{#1}{\@glo@name}{\@glo@desc }{\@glo@symbol}% }% \else \expandafter\protected@xdef\csname glo@#1@index\endcsname{% \csname glo@\@glo@parent @index\endcsname\@gls@levelchar \@glo@sort\@gls@actualchar\@glo@prefix - \string\glossarysubentryfield + \@glossarysubentryfield {\csname glo@#1@level\endcsname}{#1}{\@glo@name}{\@glo@desc }{\@glo@symbol}% }% @@ -1233,16 +1382,22 @@ counter as its value}}{% \glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% \def\@gls@link@opts{#1}% \def\@gls@link@label{#2}% -\ifglsused{#2}{\protected@edef\@glo@text{% -\csname gls@\@glo@type @display\endcsname -{\glsentrytext{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}{% -\protected@edef\@glo@text{% -\csname gls@\@glo@type @displayfirst\endcsname -{\glsentryfirst{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}% +\ifglsused{#2}% +{% + \def\@glo@text{% + \csname gls@\@glo@type @display\endcsname + {\glsentrytext{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}% +}% +{% + \def\@glo@text{% + \csname gls@\@glo@type @displayfirst\endcsname + {\glsentryfirst{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}% +}% \ifglsused{#2}{% \@gls@link[#1]{#2}{\@glo@text}% }{% - \ifthenelse{\(\equal{\@glo@type}{\acronymtype}\AND + \gls@checkisacronymlist\@glo@type + \ifthenelse{\(\boolean{@glsisacronymlist}\AND \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{% \@gls@link[#1,hyper=false]{#2}{\@glo@text}% }{% @@ -1259,17 +1414,25 @@ counter as its value}}{% \glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% \def\@gls@link@opts{#1}% \def\@gls@link@label{#2}% -\ifglsused{#2}{\protected@edef\@glo@text{% -\csname gls@\@glo@type @display\endcsname -{\glsentrytext{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}{% -\protected@edef\@glo@text{% -\csname gls@\@glo@type @displayfirst\endcsname -{\glsentryfirst{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}% +\ifglsused{#2}% +{% + \protected@edef\@glo@text{% + \csname gls@\@glo@type @display\endcsname + {\glsentrytext{#2}}{\glsentrydesc{#2}}% + {\glsentrysymbol{#2}}{#3}}% +}% +{% + \protected@edef\@glo@text{% + \csname gls@\@glo@type @displayfirst\endcsname + {\glsentryfirst{#2}}{\glsentrydesc{#2}}% + {\glsentrysymbol{#2}}{#3}}% +}% \ifglsused{#2}{% \@gls@link[#1]{#2}{% \expandafter\makefirstuc\expandafter{\@glo@text}}% }{% - \ifthenelse{\(\equal{\@glo@type}{\acronymtype}\AND + \gls@checkisacronymlist\@glo@type + \ifthenelse{\(\boolean{@glsisacronymlist}\AND \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{% \@gls@link[#1,hyper=false]{#2}{% \expandafter\makefirstuc\expandafter{\@glo@text}}% @@ -1288,16 +1451,17 @@ counter as its value}}{% \glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% \def\@gls@link@opts{#1}% \def\@gls@link@label{#2}% -\ifglsused{#2}{\protected@edef\@glo@text{% +\ifglsused{#2}{\def\@glo@text{% \csname gls@\@glo@type @display\endcsname {\glsentrytext{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}{% -\protected@edef\@glo@text{% +\def\@glo@text{% \csname gls@\@glo@type @displayfirst\endcsname {\glsentryfirst{#2}}{\glsentrydesc{#2}}{\glsentrysymbol{#2}}{#3}}}% \ifglsused{#2}{% \@gls@link[#1]{#2}{\MakeUppercase{\@glo@text}}% }{% - \ifthenelse{\(\equal{\@glo@type}{\acronymtype}\AND + \gls@checkisacronymlist\@glo@type + \ifthenelse{\(\boolean{@glsisacronymlist}\AND \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{% \@gls@link[#1,hyper=false]{#2}{\MakeUppercase{\@glo@text}}% }{% @@ -1314,18 +1478,24 @@ counter as its value}}{% \glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% \def\@gls@link@opts{#1}% \def\@gls@link@label{#2}% -\ifglsused{#2}{\protected@edef\@glo@text{% -\csname gls@\@glo@type @display\endcsname -{\glsentryplural{#2}}{\glsentrydescplural{#2}}{% -\glsentrysymbolplural{#2}}{#3}}}{% -\protected@edef\@glo@text{% -\csname gls@\@glo@type @displayfirst\endcsname -{\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}{% -\glsentrysymbolplural{#2}}{#3}}}% +\ifglsused{#2}% +{% + \def\@glo@text{% + \csname gls@\@glo@type @display\endcsname + {\glsentryplural{#2}}{\glsentrydescplural{#2}}% + {\glsentrysymbolplural{#2}}{#3}}% +}% +{% + \def\@glo@text{% + \csname gls@\@glo@type @displayfirst\endcsname + {\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}% + {\glsentrysymbolplural{#2}}{#3}}% +}% \ifglsused{#2}{% \@gls@link[#1]{#2}{\@glo@text}% }{% - \ifthenelse{\(\equal{\@glo@type}{\acronymtype}\AND + \gls@checkisacronymlist\@glo@type + \ifthenelse{\(\boolean{@glsisacronymlist}\AND \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{% \@gls@link[#1,hyper=false]{#2}{\@glo@text}% }{% @@ -1342,19 +1512,25 @@ counter as its value}}{% \glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% \def\@gls@link@opts{#1}% \def\@gls@link@label{#2}% -\ifglsused{#2}{\protected@edef\@glo@text{% -\csname gls@\@glo@type @display\endcsname -{\glsentryplural{#2}}{\glsentrydescplural{#2}}{% -\glsentrysymbolplural{#2}}{#3}}}{% -\protected@edef\@glo@text{% -\csname gls@\@glo@type @displayfirst\endcsname -{\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}{% -\glsentrysymbolplural{#2}}{#3}}}% +\ifglsused{#2}% +{% + \protected@edef\@glo@text{% + \csname gls@\@glo@type @display\endcsname + {\glsentryplural{#2}}{\glsentrydescplural{#2}}% + {\glsentrysymbolplural{#2}}{#3}}% +}% +{% + \protected@edef\@glo@text{% + \csname gls@\@glo@type @displayfirst\endcsname + {\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}% + {\glsentrysymbolplural{#2}}{#3}}% +}% \ifglsused{#2}{% \@gls@link[#1]{#2}{% \expandafter\makefirstuc\expandafter{\@glo@text}}% }{% - \ifthenelse{\(\equal{\@glo@type}{\acronymtype}\AND + \gls@checkisacronymlist\@glo@type + \ifthenelse{\(\boolean{@glsisacronymlist}\AND \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{% \@gls@link[#1,hyper=false]{#2}{% \expandafter\makefirstuc\expandafter{\@glo@text}}% @@ -1373,18 +1549,19 @@ counter as its value}}{% \glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% \def\@gls@link@opts{#1}% \def\@gls@link@label{#2}% -\ifglsused{#2}{\protected@edef\@glo@text{% +\ifglsused{#2}{\def\@glo@text{% \csname gls@\@glo@type @display\endcsname {\glsentryplural{#2}}{\glsentrydescplural{#2}}{% \glsentrysymbolplural{#2}}{#3}}}{% -\protected@edef\@glo@text{% +\def\@glo@text{% \csname gls@\@glo@type @displayfirst\endcsname {\glsentryfirstplural{#2}}{\glsentrydescplural{#2}}{% \glsentrysymbolplural{#2}}{#3}}}% \ifglsused{#2}{% \@gls@link[#1]{#2}{\MakeUppercase{\@glo@text}}% }{% - \ifthenelse{\(\equal{\@glo@type}{\acronymtype}\AND + \gls@checkisacronymlist\@glo@type + \ifthenelse{\(\boolean{@glsisacronymlist}\AND \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}{% \@gls@link[#1,hyper=false]{#2}{\MakeUppercase{\@glo@text}}% }{% @@ -1416,7 +1593,8 @@ counter as its value}}{% \@gls@link[#1]{#2}{\@glo@text}% }% {% - \ifthenelse{\(\equal{\@glo@type}{\acronymtype}\AND + \gls@checkisacronymlist\@glo@type + \ifthenelse{\(\boolean{@glsisacronymlist}\AND \boolean{glsacrfootnote}\) \OR \NOT\boolean{glshyperfirst}}% {% \@gls@link[#1,hyper=false]{#2}{\@glo@text}% @@ -1707,6 +1885,192 @@ counter as its value}}{% \@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}% }% } +\newcommand*{\glsuseri}{\@ifstar\@sglsuseri\@glsuseri} +\newcommand*{\@sglsuseri}[1][]{\@glsuseri[hyper=false,#1]} +\newcommand*{\@glsuseri}[2][]{% +\new@ifnextchar[{\@glsuseri@{#1}{#2}}{\@glsuseri@{#1}{#2}[]}} +\def\@glsuseri@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseri{#2}}% +\@gls@link[#1]{#2}{\@glo@text#3}% +}% +} +\newcommand*{\Glsuseri}{\@ifstar\@sGlsuseri\@Glsuseri} +\newcommand*{\@sGlsuseri}[1][]{\@Glsuseri[hyper=false,#1]} +\newcommand*{\@Glsuseri}[2][]{% +\new@ifnextchar[{\@Glsuseri@{#1}{#2}}{\@Glsuseri@{#1}{#2}[]}} +\def\@Glsuseri@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseri{#2}}% +\@gls@link[#1]{#2}{% + \expandafter\makefirstuc\expandafter{\@glo@text}#3}% +}% +} +\newcommand*{\GLSuseri}{\@ifstar\@sGLSuseri\@GLSuseri} +\newcommand*{\@sGLSuseri}[1][]{\@GLSuseri[hyper=false,#1]} +\newcommand*{\@GLSuseri}[2][]{% +\new@ifnextchar[{\@GLSuseri@{#1}{#2}}{\@GLSuseri@{#1}{#2}[]}} +\def\@GLSuseri@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseri{#2}}% +\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}% +}% +} +\newcommand*{\glsuserii}{\@ifstar\@sglsuserii\@glsuserii} +\newcommand*{\@sglsuserii}[1][]{\@glsuserii[hyper=false,#1]} +\newcommand*{\@glsuserii}[2][]{% +\new@ifnextchar[{\@glsuserii@{#1}{#2}}{\@glsuserii@{#1}{#2}[]}} +\def\@glsuserii@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuserii{#2}}% +\@gls@link[#1]{#2}{\@glo@text#3}% +}% +} +\newcommand*{\Glsuserii}{\@ifstar\@sGlsuserii\@Glsuserii} +\newcommand*{\@sGlsuserii}[1][]{\@Glsuserii[hyper=false,#1]} +\newcommand*{\@Glsuserii}[2][]{% +\new@ifnextchar[{\@Glsuserii@{#1}{#2}}{\@Glsuserii@{#1}{#2}[]}} +\def\@Glsuserii@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuserii{#2}}% +\@gls@link[#1]{#2}{% + \expandafter\makefirstuc\expandafter{\@glo@text}#3}% +}% +} +\newcommand*{\GLSuserii}{\@ifstar\@sGLSuserii\@GLSuserii} +\newcommand*{\@sGLSuserii}[1][]{\@GLSuserii[hyper=false,#1]} +\newcommand*{\@GLSuserii}[2][]{% +\new@ifnextchar[{\@GLSuserii@{#1}{#2}}{\@GLSuserii@{#1}{#2}[]}} +\def\@GLSuserii@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuserii{#2}}% +\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}% +}% +} +\newcommand*{\glsuseriii}{\@ifstar\@sglsuseriii\@glsuseriii} +\newcommand*{\@sglsuseriii}[1][]{\@glsuseriii[hyper=false,#1]} +\newcommand*{\@glsuseriii}[2][]{% +\new@ifnextchar[{\@glsuseriii@{#1}{#2}}{\@glsuseriii@{#1}{#2}[]}} +\def\@glsuseriii@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseriii{#2}}% +\@gls@link[#1]{#2}{\@glo@text#3}% +}% +} +\newcommand*{\Glsuseriii}{\@ifstar\@sGlsuseriii\@Glsuseriii} +\newcommand*{\@sGlsuseriii}[1][]{\@Glsuseriii[hyper=false,#1]} +\newcommand*{\@Glsuseriii}[2][]{% +\new@ifnextchar[{\@Glsuseriii@{#1}{#2}}{\@Glsuseriii@{#1}{#2}[]}} +\def\@Glsuseriii@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseriii{#2}}% +\@gls@link[#1]{#2}{% + \expandafter\makefirstuc\expandafter{\@glo@text}#3}% +}% +} +\newcommand*{\GLSuseriii}{\@ifstar\@sGLSuseriii\@GLSuseriii} +\newcommand*{\@sGLSuseriii}[1][]{\@GLSuseriii[hyper=false,#1]} +\newcommand*{\@GLSuseriii}[2][]{% +\new@ifnextchar[{\@GLSuseriii@{#1}{#2}}{\@GLSuseriii@{#1}{#2}[]}} +\def\@GLSuseriii@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseriii{#2}}% +\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}% +}% +} +\newcommand*{\glsuseriv}{\@ifstar\@sglsuseriv\@glsuseriv} +\newcommand*{\@sglsuseriv}[1][]{\@glsuseriv[hyper=false,#1]} +\newcommand*{\@glsuseriv}[2][]{% +\new@ifnextchar[{\@glsuseriv@{#1}{#2}}{\@glsuseriv@{#1}{#2}[]}} +\def\@glsuseriv@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseriv{#2}}% +\@gls@link[#1]{#2}{\@glo@text#3}% +}% +} +\newcommand*{\Glsuseriv}{\@ifstar\@sGlsuseriv\@Glsuseriv} +\newcommand*{\@sGlsuseriv}[1][]{\@Glsuseriv[hyper=false,#1]} +\newcommand*{\@Glsuseriv}[2][]{% +\new@ifnextchar[{\@Glsuseriv@{#1}{#2}}{\@Glsuseriv@{#1}{#2}[]}} +\def\@Glsuseriv@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseriv{#2}}% +\@gls@link[#1]{#2}{% + \expandafter\makefirstuc\expandafter{\@glo@text}#3}% +}% +} +\newcommand*{\GLSuseriv}{\@ifstar\@sGLSuseriv\@GLSuseriv} +\newcommand*{\@sGLSuseriv}[1][]{\@GLSuseriv[hyper=false,#1]} +\newcommand*{\@GLSuseriv}[2][]{% +\new@ifnextchar[{\@GLSuseriv@{#1}{#2}}{\@GLSuseriv@{#1}{#2}[]}} +\def\@GLSuseriv@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuseriv{#2}}% +\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}% +}% +} +\newcommand*{\glsuserv}{\@ifstar\@sglsuserv\@glsuserv} +\newcommand*{\@sglsuserv}[1][]{\@glsuserv[hyper=false,#1]} +\newcommand*{\@glsuserv}[2][]{% +\new@ifnextchar[{\@glsuserv@{#1}{#2}}{\@glsuserv@{#1}{#2}[]}} +\def\@glsuserv@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuserv{#2}}% +\@gls@link[#1]{#2}{\@glo@text#3}% +}% +} +\newcommand*{\Glsuserv}{\@ifstar\@sGlsuserv\@Glsuserv} +\newcommand*{\@sGlsuserv}[1][]{\@Glsuserv[hyper=false,#1]} +\newcommand*{\@Glsuserv}[2][]{% +\new@ifnextchar[{\@Glsuserv@{#1}{#2}}{\@Glsuserv@{#1}{#2}[]}} +\def\@Glsuserv@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuserv{#2}}% +\@gls@link[#1]{#2}{% + \expandafter\makefirstuc\expandafter{\@glo@text}#3}% +}% +} +\newcommand*{\GLSuserv}{\@ifstar\@sGLSuserv\@GLSuserv} +\newcommand*{\@sGLSuserv}[1][]{\@GLSuserv[hyper=false,#1]} +\newcommand*{\@GLSuserv}[2][]{% +\new@ifnextchar[{\@GLSuserv@{#1}{#2}}{\@GLSuserv@{#1}{#2}[]}} +\def\@GLSuserv@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuserv{#2}}% +\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}% +}% +} +\newcommand*{\glsuservi}{\@ifstar\@sglsuservi\@glsuservi} +\newcommand*{\@sglsuservi}[1][]{\@glsuservi[hyper=false,#1]} +\newcommand*{\@glsuservi}[2][]{% +\new@ifnextchar[{\@glsuservi@{#1}{#2}}{\@glsuservi@{#1}{#2}[]}} +\def\@glsuservi@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuservi{#2}}% +\@gls@link[#1]{#2}{\@glo@text#3}% +}% +} +\newcommand*{\Glsuservi}{\@ifstar\@sGlsuservi\@Glsuservi} +\newcommand*{\@sGlsuservi}[1][]{\@Glsuservi[hyper=false,#1]} +\newcommand*{\@Glsuservi}[2][]{% +\new@ifnextchar[{\@Glsuservi@{#1}{#2}}{\@Glsuservi@{#1}{#2}[]}} +\def\@Glsuservi@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuservi{#2}}% +\@gls@link[#1]{#2}{% + \expandafter\makefirstuc\expandafter{\@glo@text}#3}% +}% +} +\newcommand*{\GLSuservi}{\@ifstar\@sGLSuservi\@GLSuservi} +\newcommand*{\@sGLSuservi}[1][]{\@GLSuservi[hyper=false,#1]} +\newcommand*{\@GLSuservi}[2][]{% +\new@ifnextchar[{\@GLSuservi@{#1}{#2}}{\@GLSuservi@{#1}{#2}[]}} +\def\@GLSuservi@#1#2[#3]{% +\glsdoifexists{#2}{\edef\@glo@type{\glsentrytype{#2}}% +\protected@edef\@glo@text{\glsentryuservi{#2}}% +\@gls@link[#1]{#2}{\MakeUppercase{\@glo@text#3}}% +}% +} \newcommand*{\glsentryname}[1]{\csname glo@#1@name\endcsname} \newcommand*{\Glsentryname}[1]{% \protected@edef\@glo@text{\csname glo@#1@name\endcsname}% @@ -1748,10 +2112,34 @@ counter as its value}}{% \expandafter\makefirstuc\expandafter{\@glo@text}} \newcommand*{\glsentrytype}[1]{\csname glo@#1@type\endcsname} \newcommand*{\glsentrysort}[1]{\csname glo@#1@sort\endcsname} +\newcommand*{\glsentryuseri}[1]{\csname glo@#1@useri\endcsname} +\newcommand*{\Glsentryuseri}[1]{% +\protected@edef\@glo@text{\csname glo@#1@useri\endcsname}% +\expandafter\makefirstuc\expandafter{\@glo@text}} +\newcommand*{\glsentryuserii}[1]{\csname glo@#1@userii\endcsname} +\newcommand*{\Glsentryuserii}[1]{% +\protected@edef\@glo@text{\csname glo@#1@userii\endcsname}% +\expandafter\makefirstuc\expandafter{\@glo@text}} +\newcommand*{\glsentryuseriii}[1]{\csname glo@#1@useriii\endcsname} +\newcommand*{\Glsentryuseriii}[1]{% +\protected@edef\@glo@text{\csname glo@#1@useriii\endcsname}% +\expandafter\makefirstuc\expandafter{\@glo@text}} +\newcommand*{\glsentryuseriv}[1]{\csname glo@#1@useriv\endcsname} +\newcommand*{\Glsentryuseriv}[1]{% +\protected@edef\@glo@text{\csname glo@#1@useriv\endcsname}% +\expandafter\makefirstuc\expandafter{\@glo@text}} +\newcommand*{\glsentryuserv}[1]{\csname glo@#1@userv\endcsname} +\newcommand*{\Glsentryuserv}[1]{% +\protected@edef\@glo@text{\csname glo@#1@userv\endcsname}% +\expandafter\makefirstuc\expandafter{\@glo@text}} +\newcommand*{\glsentryuservi}[1]{\csname glo@#1@uservi\endcsname} +\newcommand*{\Glsentryuservi}[1]{% +\protected@edef\@glo@text{\csname glo@#1@uservi\endcsname}% +\expandafter\makefirstuc\expandafter{\@glo@text}} \newcommand*{\glshyperlink}[2][\glsentryname{\@glo@label}]{% \def\@glo@label{#2}% \@glslink{glo:#2}{#1}} -\define@key{glossadd}{counter}{\def\@glo@counter{#1}} +\define@key{glossadd}{counter}{\def\@gls@counter{#1}} \define@key{glossadd}{format}{\def\@glo@format{#1}} \define@key{glossadd}{types}{\def\@glo@type{#1}} \newcommand*{\glsadd}[2][]{% @@ -2132,6 +2520,8 @@ using \string\makeglossary}}} \@glossarystyle \makeatletter \@input@{\jobname.\csname @glotype@\@glo@type @in\endcsname}% +\IfFileExists{\jobname.\csname @glotype@\@glo@type @in\endcsname}{}% +{\null}% \ifglsxindy \@ifundefined{@xdy@\@glo@type @language}{% \protected@write\@auxout{}{% @@ -2277,16 +2667,7 @@ style `#1' undefined}{}}{% \ifglsacronym \newglossary[alg]{acronym}{acr}{acn}{\acronymname} \renewcommand*{\acronymtype}{acronym} - \defglsdisplay[acronym]{#1#4} - \defglsdisplayfirst[acronym]{#1#4} \fi -\newcommand{\newacronym}[4][]{% -\newglossaryentry{#2}{type=\acronymtype,% -name={#3},description={#4},text={#3},% -descriptionplural={#4\acrpluralsuffix},% -first={#4 (#3)},plural={#3\acrpluralsuffix},% -firstplural={\@glo@descplural\space (\@glo@plural)},% -#1}} \newcommand{\oldacronym}[4][\gls@label]{% \def\gls@label{#2}% \newacronym[#4]{#1}{#2}{#3}% @@ -2299,395 +2680,654 @@ firstplural={\@glo@descplural\space (\@glo@plural)},% \noexpand\gls{#1}\noexpand\xspace}}% }% } + \newcommand{\newacronym}[4][]{} \newcommand*{\acrpluralsuffix}{\glspluralsuffix} \newcommand*{\glsshortkey}{text} \newcommand*{\glsshortpluralkey}{plural} \newcommand*{\glslongkey}{description} \newcommand*{\glslongpluralkey}{descriptionplural} \newcommand*{\acrshort}[2][]{% -\new@ifnextchar[{\@acrshort{#1}{#2}}{\@acrshort{#1}{#2}[]}} -\def\@acrshort#1#2[#3]{\@glstext@{#1}{#2}[#3]} + \new@ifnextchar[{\@acrshort{#1}{#2}}{\@acrshort{#1}{#2}[]}} \newcommand*{\Acrshort}[2][]{% -\new@ifnextchar[{\@Acrshort{#1}{#2}}{\@Acrshort{#1}{#2}[]}} -\def\@Acrshort#1#2[#3]{\@Glstext@{#1}{#2}[#3]} + \new@ifnextchar[{\@Acrshort{#1}{#2}}{\@Acrshort{#1}{#2}[]}} \newcommand*{\ACRshort}[2][]{% -\new@ifnextchar[{\@ACRshort{#1}{#2}}{\@ACRshort{#1}{#2}[]}} -\def\@ACRshort#1#2[#3]{\@GLStext@{#1}{#2}[#3]} + \new@ifnextchar[{\@ACRshort{#1}{#2}}{\@ACRshort{#1}{#2}[]}} \newcommand*{\acrshortpl}[2][]{% -\new@ifnextchar[{\@acrshortpl{#1}{#2}}{\@acrshortpl{#1}{#2}[]}} -\def\@acrshortpl#1#2[#3]{\@glsplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@acrshortpl{#1}{#2}}{\@acrshortpl{#1}{#2}[]}} \newcommand*{\Acrshortpl}[2][]{% -\new@ifnextchar[{\@Acrshortpl{#1}{#2}}{\@Acrshortpl{#1}{#2}[]}} -\def\@Acrshortpl#1#2[#3]{\@Glsplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@Acrshortpl{#1}{#2}}{\@Acrshortpl{#1}{#2}[]}} \newcommand*{\ACRshortpl}[2][]{% -\new@ifnextchar[{\@ACRshortpl{#1}{#2}}{\@ACRshortpl{#1}{#2}[]}} -\def\@ACRshortpl#1#2[#3]{\@GLSplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@ACRshortpl{#1}{#2}}{\@ACRshortpl{#1}{#2}[]}} \newcommand*{\acrlong}[2][]{% -\new@ifnextchar[{\@acrlong{#1}{#2}}{\@acrlong{#1}{#2}[]}} -\def\@acrlong#1#2[#3]{\@glsdesc@{#1}{#2}[#3]} + \new@ifnextchar[{\@acrlong{#1}{#2}}{\@acrlong{#1}{#2}[]}} \newcommand*{\Acrlong}[2][]{% -\new@ifnextchar[{\@Acrlong{#1}{#2}}{\@Acrlong{#1}{#2}[]}} -\def\@Acrlong#1#2[#3]{\@Glsdesc@{#1}{#2}[#3]} + \new@ifnextchar[{\@Acrlong{#1}{#2}}{\@Acrlong{#1}{#2}[]}} \newcommand*{\ACRlong}[2][]{% -\new@ifnextchar[{\@ACRlong{#1}{#2}}{\@ACRlong{#1}{#2}[]}} -\def\@ACRlong#1#2[#3]{\@GLSdesc@{#1}{#2}[#3]} + \new@ifnextchar[{\@ACRlong{#1}{#2}}{\@ACRlong{#1}{#2}[]}} \newcommand*{\acrlongpl}[2][]{% -\new@ifnextchar[{\@acrlongpl{#1}{#2}}{\@acrlongpl{#1}{#2}[]}} -\def\@acrlongpl#1#2[#3]{\@glsdescplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@acrlongpl{#1}{#2}}{\@acrlongpl{#1}{#2}[]}} \newcommand*{\Acrlongpl}[2][]{% -\new@ifnextchar[{\@Acrlongpl{#1}{#2}}{\@Acrlongpl{#1}{#2}[]}} -\def\@Acrlongpl#1#2[#3]{\@Glsdescplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@Acrlongpl{#1}{#2}}{\@Acrlongpl{#1}{#2}[]}} \newcommand*{\ACRlongpl}[2][]{% -\new@ifnextchar[{\@ACRlongpl{#1}{#2}}{\@ACRlongpl{#1}{#2}[]}} -\def\@ACRlongpl#1#2[#3]{\@GLSdescplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@ACRlongpl{#1}{#2}}{\@ACRlongpl{#1}{#2}[]}} \newcommand*{\acrfull}[2][]{% -\new@ifnextchar[{\@acrfull{#1}{#2}}{\@acrfull{#1}{#2}[]}} -\def\@acrfull#1#2[#3]{\@glsfirst@{#1}{#2}[#3]} + \new@ifnextchar[{\@acrfull{#1}{#2}}{\@acrfull{#1}{#2}[]}} \newcommand*{\Acrfull}[2][]{% -\new@ifnextchar[{\@Acrfull{#1}{#2}}{\@Acrfull{#1}{#2}[]}} -\def\@Acrfull#1#2[#3]{\@Glsfirst@{#1}{#2}[#3]} + \new@ifnextchar[{\@Acrfull{#1}{#2}}{\@Acrfull{#1}{#2}[]}} \newcommand*{\ACRfull}[2][]{% -\new@ifnextchar[{\@ACRfull{#1}{#2}}{\@ACRfull{#1}{#2}[]}} -\def\@ACRfull#1#2[#3]{\@GLSfirst@{#1}{#2}[#3]} + \new@ifnextchar[{\@ACRfull{#1}{#2}}{\@ACRfull{#1}{#2}[]}} \newcommand*{\acrfullpl}[2][]{% -\new@ifnextchar[{\@acrfullpl{#1}{#2}}{\@acrfullpl{#1}{#2}[]}} -\def\@acrfullpl#1#2[#3]{\@glsfirstplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@acrfullpl{#1}{#2}}{\@acrfullpl{#1}{#2}[]}} \newcommand*{\Acrfullpl}[2][]{% -\new@ifnextchar[{\@Acrfullpl{#1}{#2}}{\@Acrfullpl{#1}{#2}[]}} -\def\@Acrfullpl#1#2[#3]{\@Glsfirstplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@Acrfullpl{#1}{#2}}{\@Acrfullpl{#1}{#2}[]}} \newcommand*{\ACRfullpl}[2][]{% -\new@ifnextchar[{\@ACRfullpl{#1}{#2}}{\@ACRfullpl{#1}{#2}[]}} -\def\@ACRfullpl#1#2[#3]{\@GLSfirstplural@{#1}{#2}[#3]} + \new@ifnextchar[{\@ACRfullpl{#1}{#2}}{\@ACRfullpl{#1}{#2}[]}} \newcommand{\acronymfont}[1]{#1} \newcommand{\firstacronymfont}[1]{\acronymfont{#1}} \newcommand*{\acrnameformat}[2]{\acronymfont{#1}} -\ifglsacrdescription - \ifglsacrfootnote - \renewcommand{\newacronym}[4][]{% - \newglossaryentry{#2}{type=\acronymtype,% - name={\acronymfont{#3}},% - sort={#3},% - text={#3},% - plural={#3\acrpluralsuffix},% - symbol={#4},% - symbolplural={#4\acrpluralsuffix},% - #1}} - \def\glsshortkey{text}% - \def\glsshortpluralkey{plural}% - \def\glslongkey{symbol}% - \def\glslongpluralkey{symbolplural}% - \def\@acrshort#1#2[#3]{\acronymfont{\@glstext@{#1}{#2}[#3]}} - \def\@Acrshort#1#2[#3]{\acronymfont{\@Glstext@{#1}{#2}[#3]}} - \def\@ACRshort#1#2[#3]{\acronymfont{\@GLStext@{#1}{#2}[#3]}} - \def\@acrshortpl#1#2[#3]{\acronymfont{\@glsplural@{#1}{#2}[#3]}} - \def\@Acrshortpl#1#2[#3]{\acronymfont{\@Glsplural@{#1}{#2}[#3]}} - \def\@ACRshortpl#1#2[#3]{\acronymfont{\@GLSplural@{#1}{#2}[#3]}} - \def\@acrlong#1#2[#3]{\@glssymbol@{#1}{#2}[#3]} - \def\@Acrlong#1#2[#3]{\@Glssymbol@{#1}{#2}[#3]} - \def\@ACRlong#1#2[#3]{\@GLSsymbol@{#1}{#2}[#3]} - \def\@acrlongpl#1#2[#3]{\@glssymbolplural@{#1}{#2}[#3]} - \def\@Acrlongpl#1#2[#3]{\@Glssymbolplural@{#1}{#2}[#3]} - \def\@ACRlongpl#1#2[#3]{\@GLSsymbolplural@{#1}{#2}[#3]} - \def\@acrfull#1#2[#3]{\@glssymbol@{#1}{#2}[#3] - (\acronymfont{\@glstext@{#1}{#2}[#3]})} - \def\@Acrfull#1#2[#3]{\@Glssymbol@{#1}{#2}[#3] - (\acronymfont{\@glstext@{#1}{#2}[#3]})} - \def\@ACRfull#1#2[#3]{\@GLSsymbol@{#1}{#2}[#3] - (\acronymfont{\@GLStext@{#1}{#2}[#3]})} - \def\@acrfullpl#1#2[#3]{\@glssymbolplural@{#1}{#2}[#3] - (\acronymfont{\@glsplural@{#1}{#2}[#3]})} - \def\@Acrfullpl#1#2[#3]{\@Glssymbolplural@{#1}{#2}[#3] - (\acronymfont{\@glsplural@{#1}{#2}[#3]})} - \def\@ACRfullpl#1#2[#3]{\@GLSsymbolplural@{#1}{#2}[#3] - (\acronymfont{\@GLSplural@{#1}{#2}[#3]})} - \defglsdisplayfirst[\acronymtype]{% - \firstacronymfont{#1}#4\noexpand\protect\noexpand\footnote{% - \noexpand\protect\noexpand\glslink - [\@gls@link@opts]{\@gls@link@label}{#3}}}% - \defglsdisplay[\acronymtype]{\acronymfont{#1}#4}% - \ifglsacrsmallcaps - \renewcommand*{\acronymfont}[1]{\textsc{#1}}% - \renewcommand*{\acrpluralsuffix}{% - \textup{\glspluralsuffix}}% - \else - \ifglsacrsmaller - \renewcommand*{\acronymfont}[1]{\textsmaller{#1}}% - \fi - \fi - \ifglsacrdua - \PackageError{glossaries}{Option clash: `footnote' and `dua' - can't both be set}{}% +\newtoks\glskeylisttok +\newtoks\glslabeltok +\newtoks\glsshorttok +\newtoks\glslongtok +\newcommand*{\newacronymhook}{} +\newcommand*{\SetDefaultAcronymDisplayStyle}[1]{% + \defglsdisplay[#1]{##1##4}% + \defglsdisplayfirst[#1]{##1##4}% +} +\newcommand*{\DefaultNewAcronymDef}{% + \edef\@do@newglossaryentry{% + \noexpand\newglossaryentry{\the\glslabeltok}% + {% + type=\acronymtype,% + name={\the\glsshorttok},% + description={\the\glslongtok},% + text={\the\glsshorttok},% + sort={\the\glsshorttok},% + descriptionplural={\the\glslongtok\noexpand\acrpluralsuffix},% + first={\the\glslongtok\space(\the\glsshorttok)},% + plural={\the\glsshorttok\noexpand\acrpluralsuffix},% + firstplural={\noexpand\@glo@descplural\space + (\noexpand\@glo@plural)},% + \the\glskeylisttok + }% + }% + \@do@newglossaryentry +} +\newcommand*{\SetDefaultAcronymStyle}{% + \@for\@gls@type:=\@glsacronymlists\do{% + \SetDefaultAcronymDisplayStyle{\@gls@type}% + }% + \renewcommand{\newacronym}[4][]{% + \ifx\@glsacronymlists\@empty + \def\@glo@type{\acronymtype}% + \setkeys{glossentry}{##1}% + \DeclareAcronymList{\@glo@type}% + \SetDefaultAcronymDisplayStyle{\@glo@type}% + \fi + \glskeylisttok{##1}% + \glslabeltok{##2}% + \glsshorttok{##3}% + \glslongtok{##4}% + \newacronymhook + \DefaultNewAcronymDef + }% + \renewcommand*{\acrpluralsuffix}{\glspluralsuffix}% + \renewcommand*{\glsshortkey}{text}% + \renewcommand*{\glsshortpluralkey}{plural}% + \renewcommand*{\glslongkey}{description}% + \renewcommand*{\glslongpluralkey}{descriptionplural}% + \def\@acrshort##1##2[##3]{\@glstext@{##1}{##2}[##3]}% + \def\@Acrshort##1##2[##3]{\@Glstext@{##1}{##2}[##3]}% + \def\@ACRshort##1##2[##3]{\@GLStext@{##1}{##2}[##3]}% + \def\@acrshortpl##1##2[##3]{\@glsplural@{##1}{##2}[##3]}% + \def\@Acrshortpl##1##2[##3]{\@Glsplural@{##1}{##2}[##3]}% + \def\@ACRshortpl##1##2[##3]{\@GLSplural@{##1}{##2}[##3]}% + \def\@acrlong##1##2[##3]{\@glsdesc@{##1}{##2}[##3]}% + \def\@Acrlong##1##2[##3]{\@Glsdesc@{##1}{##2}[##3]}% + \def\@ACRlong##1##2[##3]{\@GLSdesc@{##1}{##2}[##3]}% + \def\@acrlongpl##1##2[##3]{\@glsdescplural@{##1}{##2}[##3]}% + \def\@Acrlongpl##1##2[##3]{\@Glsdescplural@{##1}{##2}[##3]}% + \def\@ACRlongpl##1##2[##3]{\@GLSdescplural@{##1}{##2}[##3]}% + \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}% + \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}% + \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}% + \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}% + \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}% + \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}% +} +\newcommand*{\SetDescriptionFootnoteAcronymDisplayStyle}[1]{% + \defglsdisplayfirst[#1]{% + \firstacronymfont{##1}##4% + \protect\footnote{% + \glslink[\@gls@link@opts]{\@gls@link@label}{##3}}}% + \defglsdisplay[#1]{\acronymfont{##1}##4}% +} +\newcommand*{\DescriptionFootnoteNewAcronymDef}{% + \edef\@do@newglossaryentry{% + \noexpand\newglossaryentry{\the\glslabeltok}% + {% + type=\acronymtype,% + name={\noexpand\acronymfont{\the\glsshorttok}},% + sort={\the\glsshorttok},% + text={\the\glsshorttok},% + plural={\the\glsshorttok\noexpand\acrpluralsuffix},% + symbol={\the\glslongtok},% + symbolplural={\the\glslongtok\noexpand\acrpluralsuffix},% + \the\glskeylisttok + }% + }% + \@do@newglossaryentry +} +\newcommand*{\SetDescriptionFootnoteAcronymStyle}{% + \renewcommand{\newacronym}[4][]{% + \ifx\@glsacronymlists\@empty + \def\@glo@type{\acronymtype}% + \setkeys{glossentry}{##1}% + \DeclareAcronymList{\@glo@type}% + \SetDescriptionFootnoteAcronymDisplayStyle{\@glo@type}% \fi + \glskeylisttok{##1}% + \glslabeltok{##2}% + \glsshorttok{##3}% + \glslongtok{##4}% + \newacronymhook + \DescriptionFootnoteNewAcronymDef + }% + \def\glsshortkey{text}% + \def\glsshortpluralkey{plural}% + \def\glslongkey{symbol}% + \def\glslongpluralkey{symbolplural}% + \def\@acrshort##1##2[##3]{% + \acronymfont{\@glstext@{##1}{##2}[##3]}}% + \def\@Acrshort##1##2[##3]{% + \acronymfont{\@Glstext@{##1}{##2}[##3]}}% + \def\@ACRshort##1##2[##3]{% + \acronymfont{\@GLStext@{##1}{##2}[##3]}}% + \def\@acrshortpl##1##2[##3]{% + \acronymfont{\@glsplural@{##1}{##2}[##3]}}% + \def\@Acrshortpl##1##2[##3]{% + \acronymfont{\@Glsplural@{##1}{##2}[##3]}}% + \def\@ACRshortpl##1##2[##3]{% + \acronymfont{\@GLSplural@{##1}{##2}[##3]}}% + \def\@acrlong##1##2[##3]{\@glssymbol@{##1}{##2}[##3]}% + \def\@Acrlong##1##2[##3]{\@Glssymbol@{##1}{##2}[##3]}% + \def\@ACRlong##1##2[##3]{\@GLSsymbol@{##1}{##2}[##3]}% + \def\@acrlongpl##1##2[##3]{\@glssymbolplural@{##1}{##2}[##3]}% + \def\@Acrlongpl##1##2[##3]{\@Glssymbolplural@{##1}{##2}[##3]}% + \def\@ACRlongpl##1##2[##3]{\@GLSsymbolplural@{##1}{##2}[##3]}% + \def\@acrfull##1##2[##3]{\@glssymbol@{##1}{##2}[##3] + (\acronymfont{\@glstext@{##1}{##2}[##3]})}% + \def\@Acrfull##1##2[##3]{\@Glssymbol@{##1}{##2}[##3] + (\acronymfont{\@glstext@{##1}{##2}[##3]})}% + \def\@ACRfull##1##2[##3]{\@GLSsymbol@{##1}{##2}[##3] + (\acronymfont{\@GLStext@{##1}{##2}[##3]})}% + \def\@acrfullpl##1##2[##3]{\@glssymbolplural@{##1}{##2}[##3] + (\acronymfont{\@glsplural@{##1}{##2}[##3]})}% + \def\@Acrfullpl##1##2[##3]{\@Glssymbolplural@{##1}{##2}[##3] + (\acronymfont{\@glsplural@{##1}{##2}[##3]})}% + \def\@ACRfullpl##1##2[##3]{\@GLSsymbolplural@{##1}{##2}[##3] + (\acronymfont{\@GLSplural@{##1}{##2}[##3]})}% + \@for\@gls@type:=\@glsacronymlists\do{% + \SetDescriptionFootnoteAcronymDisplayStyle{\@gls@type}% + }% + \ifglsacrsmallcaps + \renewcommand*{\acronymfont}[1]{\textsc{##1}}% + \renewcommand*{\acrpluralsuffix}{% + \textup{\glspluralsuffix}}% \else - \ifglsacrdua - \ifglsacrsmallcaps - \PackageError{glossaries}{Option clash: `smallcaps' and `dua' - can't both be set}{}% - \else - \ifglsacrsmaller - \PackageError{glossaries}{Option clash: `smaller' and `dua' - can't both be set}{}% - \fi - \fi - \renewcommand{\newacronym}[4][]{% - \newglossaryentry{#2}{type=\acronymtype,% - name={#4},% - sort={#4}, - text={#4},% - plural={#4\acrpluralsuffix},% - symbol={#3},% - symbolplural={#3\acrpluralsuffix},% - #1}} - \def\glsshortkey{symbol}% - \def\glsshortpluralkey{symbolplural}% - \def\glslongkey{first}% - \def\glslongpluralkey{plural}% - \def\@acrshort#1#2[#3]{\acronymfont{\@glssymbol@{#1}{#2}[#3]}} - \def\@Acrshort#1#2[#3]{\acronymfont{\@Glssymbol@{#1}{#2}[#3]}} - \def\@ACRshort#1#2[#3]{\acronymfont{\@GLSsymbol@{#1}{#2}[#3]}} - \def\@acrshortpl#1#2[#3]{% - \acronymfont{\@glssymbolplural@{#1}{#2}[#3]}} - \def\@Acrshortpl#1#2[#3]{% - \acronymfont{\@Glssymbolplural@{#1}{#2}[#3]}} - \def\@ACRshortpl#1#2[#3]{% - \acronymfont{\@GLSsymbolplural@{#1}{#2}[#3]}} - \def\@acrlong#1#2[#3]{\@glsfirst@{#1}{#2}[#3]} - \def\@Acrlong#1#2[#3]{\@Glsfirst@{#1}{#2}[#3]} - \def\@ACRlong#1#2[#3]{\@GLSfirst@{#1}{#2}[#3]} - \def\@acrlongpl#1#2[#3]{\@glsfirstplural@{#1}{#2}[#3]} - \def\@Acrlongpl#1#2[#3]{\@Glsfirstplural@{#1}{#2}[#3]} - \def\@ACRlongpl#1#2[#3]{\@GLSfirstplural@{#1}{#2}[#3]} - \def\@acrfull#1#2[#3]{\@glsfirst@{#1}{#2}[#3] - (\acronymfont{\@glssymbol@{#1}{#2}[#3]})} - \def\@Acrfull#1#2[#3]{\@Glsfirst@{#1}{#2}[#3] - (\acronymfont{\@glssymbol@{#1}{#2}[#3]})} - \def\@ACRfull#1#2[#3]{\@GLSfirst@{#1}{#2}[#3] - (\acronymfont{\@GLSsymbol@{#1}{#2}[#3]})} - \def\@acrfullpl#1#2[#3]{\@glsfirstplural@{#1}{#2}[#3] - (\acronymfont{\@glssymbolplural@{#1}{#2}[#3]})} - \def\@Acrfullpl#1#2[#3]{\@Glsfirstplural@{#1}{#2}[#3] - (\acronymfont{\@glssymbolplural@{#1}{#2}[#3]})} - \def\@ACRfullpl#1#2[#3]{\@GLSfirstplural@{#1}{#2}[#3] - (\acronymfont{\@GLSsymbolplural@{#1}{#2}[#3]})} - \defglsdisplayfirst[\acronymtype]{#1#4} - \defglsdisplay[\acronymtype]{#1#4} - \else - \renewcommand{\newacronym}[4][]{% - \newglossaryentry{#2}{type=\acronymtype,% - name={\acrnameformat{#3}{#4}},% - sort={#3},% - first={#4},% - firstplural={#4\acrpluralsuffix},% - text={#3},% - plural={#3\acrpluralsuffix},% - symbol={\@glo@text},% - symbolplural={\@glo@plural},% - #1}} - \def\glsshortkey{text}% - \def\glsshortpluralkey{plural}% - \def\glslongkey{first}% - \def\glslongpluralkey{firstplural}% - \def\@acrshort#1#2[#3]{\acronymfont{\@glstext@{#1}{#2}[#3]}} - \def\@Acrshort#1#2[#3]{\acronymfont{\@Glstext@{#1}{#2}[#3]}} - \def\@ACRshort#1#2[#3]{\acronymfont{\@GLStext@{#1}{#2}[#3]}} - \def\@acrshortpl#1#2[#3]{\acronymfont{\@glsplural@{#1}{#2}[#3]}} - \def\@Acrshortpl#1#2[#3]{\acronymfont{\@Glsplural@{#1}{#2}[#3]}} - \def\@ACRshortpl#1#2[#3]{\acronymfont{\@GLSplural@{#1}{#2}[#3]}} - \def\@acrlong#1#2[#3]{\@glsfirst@{#1}{#2}[#3]} - \def\@Acrlong#1#2[#3]{\@Glsfirst@{#1}{#2}[#3]} - \def\@ACRlong#1#2[#3]{\@GLSfirst@{#1}{#2}[#3]} - \def\@acrlongpl#1#2[#3]{\@glsfirstplural@{#1}{#2}[#3]} - \def\@Acrlongpl#1#2[#3]{\@Glsfirstplural@{#1}{#2}[#3]} - \def\@ACRlongpl#1#2[#3]{\@GLSfirstplural@{#1}{#2}[#3]} - \def\@acrfull#1#2[#3]{\@glsfirst@{#1}{#2}[#3] - (\acronymfont{\@glssymbol@{#1}{#2}[#3]})} - \def\@Acrfull#1#2[#3]{\@Glsfirst@{#1}{#2}[#3] - (\acronymfont{\@glssymbol@{#1}{#2}[#3]})} - \def\@ACRfull#1#2[#3]{\@GLSfirst@{#1}{#2}[#3] - (\acronymfont{\@GLSsymbol@{#1}{#2}[#3]})} - \def\@acrfullpl#1#2[#3]{\@glsfirstplural@{#1}{#2}[#3] - (\acronymfont{\@glssymbolplural@{#1}{#2}[#3]})} - \def\@Acrfullpl#1#2[#3]{\@Glsfirstplural@{#1}{#2}[#3] - (\acronymfont{\@glssymbolplural@{#1}{#2}[#3]})} - \def\@ACRfullpl#1#2[#3]{\@GLSfirstplural@{#1}{#2}[#3] - (\acronymfont{\@GLSsymbolplural@{#1}{#2}[#3]})} - \defglsdisplayfirst[\acronymtype]{#1#4 (\firstacronymfont{#3})} - \defglsdisplay[\acronymtype]{\acronymfont{#1}#4} - \ifglsacrsmallcaps - \renewcommand{\acronymfont}[1]{\textsc{#1}} - \renewcommand*{\acrpluralsuffix}{% - \textup{\glspluralsuffix}}% - \else - \ifglsacrsmaller - \renewcommand*{\acronymfont}[1]{\textsmaller{#1}}% - \fi - \fi + \ifglsacrsmaller + \renewcommand*{\acronymfont}[1]{\textsmaller{##1}}% \fi \fi -\else - \ifglsacrfootnote - \renewcommand{\newacronym}[4][]{% - \newglossaryentry{#2}{type=\acronymtype,% - name={\acronymfont{#3}},% - sort={#3},% - text={#3},% - plural={#3\acrpluralsuffix},% - description={#4},% - descriptionplural={#4\acrpluralsuffix},% - #1}} -\def\glsshortkey{text}% -\def\glsshortpluralkey{plural}% -\def\glslongkey{description}% -\def\glslongpluralkey{descriptionplural}% - \defglsdisplayfirst[\acronymtype]{% - \firstacronymfont{#1}#4\noexpand\protect\noexpand\footnote{% - \noexpand\protect\noexpand\glslink - [\@gls@link@opts]{\@gls@link@label}{#2}}}% - \defglsdisplay[\acronymtype]{\acronymfont{#1}#4}% - \def\@acrshort#1#2[#3]{\acronymfont{\@glstext@{#1}{#2}[#3]}} - \def\@Acrshort#1#2[#3]{\acronymfont{\@Glstext@{#1}{#2}[#3]}} - \def\@ACRshort#1#2[#3]{\acronymfont{\@GLStext@{#1}{#2}[#3]}} - \def\@acrshortpl#1#2[#3]{\acronymfont{\@glsplural@{#1}{#2}[#3]}} - \def\@Acrshortpl#1#2[#3]{\acronymfont{\@Glsplural@{#1}{#2}[#3]}} - \def\@ACRshortpl#1#2[#3]{\acronymfont{\@GLSplural@{#1}{#2}[#3]}} - \def\@acrlong#1#2[#3]{\@glsdesc@{#1}{#2}[#3]} - \def\@Acrlong#1#2[#3]{\@Glsdesc@{#1}{#2}[#3]} - \def\@ACRlong#1#2[#3]{\@GLSdesc@{#1}{#2}[#3]} - \def\@acrlongpl#1#2[#3]{\@glsdescplural@{#1}{#2}[#3]} - \def\@Acrlongpl#1#2[#3]{\@Glsdescplural@{#1}{#2}[#3]} - \def\@ACRlongpl#1#2[#3]{\@GLSdescplural@{#1}{#2}[#3]} - \def\@acrfull#1#2[#3]{\@glsdesc@{#1}{#2}[#3] - (\@glstext@{#1}{#2}[#3])} - \def\@Acrfull#1#2[#3]{\@Glsdesc@{#1}{#2}[#3] - (\@glstext@{#1}{#2}[#3])} - \def\@ACRfull#1#2[#3]{\@GLSdesc@{#1}{#2}[#3] - (\@GLStext@{#1}{#2}[#3])} - \def\@acrfullpl#1#2[#3]{\@glsdescplural@{#1}{#2}[#3] - (\@glsplural@{#1}{#2}[#3])} - \def\@Acrfullpl#1#2[#3]{\@Glsdesctext@{#1}{#2}[#3] - (\@glsplural@{#1}{#2}[#3])} - \def\@ACRfullpl#1#2[#3]{\@GLSdesctext@{#1}{#2}[#3] - (\@GLSplural@{#1}{#2}[#3])} + \ifglsacrdua + \PackageError{glossaries}{Option clash: `footnote' and `dua' + can't both be set}{}% + \fi +}% +\newcommand*{\SetDescriptionDUAAcronymDisplayStyle}[1]{% + \defglsdisplay[#1]{##1##4}% + \defglsdisplayfirst[#1]{##1##4}% +} +\newcommand*{\DescriptionDUANewAcronymDef}{% + \edef\@do@newglossaryentry{% + \noexpand\newglossaryentry{\the\glslabeltok}% + {% + type=\acronymtype,% + name={\the\glslongtok},% + sort={\the\glslongtok}, + text={\the\glslongtok},% + plural={\the\glslongtok\noexpand\acrpluralsuffix},% + symbol={\the\glsshorttok},% + symbolplural={\the\glsshorttok\noexpand\acrpluralsuffix},% + \the\glskeylisttok + }% + }% + \@do@newglossaryentry +} +\newcommand*{\SetDescriptionDUAAcronymStyle}{% + \ifglsacrsmallcaps + \PackageError{glossaries}{Option clash: `smallcaps' and `dua' + can't both be set}{}% + \else + \ifglsacrsmaller + \PackageError{glossaries}{Option clash: `smaller' and `dua' + can't both be set}{}% + \fi + \fi + \renewcommand{\newacronym}[4][]{% + \ifx\@glsacronymlists\@empty + \def\@glo@type{\acronymtype}% + \setkeys{glossentry}{##1}% + \DeclareAcronymList{\@glo@type}% + \SetDescriptionDUAAcronymDisplayStyle{\@glo@type}% + \fi + \glskeylisttok{##1}% + \glslabeltok{##2}% + \glsshorttok{##3}% + \glslongtok{##4}% + \newacronymhook + \DescriptionDUANewAcronymDef + }% + \def\glsshortkey{symbol}% + \def\glsshortpluralkey{symbolplural}% + \def\glslongkey{first}% + \def\glslongpluralkey{plural}% + \def\@acrshort##1##2[##3]{% + \acronymfont{\@glssymbol@{##1}{##2}[##3]}}% + \def\@Acrshort##1##2[##3]{% + \acronymfont{\@Glssymbol@{##1}{##2}[##3]}}% + \def\@ACRshort##1##2[##3]{% + \acronymfont{\@GLSsymbol@{##1}{##2}[##3]}}% + \def\@acrshortpl##1##2[##3]{% + \acronymfont{\@glssymbolplural@{##1}{##2}[##3]}}% + \def\@Acrshortpl##1##2[##3]{% + \acronymfont{\@Glssymbolplural@{##1}{##2}[##3]}}% + \def\@ACRshortpl##1##2[##3]{% + \acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]}}% + \def\@acrlong##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}% + \def\@Acrlong##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}% + \def\@ACRlong##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}% + \def\@acrlongpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}% + \def\@Acrlongpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}% + \def\@ACRlongpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}% + \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3] + (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}% + \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3] + (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}% + \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3] + (\acronymfont{\@GLSsymbol@{##1}{##2}[##3]})}% + \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3] + (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}% + \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3] + (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}% + \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3] + (\acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]})}% + \@for\@gls@type:=\@glsacronymlists\do{% + \SetDescriptionDUAAcronymDisplayStyle{\@gls@type}% + }% +}% +\newcommand*{\SetDescriptionAcronymDisplayStyle}[1]{% + \defglsdisplayfirst[#1]{% + ##1##4 (\firstacronymfont{##3})}% + \defglsdisplay[#1]{\acronymfont{##1}##4}% +} +\newcommand*{\DescriptionNewAcronymDef}{% + \edef\@do@newglossaryentry{% + \noexpand\newglossaryentry{\the\glslabeltok}% + {% + type=\acronymtype,% + name={\noexpand + \acrnameformat{\the\glsshorttok}{\the\glslongtok}},% + sort={\the\glsshorttok},% + first={\the\glslongtok},% + firstplural={\the\glslongtok\noexpand\acrpluralsuffix},% + text={\the\glsshorttok},% + plural={\the\glsshorttok\noexpand\acrpluralsuffix},% + symbol={\noexpand\@glo@text},% + symbolplural={\noexpand\@glo@plural},% + \the\glskeylisttok}% + }% + \@do@newglossaryentry +} +\newcommand*{\SetDescriptionAcronymStyle}{% + \renewcommand{\newacronym}[4][]{% + \ifx\@glsacronymlists\@empty + \def\@glo@type{\acronymtype}% + \setkeys{glossentry}{##1}% + \DeclareAcronymList{\@glo@type}% + \SetDescriptionAcronymDisplayStyle{\@glo@type}% + \fi + \glskeylisttok{##1}% + \glslabeltok{##2}% + \glsshorttok{##3}% + \glslongtok{##4}% + \newacronymhook + \DescriptionNewAcronymDef + }% + \def\glsshortkey{text}% + \def\glsshortpluralkey{plural}% + \def\glslongkey{first}% + \def\glslongpluralkey{firstplural}% + \def\@acrshort##1##2[##3]{% + \acronymfont{\@glstext@{##1}{##2}[##3]}}% + \def\@Acrshort##1##2[##3]{% + \acronymfont{\@Glstext@{##1}{##2}[##3]}}% + \def\@ACRshort##1##2[##3]{% + \acronymfont{\@GLStext@{##1}{##2}[##3]}}% + \def\@acrshortpl##1##2[##3]{% + \acronymfont{\@glsplural@{##1}{##2}[##3]}}% + \def\@Acrshortpl##1##2[##3]{% + \acronymfont{\@Glsplural@{##1}{##2}[##3]}}% + \def\@ACRshortpl##1##2[##3]{% + \acronymfont{\@GLSplural@{##1}{##2}[##3]}}% + \def\@acrlong##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}% + \def\@Acrlong##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}% + \def\@ACRlong##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}% + \def\@acrlongpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}% + \def\@Acrlongpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}% + \def\@ACRlongpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}% + \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3] + (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}% + \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3] + (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}% + \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3] + (\acronymfont{\@GLSsymbol@{##1}{##2}[##3]})}% + \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3] + (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}% + \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3] + (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}% + \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3] + (\acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]})}% + \@for\@gls@type:=\@glsacronymlists\do{% + \SetDescriptionAcronymDisplayStyle{\@gls@type}% + }% + \ifglsacrsmallcaps + \renewcommand{\acronymfont}[1]{\textsc{##1}} + \renewcommand*{\acrpluralsuffix}{% + \textup{\glspluralsuffix}}% + \else + \ifglsacrsmaller + \renewcommand*{\acronymfont}[1]{\textsmaller{##1}}% + \fi + \fi +}% +\newcommand*{\SetFootnoteAcronymDisplayStyle}[1]{% + \defglsdisplayfirst[#1]{% + \firstacronymfont{##1}##4\protect\footnote{% + \protect\glslink + [\@gls@link@opts]{\@gls@link@label}{##2}}}% + \defglsdisplay[#1]{\acronymfont{##1}##4}% +} +\newcommand*{\FootnoteNewAcronymDef}{% + \edef\@do@newglossaryentry{% + \noexpand\newglossaryentry{\the\glslabeltok}% + {% + type=\acronymtype,% + name={\noexpand\acronymfont{\the\glsshorttok}},% + sort={\the\glsshorttok},% + text={\the\glsshorttok},% + plural={\the\glsshorttok\noexpand\acrpluralsuffix},% + description={\the\glslongtok},% + descriptionplural={\the\glslongtok\noexpand\acrpluralsuffix},% + \the\glskeylisttok + }% + }% + \@do@newglossaryentry +} +\newcommand*{\SetFootnoteAcronymStyle}{% + \renewcommand{\newacronym}[4][]{% + \ifx\@glsacronymlists\@empty + \def\@glo@type{\acronymtype}% + \setkeys{glossentry}{##1}% + \DeclareAcronymList{\@glo@type}% + \SetFootnoteAcronymDisplayStyle{\@glo@type}% + \fi + \glskeylisttok{##1}% + \glslabeltok{##2}% + \glsshorttok{##3}% + \glslongtok{##4}% + \newacronymhook + \FootnoteNewAcronymDef + }% + \def\glsshortkey{text}% + \def\glsshortpluralkey{plural}% + \def\glslongkey{description}% + \def\glslongpluralkey{descriptionplural}% + \@for\@gls@type:=\@glsacronymlists\do{% + \SetFootnoteAcronymDisplayStyle{\@gls@type}% + }% + \def\@acrshort##1##2[##3]{\acronymfont{\@glstext@{##1}{##2}[##3]}}% + \def\@Acrshort##1##2[##3]{\acronymfont{\@Glstext@{##1}{##2}[##3]}}% + \def\@ACRshort##1##2[##3]{\acronymfont{\@GLStext@{##1}{##2}[##3]}}% + \def\@acrshortpl##1##2[##3]{% + \acronymfont{\@glsplural@{##1}{##2}[##3]}}% + \def\@Acrshortpl##1##2[##3]{% + \acronymfont{\@Glsplural@{##1}{##2}[##3]}}% + \def\@ACRshortpl##1##2[##3]{% + \acronymfont{\@GLSplural@{##1}{##2}[##3]}}% + \def\@acrlong##1##2[##3]{\@glsdesc@{##1}{##2}[##3]}% + \def\@Acrlong##1##2[##3]{\@Glsdesc@{##1}{##2}[##3]}% + \def\@ACRlong##1##2[##3]{\@GLSdesc@{##1}{##2}[##3]}% + \def\@acrlongpl##1##2[##3]{\@glsdescplural@{##1}{##2}[##3]}% + \def\@Acrlongpl##1##2[##3]{\@Glsdescplural@{##1}{##2}[##3]}% + \def\@ACRlongpl##1##2[##3]{\@GLSdescplural@{##1}{##2}[##3]}% + \def\@acrfull##1##2[##3]{\@glsdesc@{##1}{##2}[##3] + (\@glstext@{##1}{##2}[##3])}% + \def\@Acrfull##1##2[##3]{\@Glsdesc@{##1}{##2}[##3] + (\@glstext@{##1}{##2}[##3])}% + \def\@ACRfull##1##2[##3]{\@GLSdesc@{##1}{##2}[##3] + (\@GLStext@{##1}{##2}[##3])}% + \def\@acrfullpl##1##2[##3]{\@glsdescplural@{##1}{##2}[##3] + (\@glsplural@{##1}{##2}[##3])}% + \def\@Acrfullpl##1##2[##3]{\@Glsdesctext@{##1}{##2}[##3] + (\@glsplural@{##1}{##2}[##3])}% + \def\@ACRfullpl##1##2[##3]{\@GLSdesctext@{##1}{##2}[##3] + (\@GLSplural@{##1}{##2}[##3])}% + \ifglsacrsmallcaps + \renewcommand*{\acronymfont}[1]{\textsc{##1}}% + \renewcommand*{\acrpluralsuffix}{% + \textup{\glspluralsuffix}}% + \else + \ifglsacrsmaller + \renewcommand*{\acronymfont}[1]{\textsmaller{##1}}% + \fi + \fi + \ifglsacrdua + \PackageError{glossaries}{Option clash: `footnote' and `dua' + can't both be set}{}% + \fi +}% +\newcommand*{\SetSmallAcronymDisplayStyle}[1]{% + \defglsdisplayfirst[#1]{##1##4 (\firstacronymfont{##3})} + \defglsdisplay[#1]{\acronymfont{##1}##4}% +} +\newcommand*{\SmallNewAcronymDef}{% + \edef\@do@newglossaryentry{% + \noexpand\newglossaryentry{\the\glslabeltok}% + {% + type=\acronymtype,% + name={\noexpand\acronymfont{\the\glsshorttok}},% + sort={\the\glsshorttok},% + text={\noexpand\@glo@symbol},% + plural={\noexpand\@glo@symbolplural},% + first={\the\glslongtok},% + firstplural={\the\glslongtok\noexpand\acrpluralsuffix},% + description={\noexpand\@glo@first},% + descriptionplural={\noexpand\@glo@firstplural},% + symbol={\the\glsshorttok},% + symbolplural={\the\glsshorttok\noexpand\acrpluralsuffix},% + \the\glskeylisttok + }% + }% + \@do@newglossaryentry +} +\newcommand*{\SetSmallAcronymStyle}{% + \renewcommand{\newacronym}[4][]{% + \ifx\@glsacronymlists\@empty + \def\@glo@type{\acronymtype}% + \setkeys{glossentry}{##1}% + \DeclareAcronymList{\@glo@type}% + \SetSmallAcronymDisplayStyle{\@glo@type}% + \fi + \glskeylisttok{##1}% + \glslabeltok{##2}% + \glsshorttok{##3}% + \glslongtok{##4}% + \newacronymhook + \SmallNewAcronymDef + }% + \def\glsshortkey{symbol}% + \def\glsshortpluralkey{symbolplural}% + \def\glslongkey{first}% + \def\glslongpluralkey{firstplural}% + \@for\@gls@type:=\@glsacronymlists\do{% + \SetSmallAcronymDisplayStyle{\@gls@type}% + }% + \ifglsacrsmallcaps + \renewcommand*{\acronymfont}[1]{\textsc{##1}} + \renewcommand*{\acrpluralsuffix}{% + \textup{\glspluralsuffix}}% + \else + \renewcommand*{\acronymfont}[1]{\textsmaller{##1}} + \fi + \def\@acrshort##1##2[##3]{% + \acronymfont{\@glstext@{##1}{##2}[##3]}}% + \def\@Acrshort##1##2[##3]{% + \acronymfont{\@Glstext@{##1}{##2}[##3]}}% + \def\@ACRshort##1##2[##3]{% + \acronymfont{\@GLStext@{##1}{##2}[##3]}}% + \def\@acrshortpl##1##2[##3]{% + \acronymfont{\@glsplural@{##1}{##2}[##3]}}% + \def\@Acrshortpl##1##2[##3]{% + \acronymfont{\@Glsplural@{##1}{##2}[##3]}}% + \def\@ACRshortpl##1##2[##3]{% + \acronymfont{\@GLSplural@{##1}{##2}[##3]}}% + \def\@acrlong##1##2[##3]{\@glsfirst@{##1}{##2}[##3]}% + \def\@Acrlong##1##2[##3]{\@Glsfirst@{##1}{##2}[##3]}% + \def\@ACRlong##1##2[##3]{\@GLSfirst@{##1}{##2}[##3]}% + \def\@acrlongpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3]}% + \def\@Acrlongpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3]}% + \def\@ACRlongpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3]}% + \def\@acrfull##1##2[##3]{\@glsfirst@{##1}{##2}[##3] + (\acronymfont{\@glstext@{##1}{##2}[##3]})}% + \def\@Acrfull##1##2[##3]{\@Glsfirst@{##1}{##2}[##3] + (\acronymfont{\@glstext@{##1}{##2}[##3]})}% + \def\@ACRfull##1##2[##3]{\@GLSfirst@{##1}{##2}[##3] + (\acronymfont{\@GLStext@{##1}{##2}[##3]})}% + \def\@acrfullpl##1##2[##3]{\@glsfirstplural@{##1}{##2}[##3] + (\acronymfont{\@glsplural@{##1}{##2}[##3]})} + \def\@Acrfullpl##1##2[##3]{\@Glsfirstplural@{##1}{##2}[##3] + (\acronymfont{\@glsplural@{##1}{##2}[##3]})} + \def\@ACRfullpl##1##2[##3]{\@GLSfirstplural@{##1}{##2}[##3] + (\acronymfont{\@GLSplural@{##1}{##2}[##3]})} + \ifglsacrdua \ifglsacrsmallcaps - \renewcommand*{\acronymfont}[1]{\textsc{#1}}% - \renewcommand*{\acrpluralsuffix}{% - \textup{\glspluralsuffix}}% + \PackageError{glossaries}{Option clash: `smallcaps' and `dua' + can't both be set}{}% \else - \ifglsacrsmaller - \renewcommand*{\acronymfont}[1]{\textsmaller{#1}}% - \fi + \PackageError{glossaries}{Option clash: `smaller' and `dua' + can't both be set}{}% \fi - \ifglsacrdua - \PackageError{glossaries}{Option clash: `footnote' and `dua' - can't both be set}{}% + \fi +}% +\newcommand*{\SetDUADisplayStyle}[1]{% + \defglsdisplay[#1]{##1##4}% + \defglsdisplayfirst[#1]{##1##4}% +} +\newcommand*{\DUANewAcronymDef}{% + \edef\@do@newglossaryentry{% + \noexpand\newglossaryentry{\the\glslabeltok}% + {% + type=\acronymtype,% + name={\the\glsshorttok},% + text={\the\glslongtok},% + plural={\the\glslongtok\noexpand\acrpluralsuffix},% + description={\the\glslongtok},% + symbol={\the\glsshorttok},% + symbolplural={\the\glsshorttok\noexpand\acrpluralsuffix},% + \the\glskeylisttok + }% + }% + \@do@newglossaryentry +} +\newcommand*{\SetDUAStyle}{% + \renewcommand{\newacronym}[4][]{% + \ifx\@glsacronymlists\@empty + \def\@glo@type{\acronymtype}% + \setkeys{glossentry}{##1}% + \DeclareAcronymList{\@glo@type}% + \SetDUADisplayStyle{\@glo@type}% \fi - \else - \ifthenelse{\boolean{glsacrsmallcaps}\or\boolean{glsacrsmaller}}{% - \renewcommand{\newacronym}[4][]{% - \newglossaryentry{#2}{type=\acronymtype,% - name={\acronymfont{#3}},% - sort={#3},% - text={\@glo@symbol},% - plural={\@glo@symbolplural},% - first={#4},% - firstplural={#4\acrpluralsuffix},% - description={\@glo@first},% - descriptionplural={\@glo@firstplural},% - symbol={#3},% - symbolplural={#3\acrpluralsuffix},% - #1}} - \def\glsshortkey{symbol}% - \def\glsshortpluralkey{symbolplural}% - \def\glslongkey{first}% - \def\glslongpluralkey{firstplural}% - \defglsdisplayfirst[\acronymtype]{#1#4 (\firstacronymfont{#3})} - \defglsdisplay[\acronymtype]{\acronymfont{#1}#4} - \ifglsacrsmallcaps - \renewcommand*{\acronymfont}[1]{\textsc{#1}} - \renewcommand*{\acrpluralsuffix}{% - \textup{\glspluralsuffix}}% + \glskeylisttok{##1}% + \glslabeltok{##2}% + \glsshorttok{##3}% + \glslongtok{##4}% + \newacronymhook + \DUANewAcronymDef + }% + \def\glsshortkey{symbol}% + \def\glsshortpluralkey{symbolplural}% + \def\glslongkey{text}% + \def\glslongpluralkey{plural}% + \@for\@gls@type:=\@glsacronymlists\do{% + \SetDUADisplayStyle{\@gls@type}% + }% + \def\@acrshort##1##2[##3]{\@glssymbol@{##1}{##2}[##3]}% + \def\@Acrshort##1##2[##3]{\@Glssymbol@{##1}{##2}[##3]}% + \def\@ACRshort##1##2[##3]{\@GLSsymbol@{##1}{##2}[##3]}% + \def\@acrshortpl##1##2[##3]{\@glssymbolplural@{##1}{##2}[##3]}% + \def\@Acrshortpl##1##2[##3]{\@Glssymbolplural@{##1}{##2}[##3]}% + \def\@ACRshortpl##1##2[##3]{\@GLSsymbolplural@{##1}{##2}[##3]}% + \def\@acrlong##1##2[##3]{\@glstext@{##1}{##2}[##3]}% + \def\@Acrlong##1##2[##3]{\@Glstext@{##1}{##2}[##3]}% + \def\@ACRlong##1##2[##3]{\@GLStext@{##1}{##2}[##3]}% + \def\@acrlongpl##1##2[##3]{\@glsplural@{##1}{##2}[##3]}% + \def\@Acrlongpl##1##2[##3]{\@Glsplural@{##1}{##2}[##3]}% + \def\@ACRlongpl##1##2[##3]{\@GLSplural@{##1}{##2}[##3]}% + \def\@acrfull##1##2[##3]{\@glstext@{##1}{##2}[##3] + (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}% + \def\@Acrfull##1##2[##3]{\@Glstext@{##1}{##2}[##3] + (\acronymfont{\@glssymbol@{##1}{##2}[##3]})}% + \def\@ACRfull##1##2[##3]{\@GLStext@{##1}{##2}[##3] + (\acronymfont{\@GLSsymbol@{##1}{##2}[##3]})}% + \def\@acrfullpl##1##2[##3]{\@glsplural@{##1}{##2}[##3] + (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}% + \def\@Acrfullpl##1##2[##3]{\@Glsplural@{##1}{##2}[##3] + (\acronymfont{\@glssymbolplural@{##1}{##2}[##3]})}% + \def\@ACRfullpl##1##2[##3]{\@GLSplural@{##1}{##2}[##3] + (\acronymfont{\@GLSsymbolplural@{##1}{##2}[##3]})}% +}% +\newcommand*{\SetAcronymStyle}{% + \SetDefaultAcronymStyle + \ifglsacrdescription + \ifglsacrfootnote + \SetDescriptionFootnoteAcronymStyle + \else + \ifglsacrdua + \SetDescriptionDUAAcronymStyle \else - \renewcommand*{\acronymfont}[1]{\textsmaller{#1}} + \SetDescriptionAcronymStyle \fi - \def\@acrshort#1#2[#3]{\acronymfont{\@glstext@{#1}{#2}[#3]}} - \def\@Acrshort#1#2[#3]{\acronymfont{\@Glstext@{#1}{#2}[#3]}} - \def\@ACRshort#1#2[#3]{\acronymfont{\@GLStext@{#1}{#2}[#3]}} - \def\@acrshortpl#1#2[#3]{\acronymfont{\@glsplural@{#1}{#2}[#3]}} - \def\@Acrshortpl#1#2[#3]{\acronymfont{\@Glsplural@{#1}{#2}[#3]}} - \def\@ACRshortpl#1#2[#3]{\acronymfont{\@GLSplural@{#1}{#2}[#3]}} - \def\@acrlong#1#2[#3]{\@glsfirst@{#1}{#2}[#3]} - \def\@Acrlong#1#2[#3]{\@Glsfirst@{#1}{#2}[#3]} - \def\@ACRlong#1#2[#3]{\@GLSfirst@{#1}{#2}[#3]} - \def\@acrlongpl#1#2[#3]{\@glsfirstplural@{#1}{#2}[#3]} - \def\@Acrlongpl#1#2[#3]{\@Glsfirstplural@{#1}{#2}[#3]} - \def\@ACRlongpl#1#2[#3]{\@GLSfirstplural@{#1}{#2}[#3]} - \def\@acrfull#1#2[#3]{\@glsfirst@{#1}{#2}[#3] - (\acronymfont{\@glstext@{#1}{#2}[#3]})} - \def\@Acrfull#1#2[#3]{\@Glsfirst@{#1}{#2}[#3] - (\acronymfont{\@glstext@{#1}{#2}[#3]})} - \def\@ACRfull#1#2[#3]{\@GLSfirst@{#1}{#2}[#3] - (\acronymfont{\@GLStext@{#1}{#2}[#3]})} - \def\@acrfullpl#1#2[#3]{\@glsfirstplural@{#1}{#2}[#3] - (\acronymfont{\@glsplural@{#1}{#2}[#3]})} - \def\@Acrfullpl#1#2[#3]{\@Glsfirstplural@{#1}{#2}[#3] - (\acronymfont{\@glsplural@{#1}{#2}[#3]})} - \def\@ACRfullpl#1#2[#3]{\@GLSfirstplural@{#1}{#2}[#3] - (\acronymfont{\@GLSplural@{#1}{#2}[#3]})} - \ifglsacrdua - \ifglsacrsmallcaps - \PackageError{glossaries}{Option clash: `smallcaps' and `dua' - can't both be set}{}% - \else - \PackageError{glossaries}{Option clash: `smaller' and `dua' - can't both be set}{}% + \fi + \else + \ifglsacrfootnote + \SetFootnoteAcronymStyle + \else + \ifthenelse{\boolean{glsacrsmallcaps}\OR + \boolean{glsacrsmaller}}% + {% + \SetSmallAcronymStyle + }% + {% + \ifglsacrdua + \SetDUAStyle \fi - \fi - }{% - \ifglsacrdua - \renewcommand{\newacronym}[4][]{% - \newglossaryentry{#2}{type=\acronymtype,% - name={#3},% - text={#4},% - plural={#4\acrpluralsuffix},% - description={#4},% - symbol={#3},% - symbolplural={#3\acrpluralsuffix},% - #1}} - \def\glsshortkey{symbol}% - \def\glsshortpluralkey{symbolplural}% - \def\glslongkey{text}% - \def\glslongpluralkey{plural}% - \defglsdisplayfirst[\acronymtype]{#1#4} - \defglsdisplay[\acronymtype]{#1#4} - \def\@acrshort#1#2[#3]{\@glssymbol@{#1}{#2}[#3]} - \def\@Acrshort#1#2[#3]{\@Glssymbol@{#1}{#2}[#3]} - \def\@ACRshort#1#2[#3]{\@GLSsymbol@{#1}{#2}[#3]} - \def\@acrshortpl#1#2[#3]{\@glssymbolplural@{#1}{#2}[#3]} - \def\@Acrshortpl#1#2[#3]{\@Glssymbolplural@{#1}{#2}[#3]} - \def\@ACRshortpl#1#2[#3]{\@GLSsymbolplural@{#1}{#2}[#3]} - \def\@acrlong#1#2[#3]{\@glstext@{#1}{#2}[#3]} - \def\@Acrlong#1#2[#3]{\@Glstext@{#1}{#2}[#3]} - \def\@ACRlong#1#2[#3]{\@GLStext@{#1}{#2}[#3]} - \def\@acrlongpl#1#2[#3]{\@glsplural@{#1}{#2}[#3]} - \def\@Acrlongpl#1#2[#3]{\@Glsplural@{#1}{#2}[#3]} - \def\@ACRlongpl#1#2[#3]{\@GLSplural@{#1}{#2}[#3]} - \def\@acrfull#1#2[#3]{\@glstext@{#1}{#2}[#3] - (\acronymfont{\@glssymbol@{#1}{#2}[#3]})} - \def\@Acrfull#1#2[#3]{\@Glstext@{#1}{#2}[#3] - (\acronymfont{\@glssymbol@{#1}{#2}[#3]})} - \def\@ACRfull#1#2[#3]{\@GLStext@{#1}{#2}[#3] - (\acronymfont{\@GLSsymbol@{#1}{#2}[#3]})} - \def\@acrfullpl#1#2[#3]{\@glsplural@{#1}{#2}[#3] - (\acronymfont{\@glssymbolplural@{#1}{#2}[#3]})} - \def\@Acrfullpl#1#2[#3]{\@Glsplural@{#1}{#2}[#3] - (\acronymfont{\@glssymbolplural@{#1}{#2}[#3]})} - \def\@ACRfullpl#1#2[#3]{\@GLSplural@{#1}{#2}[#3] - (\acronymfont{\@GLSsymbolplural@{#1}{#2}[#3]})} - \fi - }% + }% + \fi \fi -\fi -\ifglsacrshortcuts +} +\SetAcronymStyle +\newcommand*{\DefineAcronymSynonyms}{% \let\acs\acrshort \let\Acs\Acrshort \let\acsp\acrshortpl @@ -2704,6 +3344,9 @@ firstplural={\@glo@descplural\space (\@glo@plural)},% \let\Ac\Gls \let\acp\glspl \let\Acp\Glspl +} +\ifglsacrshortcuts + \DefineAcronymSynonyms \fi \RequirePackage{glossary-hypernav} \@gls@loadlist |