summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-11-03 21:38:07 +0000
committerKarl Berry <karl@freefriends.org>2017-11-03 21:38:07 +0000
commite4d8f7684792e7652b447e6ad94b82ca72886fe3 (patch)
tree293c6ba9077b051a071953ff264008a647d713fd /Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.sty
parente9c70de7cb494496d1f0357ba7ae82c5c2b15447 (diff)
glossaries-extra (3nov17)
git-svn-id: svn://tug.org/texlive/trunk@45682 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.sty')
-rw-r--r--Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.sty738
1 files changed, 714 insertions, 24 deletions
diff --git a/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.sty b/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.sty
index a2bd79b1a12..67146a59603 100644
--- a/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.sty
+++ b/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra-stylemods.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-stylemods.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-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.
%%
%% \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,17 +39,35 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{glossaries-extra-stylemods}[2017/09/11 v1.20 (NLCT)]
+\ProvidesPackage{glossaries-extra-stylemods}[2017/11/03 v1.21 (NLCT)]
\newcommand*{\@glsxtr@loadstyles}{}
+\DeclareOption{all}{%
+ \appto\@glsxtr@loadstyles{%
+ \RequirePackage{glossary-inline}%
+ \RequirePackage{glossary-list}%
+ \RequirePackage{glossary-tree}%
+ \RequirePackage{glossary-mcols}%
+ \RequirePackage{glossary-long}%
+ \RequirePackage{glossary-longragged}%
+ \RequirePackage{glossary-longbooktabs}%
+ \RequirePackage{glossary-super}%
+ \RequirePackage{glossary-superragged}%
+ \RequirePackage{glossary-bookindex}%
+ }
+}
\DeclareOption*{%
\IfFileExists{glossary-\CurrentOption.sty}
{\eappto\@glsxtr@loadstyles{%
- \noexpand\RequirePackage{glossary-\CurrentOption}}}%
- {\PackageError{glossaries-extra-styles}%
- {Unknown option `\CurrentOption'}{}}
+ \noexpand\RequirePackage{glossary-\CurrentOption}}%
+ }%
+ {%
+ \PackageError{glossaries-extra-styles}%
+ {Unknown option `\CurrentOption'}{}%
+ }%
}
\ProcessOptions
\@glsxtr@loadstyles
+\providecommand*{\glsxtrprelocation}{\space}
\providecommand{\renewglossarystyle}[2]{%
\ifcsundef{@glsstyle@#1}%
{%
@@ -77,6 +95,124 @@
\glossentrydesc{##2}\glspostdescription}%
}
}
+{%
+}
+\ifdef{\@glsstyle@list}
+{%
+ \newcommand{\glslistprelocation}{\glsxtrprelocation}
+ \newcommand{\glslistchildprelocation}{\glslistprelocation}
+ \newcommand{\glslistchildpostlocation}{.}
+ \renewglossarystyle{list}{%
+ \renewenvironment{theglossary}%
+ {\begin{description}}{\end{description}}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand*{\glossentry}[2]{%
+ \item[\glsentryitem{##1}%
+ \glstarget{##1}{\glossentryname{##1}}]
+ \glossentrydesc{##1}\glspostdescription\glslistprelocation ##2}%
+ \renewcommand*{\subglossentry}[3]{%
+ \glssubentryitem{##2}%
+ \glstarget{##2}{\strut}\space
+ \glossentrydesc{##2}\glspostdescription
+ \glslistchildprelocation ##3\glslistchildpostlocation}%
+ \renewcommand*{\glsgroupskip}{\ifglsnogroupskip\else\indexspace\fi}%
+ }
+}
+{}
+\ifdef{\@glsstyle@altlist}
+{%
+ \renewglossarystyle{altlist}{%
+ \setglossarystyle{list}%
+ \renewcommand*{\glossentry}[2]{%
+ \item[\glsentryitem{##1}%
+ \glstarget{##1}{\glossentryname{##1}}]%
+ \mbox{}\par\nobreak\@afterheading
+ \glossentrydesc{##1}\glspostdescription\glslistprelocation ##2}%
+ \renewcommand{\subglossentry}[3]{%
+ \par
+ \glssubentryitem{##2}%
+ \glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription
+ \glslistchildprelocation ##3}%
+ }
+}
+{}
+\ifdef{\@glsstyle@listgroup}
+{%
+ \renewglossarystyle{listgroup}{%
+ \setglossarystyle{list}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item[\glslistgroupheaderfmt{\glsgetgrouptitle{##1}}]%
+ \mbox{}\par\nobreak\@afterheading
+ }%
+ }
+}
+{}
+\ifdef{\@glsstyle@listhypergroup}
+{%
+ \renewglossarystyle{listhypergroup}{%
+ \setglossarystyle{list}%
+ \renewcommand*{\glossaryheader}{%
+ \glslistnavigationitem{\glsnavigation}}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item[\glslistgroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}]%
+ \mbox{}\par\nobreak\@afterheading
+ }%
+ }
+}
+{}
+\ifdef{\@glsstyle@altlistgroup}
+{%
+ \renewglossarystyle{altlistgroup}{%
+ \setglossarystyle{altlist}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item[\glslistgroupheaderfmt{\glsgetgrouptitle{##1}}]%
+ \mbox{}\par\nobreak\@afterheading
+ }%
+ }
+}
+{}
+\ifdef{\@glsstyle@altlisthypergroup}
+{%
+ \renewglossarystyle{altlisthypergroup}{%
+ \setglossarystyle{altlist}%
+ \renewcommand*{\glossaryheader}{%
+ \glslistnavigationitem{\glsnavigation}}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item[\glslistgroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}]%
+ \mbox{}\par\nobreak\@afterheading
+ }%
+ }
+}
+{}
+\ifcsdef{@glsstyle@long}
+{%
+ \renewglossarystyle{long}{%
+ \renewenvironment{theglossary}%
+ {\begin{longtable}{lp{\glsdescwidth}}}%
+ {\end{longtable}}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand{\glossentry}[2]{%
+ \glsentryitem{##1}\glstarget{##1}{\glossentryname{##1}} &
+ \glossentrydesc{##1}\glspostdescription
+ \glsxtrprelocation ##2\tabularnewline
+ }%
+ \renewcommand{\subglossentry}[3]{%
+ &
+ \glssubentryitem{##2}%
+ \glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription
+ \glsxtrprelocation ##3\tabularnewline
+ }%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{ & \tabularnewline}%
+ \fi
+ }
+}
{}
\ifcsdef{@glsstyle@long3col}
{%
@@ -96,8 +232,11 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{%
- \ifglsnogroupskip\else & &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& &\tabularnewline}%
+ \fi
}
}
{}
@@ -121,8 +260,39 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
\glossentrysymbol{##2} & ##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{%
- \ifglsnogroupskip\else & & &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& & &\tabularnewline}%
+ \fi
+ }
+}
+{}
+\ifcsdef{@glsstyle@longragged}
+{%
+ \renewglossarystyle{longragged}{%
+ \renewenvironment{theglossary}%
+ {\begin{longtable}{l>{\raggedright}p{\glsdescwidth}}}%
+ {\end{longtable}}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand{\glossentry}[2]{%
+ \glsentryitem{##1}\glstarget{##1}{\glossentryname{##1}} &
+ \glossentrydesc{##1}\glspostdescription\glsxtrprelocation ##2%
+ \tabularnewline
+ }%
+ \renewcommand{\subglossentry}[3]{%
+ &
+ \glssubentryitem{##2}%
+ \glstarget{##2}{\strut}\glossentrydesc{##2}%
+ \glspostdescription\glsxtrprelocation ##3%
+ \tabularnewline
+ }%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{ & \tabularnewline}%
+ \fi
}
}
{}
@@ -145,8 +315,11 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{%
- \ifglsnogroupskip\else & &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& &\tabularnewline}%
+ \fi
}
}
{}
@@ -170,8 +343,39 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
\glossentrysymbol{##2} & ##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{%
- \ifglsnogroupskip\else & & &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& & &\tabularnewline}%
+ \fi
+ }
+}
+{}
+\ifcsdef{@glsstyle@super}
+{%
+ \renewglossarystyle{super}{%
+ \renewenvironment{theglossary}%
+ {\tablehead{}\tabletail{}%
+ \begin{supertabular}{lp{\glsdescwidth}}}%
+ {\end{supertabular}}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand{\glossentry}[2]{%
+ \glsentryitem{##1}\glstarget{##1}{\glossentryname{##1}} &
+ \glossentrydesc{##1}\glspostdescription
+ \glsxtrprelocation ##2\tabularnewline
+ }%
+ \renewcommand{\subglossentry}[3]{%
+ &
+ \glssubentryitem{##2}%
+ \glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription
+ \glsxtrprelocation ##3\tabularnewline
+ }%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& \tabularnewline}%
+ \fi
}
}
{}
@@ -194,8 +398,11 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{%
- \ifglsnogroupskip\else & &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{ & &\tabularnewline}%
+ \fi
}
}
{}
@@ -219,8 +426,40 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
\glossentrysymbol{##2} & ##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{%
- \ifglsnogroupskip\else & & &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& & &\tabularnewline}%
+ \fi
+ }
+}
+{}
+\ifcsdef{@glsstyle@superragged}
+{%
+ \renewglossarystyle{superragged}{%
+ \renewenvironment{theglossary}%
+ {\tablehead{}\tabletail{}%
+ \begin{supertabular}{l>{\raggedright}p{\glsdescwidth}}}%
+ {\end{supertabular}}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand{\glossentry}[2]{%
+ \glsentryitem{##1}\glstarget{##1}{\glossentryname{##1}} &
+ \glossentrydesc{##1}\glspostdescription\glsxtrprelocation ##2%
+ \tabularnewline
+ }%
+ \renewcommand{\subglossentry}[3]{%
+ &
+ \glssubentryitem{##2}%
+ \glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription
+ \glsxtrprelocation ##3%
+ \tabularnewline
+ }%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& \tabularnewline}%
+ \fi
}
}
{}
@@ -245,8 +484,11 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{\ifglsnogroupskip\else &
- &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{ & &\tabularnewline}%
+ \fi
}
}
{}
@@ -270,8 +512,11 @@
\glstarget{##2}{\strut}\glossentrydesc{##2}\glspostdescription &
\glossentrysymbol{##2} & ##3\tabularnewline
}%
- \renewcommand*{\glsgroupskip}{\ifglsnogroupskip\else & &
- &\tabularnewline\fi}%
+ \ifglsnogroupskip
+ \renewcommand*{\glsgroupskip}{}%
+ \else
+ \renewcommand*{\glsgroupskip}{& & &\tabularnewline}%
+ \fi
}
}
{}
@@ -284,13 +529,194 @@
#1\glsxtrpostdescription}
}
{}
+\ifdef{\@glsstyle@index}
+{
+ \newcommand*{\glstreeprelocation}{\glsxtrprelocation}
+ \newcommand*{\glstreechildprelocation}{\glstreeprelocation}
+ \renewglossarystyle{index}{%
+ \renewenvironment{theglossary}%
+ {\setlength{\parindent}{0pt}%
+ \setlength{\parskip}{0pt plus 0.3pt}%
+ \let\item\glstreeitem
+ \let\subitem\glstreesubitem
+ \let\subsubitem\glstreesubsubitem
+ }%
+ {\par}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand*{\glossentry}[2]{%
+ \item\glsentryitem{##1}%
+ \glstreenamefmt{\glstarget{##1}{\glossentryname{##1}}}%
+ \ifglshassymbol{##1}{\space(\glossentrysymbol{##1})}{}%
+ \glstreepredesc \glossentrydesc{##1}\glspostdescription
+ \glstreeprelocation ##2%
+ }%
+ \renewcommand{\subglossentry}[3]{%
+ \ifcase##1\relax
+ \item
+ \or
+ \subitem
+ \glssubentryitem{##2}%
+ \else
+ \subsubitem
+ \fi
+ \glstreenamefmt{\glstarget{##2}{\glossentryname{##2}}}%
+ \ifglshassymbol{##2}{\space(\glossentrysymbol{##2})}{}%
+ \glstreechildpredesc\glossentrydesc{##2}\glspostdescription
+ \glstreechildprelocation ##3%
+ }%
+ \renewcommand*{\glsgroupskip}{\ifglsnogroupskip\else\indexspace\fi}%
+ }
+}
+{}
+\ifdef{\@glsstyle@indexgroup}
+{%
+ \renewglossarystyle{indexgroup}{%
+ \setglossarystyle{index}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item\glstreegroupheaderfmt{\glsgetgrouptitle{##1}}%
+ \nopagebreak\indexspace
+ \nobreak\@afterheading
+ }%
+ }
+}
+{}
+\ifdef{\@glsstyle@indexhypergroup}
+{%
+ \renewglossarystyle{indexhypergroup}{%
+ \setglossarystyle{index}%
+ \renewcommand*{\glossaryheader}{%
+ \item\glstreenavigationfmt{\glsnavigation}%
+ \nobreak\@afterheading\indexspace}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item\glstreegroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace
+ \nobreak\@afterheading}%
+ }%
+}
+{}
+\ifdef{\@glsstyle@tree}
+{%
+ \renewglossarystyle{tree}{%
+ \renewenvironment{theglossary}%
+ {\setlength{\parindent}{0pt}%
+ \setlength{\parskip}{0pt plus 0.3pt}}%
+ {}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand{\glossentry}[2]{%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glsentryitem{##1}\glstreenamefmt{\glstarget{##1}{\glossentryname{##1}}}%
+ \ifglshassymbol{##1}{\space(\glossentrysymbol{##1})}{}%
+ \glstreepredesc\glossentrydesc{##1}\glspostdescription
+ \glstreeprelocation##2\par
+ }%
+ \renewcommand{\subglossentry}[3]{%
+ \hangindent##1\glstreeindent\relax
+ \parindent##1\glstreeindent\relax
+ \ifnum##1=1\relax
+ \glssubentryitem{##2}%
+ \fi
+ \glstreenamefmt{\glstarget{##2}{\glossentryname{##2}}}%
+ \ifglshassymbol{##2}{\space(\glossentrysymbol{##2})}{}%
+ \glstreechildpredesc\glossentrydesc{##2}\glspostdescription
+ \glstreechildprelocation ##3\par
+ }%
+ \renewcommand*{\glsgroupskip}{\ifglsnogroupskip\else\indexspace\fi}%
+ }%
+}
+{}
+\ifdef{\@glsstyle@treegroup}
+{%
+ \renewglossarystyle{treegroup}{%
+ \setglossarystyle{tree}%
+ \renewcommand{\glsgroupheading}[1]{\par
+ \noindent\glstreegroupheaderfmt{\glsgetgrouptitle{##1}}\par
+ \nopagebreak\indexspace\nobreak\@afterheading}%
+ }
+}
+{}
+\ifdef{\@glsstyle@treehypergroup}
+{%
+ \renewglossarystyle{treehypergroup}{%
+ \setglossarystyle{tree}%
+ \renewcommand*{\glossaryheader}{%
+ \par\noindent\glstreenavigationfmt{\glsnavigation}\par
+ \nobreak\@afterheading\indexspace}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par\noindent
+ \glstreegroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}\par
+ \nopagebreak\indexspace\nobreak\@afterheading}%
+ }
+}
+{}
+\ifdef{\@glsstyle@treenoname}
+{%
+ \renewglossarystyle{treenoname}{%
+ \renewenvironment{theglossary}%
+ {\setlength{\parindent}{0pt}%
+ \setlength{\parskip}{0pt plus 0.3pt}}%
+ {}%
+ \renewcommand*{\glossaryheader}{}%
+ \renewcommand*{\glsgroupheading}[1]{}%
+ \renewcommand{\glossentry}[2]{%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glsentryitem{##1}\glstreenamefmt{\glstarget{##1}{\glossentryname{##1}}}%
+ \ifglshassymbol{##1}{\space(\glossentrysymbol{##1})}{}%
+ \glstreepredesc\glossentrydesc{##1}\glspostdescription
+ \glstreeprelocation##2\par
+ }%
+ \renewcommand{\subglossentry}[3]{%
+ \hangindent##1\glstreeindent\relax
+ \parindent##1\glstreeindent\relax
+ \ifnum##1=1\relax
+ \glssubentryitem{##2}%
+ \fi
+ \glstarget{##2}{\strut}%
+ \glossentrydesc{##2}\glspostdescription\glstreechildprelocation##3\par
+ }%
+ \renewcommand*{\glsgroupskip}{\ifglsnogroupskip\else\indexspace\fi}%
+ }
+}
+{}
+\ifdef{\@glsstyle@treenonamegroup}
+{%
+ \renewglossarystyle{treenonamegroup}{%
+ \setglossarystyle{treenoname}%
+ \renewcommand{\glsgroupheading}[1]{\par
+ \noindent\glstreegroupheaderfmt
+ {\glsgetgrouptitle{##1}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}
+{}
+\ifdef{\@glsstyle@treenonamehypergroup}
+{%
+ \renewglossarystyle{treenonamehypergroup}{%
+ \setglossarystyle{treenoname}%
+ \renewcommand*{\glossaryheader}{%
+ \par\noindent\glstreenavigationfmt{\glsnavigation}\par
+ \nobreak\@afterheading\indexspace}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par\noindent
+ \glstreegroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nobreak\@afterheading}%
+ }
+}
+{}
\ifdef{\@glsstyle@alttree}
{%
\newcommand{\glsxtralttreeSymbolDescLocation}[2]{%
{%
\let\par\glsxtrAltTreePar
\ifglshassymbol{#1}{(\glossentrysymbol{#1})\space}{}%
- \glossentrydesc{#1}\glspostdescription \space #2\par
+ \glossentrydesc{#1}\glspostdescription\glstreeprelocation #2\par
}%
}
\newlength\glsxtrAltTreeIndent
@@ -307,6 +733,9 @@
\settowidth{\glsxtrtreetopindent}{\glstreenamefmt{\glsgetwidestname\space}}%
\glsxtrAltTreeIndent=\parindent
}
+ \newcommand*{\gglssetwidest}[2][0]{%
+ \csgdef{@glswidestname\romannumeral#1}{#2}%
+ }
\newcommand*{\eglssetwidest}[2][0]{%
\protected@csedef{@glswidestname\romannumeral#1}{#2}%
}
@@ -643,8 +1072,8 @@
\csname @glswidestname\romannumeral#1\endcsname\space}}%
}%
}
-\newcommand*{\glsxtrAltTreeSetHangIndent}{\hangindent\glstreeindent}
-\newcommand*{\glsxtrAltTreeSetSubHangIndent}[1]{\hangindent\glstreeindent}
+ \newcommand*{\glsxtrAltTreeSetHangIndent}{\hangindent\glstreeindent}
+ \newcommand*{\glsxtrAltTreeSetSubHangIndent}[1]{\hangindent\glstreeindent}
\renewglossarystyle{alttree}{%
\renewenvironment{theglossary}%
{%
@@ -704,6 +1133,267 @@
}%
{%
}
+\ifdef{\@glsstyle@alttreegroup}
+{%
+ \renewglossarystyle{alttreegroup}{%
+ \setglossarystyle{alttree}%
+ \renewcommand{\glsgroupheading}[1]{\par
+ \def\@gls@prevlevel{-1}%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glstreegroupheaderfmt{\glsgetgrouptitle{##1}}%
+ \nopagebreak\indexspace\nopagebreak
+ }%
+ }%
+}%
+{%
+}
+\ifdef{\@glsstyle@alttreehypergroup}
+{%
+ \renewglossarystyle{alttreehypergroup}{%
+ \setglossarystyle{alttree}%
+ \renewcommand*{\glossaryheader}{%
+ \par
+ \def\@gls@prevlevel{-1}%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glstreenavigationfmt{\glsnavigation}\par\indexspace
+ }%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par
+ \def\@gls@prevlevel{-1}%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glstreegroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}\par
+ \nopagebreak\indexspace\nopagebreak
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcolindexgroup}
+{%
+ \renewglossarystyle{mcolindexgroup}{%
+ \setglossarystyle{mcolindex}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item\glstreegroupheaderfmt{\glsgetgrouptitle{##1}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcolindexhypergroup}
+{%
+ \renewglossarystyle{mcolindexhypergroup}{%
+ \setglossarystyle{mcolindex}%
+ \renewcommand*{\glossaryheader}{%
+ \item\glstreenavigationfmt{\glsnavigation}%
+ \indexspace
+ }%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item\glstreegroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcolindexspannav}
+{%
+ \renewglossarystyle{mcolindexspannav}{%
+ \setglossarystyle{index}%
+ \renewenvironment{theglossary}%
+ {%
+ \begin{multicols}{\glsmcols}[\noindent\glstreenavigationfmt{\glsnavigation}]%
+ \setlength{\parindent}{0pt}%
+ \setlength{\parskip}{0pt plus 0.3pt}%
+ \let\item\glstreeitem}%
+ {\end{multicols}}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \item\glstreegroupheaderfmt
+ {\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcoltreegroup}
+{%
+ \renewglossarystyle{mcoltreegroup}{%
+ \setglossarystyle{mcoltree}%
+ \renewcommand{\glsgroupheading}[1]{\par
+ \noindent\glstreegroupheaderfmt{\glsgetgrouptitle{##1}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcoltreehypergroup}
+{%
+ \renewglossarystyle{mcoltreehypergroup}{%
+ \setglossarystyle{mcoltree}%
+ \renewcommand*{\glossaryheader}{%
+ \par\noindent\glstreenavigationfmt{\glsnavigation}\par\indexspace
+ }%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par\noindent
+ \glstreegroupheaderfmt{\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcoltreespannav}
+{%
+ \renewglossarystyle{mcoltreespannav}{%
+ \setglossarystyle{tree}%
+ \renewenvironment{theglossary}%
+ {%
+ \begin{multicols}{\glsmcols}%
+ [\noindent\glstreenavigationfmt{\glsnavigation}]%
+ \setlength{\parindent}{0pt}%
+ \setlength{\parskip}{0pt plus 0.3pt}%
+ }%
+ {\end{multicols}}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par\noindent
+ \glstreegroupheaderfmt{\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcoltreenonamegroup}
+{%
+ \renewglossarystyle{mcoltreenonamegroup}{%
+ \setglossarystyle{mcoltreenoname}%
+ \renewcommand{\glsgroupheading}[1]{\par
+ \noindent\glstreegroupheaderfmt{\glsgetgrouptitle{##1}}%
+ \nopagebreak\indexspace\nobreak\@afterheading
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcoltreenonamehypergroup}
+{%
+ \renewglossarystyle{mcoltreenonamehypergroup}{%
+ \setglossarystyle{mcoltreenoname}%
+ \renewcommand*{\glossaryheader}{%
+ \par\noindent\glstreenavigationfmt{\glsnavigation}\par\indexspace}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par\noindent
+ \glstreegroupheaderfmt{\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nobreak\@afterheading}%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcoltreenonamespannav}
+{%
+ \renewglossarystyle{mcoltreenonamespannav}{%
+ \setglossarystyle{treenoname}%
+ \renewenvironment{theglossary}%
+ {%
+ \begin{multicols}{\glsmcols}%
+ [\noindent\glstreenavigationfmt{\glsnavigation}]%
+ \setlength{\parindent}{0pt}%
+ \setlength{\parskip}{0pt plus 0.3pt}%
+ }%
+ {\end{multicols}}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par\noindent
+ \glstreegroupheaderfmt{\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nobreak\@afterheading}%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcolalttree}
+{%
+ \renewglossarystyle{mcolalttree}{%
+ \setglossarystyle{alttree}%
+ \renewenvironment{theglossary}%
+ {%
+ \glsxtralttreeInit
+ \def\@gls@prevlevel{-1}%
+ \begin{multicols}{\glsmcols}%
+ }%
+ {\par\end{multicols}}%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcolalttreegroup}
+{%
+ \renewglossarystyle{mcolalttreegroup}{%
+ \setglossarystyle{mcolalttree}%
+ \renewcommand{\glsgroupheading}[1]{\par
+ \def\@gls@prevlevel{-1}%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glstreegroupheaderfmt{\glsgetgrouptitle{##1}}%
+ \nopagebreak\indexspace\nopagebreak
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcolalttreehypergroup}
+{%
+ \renewglossarystyle{mcolalttreehypergroup}{%
+ \setglossarystyle{mcolalttree}%
+ \renewcommand*{\glossaryheader}{%
+ \par
+ \def\@gls@prevlevel{-1}%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glstreenavigationfmt{\glsnavigation}%
+ \par\indexspace
+ }%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par
+ \def\@gls@prevlevel{-1}%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glstreegroupheaderfmt{\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nopagebreak
+ }%
+ }
+}%
+{%
+}
+\ifdef{\@glsstyle@mcolalttreespannav}
+{%
+ \renewglossarystyle{mcolalttreespannav}{%
+ \setglossarystyle{alttree}%
+ \renewenvironment{theglossary}%
+ {%
+ \glsxtralttreeInit
+ \def\@gls@prevlevel{-1}%
+ \begin{multicols}{\glsmcols}%
+ [\noindent\glstreenavigationfmt{\glsnavigation}]%
+ }%
+ {\par\end{multicols}}%
+ \renewcommand*{\glsgroupheading}[1]{%
+ \par
+ \def\@gls@prevlevel{-1}%
+ \hangindent0pt\relax
+ \parindent0pt\relax
+ \glstreegroupheaderfmt{\glsnavhypertarget{##1}{\glsgetgrouptitle{##1}}}%
+ \nopagebreak\indexspace\nopagebreak
+ }%
+ }
+}%
+{%
+}
\ifx\@glossary@default@style\relax
\else
\setglossarystyle{\@glsxtr@current@style}