From 8db1d9ae4386e820a532cc623a875cdca0e5d9fc Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 15 Nov 2017 22:52:32 +0000 Subject: glossaries-extra (15nov17) git-svn-id: svn://tug.org/texlive/trunk@45820 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/doc/latex/glossaries-extra/CHANGES | 15 + .../texmf-dist/doc/latex/glossaries-extra/README | 4 +- .../glossaries-extra/glossaries-extra-code.pdf | Bin 1063790 -> 1064005 bytes .../glossaries-extra/glossaries-extra-manual.html | 5021 ++++++++++---------- .../glossaries-extra/glossaries-extra-manual.pdf | Bin 830727 -> 833085 bytes .../glossaries-extra/glossaries-extra-manual.tex | 52 +- .../latex/glossaries-extra/sample-abbr-styles.pdf | Bin 512874 -> 512874 bytes .../doc/latex/glossaries-extra/sample-abbrv.pdf | Bin 44749 -> 44749 bytes .../doc/latex/glossaries-extra/sample-accsupp.pdf | Bin 80745 -> 80745 bytes .../latex/glossaries-extra/sample-acronym-desc.pdf | Bin 50358 -> 50358 bytes .../doc/latex/glossaries-extra/sample-acronym.pdf | Bin 36734 -> 36734 bytes .../doc/latex/glossaries-extra/sample-alias.pdf | Bin 43863 -> 43863 bytes .../latex/glossaries-extra/sample-altmodifier.pdf | Bin 35296 -> 35296 bytes .../glossaries-extra/sample-alttree-marginpar.pdf | Bin 91049 -> 91049 bytes .../latex/glossaries-extra/sample-alttree-sym.pdf | Bin 69519 -> 69519 bytes .../doc/latex/glossaries-extra/sample-alttree.pdf | Bin 54855 -> 54855 bytes .../glossaries-extra/sample-autoindex-hyp.pdf | Bin 141800 -> 141941 bytes .../latex/glossaries-extra/sample-autoindex.pdf | Bin 161248 -> 161382 bytes .../doc/latex/glossaries-extra/sample-crossref.pdf | Bin 41281 -> 41281 bytes .../latex/glossaries-extra/sample-crossref2.pdf | Bin 41603 -> 41603 bytes .../doc/latex/glossaries-extra/sample-docdef.pdf | Bin 45245 -> 45245 bytes .../latex/glossaries-extra/sample-entrycount.pdf | Bin 54610 -> 54610 bytes .../doc/latex/glossaries-extra/sample-external.pdf | Bin 55773 -> 55773 bytes .../doc/latex/glossaries-extra/sample-fmt.pdf | Bin 75114 -> 75114 bytes .../doc/latex/glossaries-extra/sample-footnote.pdf | Bin 63220 -> 63220 bytes .../doc/latex/glossaries-extra/sample-header.pdf | Bin 125899 -> 125899 bytes .../latex/glossaries-extra/sample-indexhook.pdf | Bin 42711 -> 42711 bytes .../latex/glossaries-extra/sample-initialisms.pdf | Bin 81603 -> 81603 bytes .../glossaries-extra/sample-mixed-abbrv-styles.pdf | Bin 57809 -> 57809 bytes .../latex/glossaries-extra/sample-mixedsort.pdf | Bin 45141 -> 45141 bytes .../doc/latex/glossaries-extra/sample-mixture.pdf | Bin 159680 -> 159822 bytes .../latex/glossaries-extra/sample-name-font.pdf | Bin 202082 -> 202082 bytes .../doc/latex/glossaries-extra/sample-nested.pdf | Bin 67724 -> 67724 bytes .../sample-noidx-restricteddocdefs.pdf | Bin 47572 -> 47572 bytes .../doc/latex/glossaries-extra/sample-onelink.pdf | Bin 44514 -> 44514 bytes .../glossaries-extra/sample-onthefly-utf8.pdf | Bin 106058 -> 106058 bytes .../glossaries-extra/sample-onthefly-xetex.pdf | Bin 19860 -> 19861 bytes .../doc/latex/glossaries-extra/sample-onthefly.pdf | Bin 43469 -> 43469 bytes .../doc/latex/glossaries-extra/sample-pages.pdf | Bin 38788 -> 38788 bytes .../doc/latex/glossaries-extra/sample-postdot.pdf | Bin 37047 -> 37047 bytes .../doc/latex/glossaries-extra/sample-postlink.pdf | Bin 67878 -> 67878 bytes .../doc/latex/glossaries-extra/sample-prefix.pdf | Bin 33107 -> 33107 bytes .../latex/glossaries-extra/sample-record.glstex | 5 + .../doc/latex/glossaries-extra/sample-record.pdf | Bin 48035 -> 48035 bytes .../glossaries-extra/sample-restricteddocdefs.pdf | Bin 47883 -> 47883 bytes .../latex/glossaries-extra/sample-suppl-hyp.pdf | Bin 34931 -> 34931 bytes .../glossaries-extra/sample-suppl-main-hyp.pdf | Bin 46388 -> 46388 bytes .../latex/glossaries-extra/sample-suppl-main.pdf | Bin 31596 -> 31596 bytes .../doc/latex/glossaries-extra/sample-suppl.pdf | Bin 13411 -> 13411 bytes .../doc/latex/glossaries-extra/sample-trans.pdf | Bin 49443 -> 49443 bytes .../doc/latex/glossaries-extra/sample-undef.pdf | Bin 33219 -> 33219 bytes .../glossaries-extra/sample-unitentrycount.pdf | Bin 61040 -> 61040 bytes .../doc/latex/glossaries-extra/sample.pdf | Bin 45734 -> 45734 bytes .../latex/glossaries-extra/glossaries-extra.dtx | 56 +- .../latex/glossaries-extra/glossaries-extra.ins | 2 +- .../glossaries-extra-stylemods.sty | 2 +- .../latex/glossaries-extra/glossaries-extra.sty | 16 +- .../latex/glossaries-extra/glossary-bookindex.sty | 2 +- 58 files changed, 2690 insertions(+), 2485 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES b/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES index 801ea4c1694..6f5adb127be 100644 --- a/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES +++ b/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES @@ -1,3 +1,18 @@ +1.24 (2017-11-14): + + * glossaries-extra-manual.tex: + + - corrected syntax of \glsxtrifhasfield and \GlsXtrIfFieldEqStr + (first argument is field, second is entry label) + + * glossaries-extra.sty: + + - added \glsxtrforcsvfield + + - added \glsxtrlocalsetgrouptitle + + - bug fix (\glsadd breaks with sort=use) + 1.23 (2017-11-12): * glossaries-extra.sty: diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/README b/Master/texmf-dist/doc/latex/glossaries-extra/README index 8358aa1a1cc..1f4500a23d8 100644 --- a/Master/texmf-dist/doc/latex/glossaries-extra/README +++ b/Master/texmf-dist/doc/latex/glossaries-extra/README @@ -1,6 +1,6 @@ -LaTeX Package : glossaries-extra v1.23 +LaTeX Package : glossaries-extra v1.24 -Last Modified : 2017-11-12 +Last Modified : 2017-11-14 Author : Nicola Talbot diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-code.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-code.pdf index f96b816f41e..5531cd22850 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-code.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-code.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-manual.html b/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-manual.html index ceb98b44bd7..38abb131d55 100644 --- a/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-manual.html +++ b/Master/texmf-dist/doc/latex/glossaries-extra/glossaries-extra-manual.html @@ -217,7 +217,7 @@ a span.HoLogo-TeX span.HoLogo-e{text-decoration:none;} >

glossaries-extra.sty v1.23: an extension to the +class="cmr-17">glossaries-extra.sty v1.24: an extension to the glossaries package

@@ -241,7 +241,7 @@ href="http://www.dickimaw-books.com/" class="url" >http://www.dickimaw-books.com/

2017-11-12

+class="cmr-12">2017-11-14

@@ -5499,13 +5499,25 @@ For example:
\glsxtrsetgrouptitle{A}{A (a)}
-

-

+

This uses a global assignment. If you need to scope the change you can +use +


\glsxtrlocalsetgrouptitle  \glsxtrlocalsetgrouptitle{label}{title} +

+

+

-

Top

2.9.1 Style Hooks

-

The commands

The commands \glossentryname and \glossentrydesc§5 Categories). This means you can make simple case-changing modifications to the name and description without defining a new glossary style. -

If you want to adapt a style to use another field instead of

If you want to adapt a style to use another field instead of name, you can use -



\glossentrynameother  label}{field}

-

+

This behaves just like \glossentryname (that is, it obeys description). See the key to field mappings table in the glossaries user manual. -

There is a hook after

There is a hook after \glossentryname and \Glossentryname: -



\glsxtrpostnamehook  \glsxtrpostnamehook{label}

-

+

By default this checks the indexname attribute. If the attribute exists for the category to which the label belongs, then the name is automatically indexed using -



\glsxtrdoautoindexname{}{indexname}

-

+

See §7 Auto-Indexing for further details. -

As from version 1.04, the post-name hook

As from version 1.04, the post-name hook \glsxtrpostnamehook will also use \glsxtrpostname (\glsentrysymbol{\glscurrententrylabel})}

-

-

The post-description code used within the glossary is modified so that it also +

+

The post-description code used within the glossary is modified so that it also does -



\glsxtrpostdescription  \glsxtrpostdescription

-

+

This occurs before the original \glspostdescription, so if the nopostdot=false option is used, it will be inserted before the terminating full stop. -

This new command will do

This new command will do \glsxtrpostdesccategory⟩ if it exists, where ⟨general\glsxtrpostdescacronym for entries with the category set to acronym. -

Since both

Since both \glossentry and \subglossentry set -



\glscurrententrylabel  \glscurrententrylabel

-

+

to the label for the current entry, you can use this within the definition of these post-description hooks if you need to reference the label. -

For example, suppose you want to insert the plural form in brackets after the +

For example, suppose you want to insert the plural form in brackets after the description in the glossary, but only for entries in the general category, then you could @@ -5664,10 +5676,10 @@ do: \renewcommand{\glsxtrpostdescgeneral}{\space  
 (plural: \glsentryplural{\glscurrententrylabel})}

-

This means you don’t have to define a custom glossary style, which you may find +

This means you don’t have to define a custom glossary style, which you may find more complicated. (It also allows more flexibility if you decide to change the underlying glossary style.) -

This feature can’t be used for glossary styles that ignore

This feature can’t be used for glossary styles that ignore \glspostdescription or if you redefine \glspostdescription without including glossaries-extra-stylemods Package

-

+

+

-

Top

2.9.2 Number List

-

The

The number list is now placed inside the argument of -



\GlsXtrFormatLocationList  \GlsXtrFormatLocationList{number list}

-

+

This is internally used by \glossaryentrynumbers. The \glossaryentrynumbers so that it doesn’t display th id="dx1-16004">number list, but it still saves the number list in case it’s required. -

If you want to suppress the

If you want to suppress the number list always use the nonumberlist option instead of redefining \glossaryentrynumbers to do nothing.
-

-

If you want to, for example, change the font for the entire

+

If you want to, for example, change the font for the entire number list then redefine \GlsXtrFormatLocationList as appropriate. Don’t modify \glossaryentrynumbers. -

Sometimes users like to insert “page” or “pages” in front of the

Sometimes users like to insert “page” or “pages” in front of the number list. This is quite fiddly to do with the base glossaries package, but glossaries-extra provides a way of doing this. First you need to enable this option and specify the text to display using: -



\GlsXtrEnablePreLocationTag  }{pages}

-

+

where ⟨page⟩ is the text to display if the number list only contains a single location and @@ -5758,28 +5770,28 @@ class="cmti-10">pages⟩ is the text to display otherwise. For examp

\GlsXtrEnablePreLocationTag{Page: }{Pages: }
-

An extra run is required when using this command. -

Use

An extra run is required when using this command. +

Use glsignore not @gobble as the format if you want to suppress the page number (and only index the entry once).
-

-

See the accompanying sample file

+

See the accompanying sample file sample-pages.tex. -

Note that

Note that bib2gls can be instructed to insert a prefix at the start of non-empty location lists, which can be used as an alternative to \GlsXtrEnablePreLocationTag. -

+

-

Top

2.9.3 The glossaries-extra-stylemods Package

-

As from v1.02,

As from v1.02, glossaries-extra now includes the package glossaries-extra-stylemods that @@ -5796,7 +5808,7 @@ class="cmss-10">glossaries-extra. For example:  
\usepackage{glossary-longragged}  
\usepackage{glossaries-extra-stylemods}

-

Alternatively you can load

Alternatively you can load glossary-name.sty at the same time by passing ⟨glossaries-extra-stylemods\usepackage[longragged]{glossaries-extra-stylemods}

-

Another option is to use the

Another option is to use the stylemods key when you load long3col \usepackage[style=long3col,stylemods]{glossaries-extra}

-

Or the value of

Or the value of stylemods may be a comma-separated list of the style package @@ -5841,7 +5853,7 @@ identifiers. For example:

\usepackage[style=mcoltree,stylemods=mcols]{glossaries-extra}
-

Remember to group the value if it contains any commas: +

Remember to group the value if it contains any commas: @@ -5849,8 +5861,8 @@ identifiers. For example:

\usepackage[stylemods={mcols,longbooktabs}]{glossaries-extra}
-

-

Note that the

+

Note that the inline style is dealt with slightly differently. The original definition provided by the nopostdot option, but the post-description category hook can still be used. -

The

The tabular-like styles, such as \printglossary, \printnoidxglossary or \printunsrtglossary, you must also reset the glossary style. -

As from version 1.21, the hard-coded

As from version 1.21, the hard-coded \space before the number list in many of the predefined styles is replaced with -



\glsxtrprelocation  \glsxtrprelocation

-

+

This just defaults to \space but may be redefined as required. For example: @@ -5922,27 +5934,27 @@ class="cmtt-10">\space but may be redefined as required. For example:

\renewcommand{\glsxtrprelocation}{\dotfill}
-

-

The

+

The list styles use -



\glsxtrprelocation  \glslistprelocation

-

+

(which defaults to \glsxtrprelocation) for top-level items and -



\glslistchildprelocation  \glslistchildprelocation

-

+

(which defaults to \glslistprelocation) for child items. -

For just the

For just the list style and its letter group variations (not the altlistlistdottednumber list for child entries is followed by -



\glslistchildpostlocation  \glslistchildpostlocation

-

+

which defaults to a full stop. -

The default value of

The default value of \glslistdottedwidth is changed so that it’s set at the start of the document (if it hasn’t been changed in the preamble). This should take into account situations where \hsize isn’t set until the start of the document. -

The

The index-like and tree-like styles insert the pre-number list space with -



\glstreeprelocation  \glstreeprelocation

-

+

(which defaults to \glsxtrprelocation) for top-level items and -



\glstreechildprelocation  \glstreechildprelocation

-

+

(which defaults to \glstreeprelocation) for child items. -

As from version 1.05, the

As from version 1.05, the glossaries-extra-stylemods package provides some additional commands for use with the alttreenotree option has been used when loading glossaries. -



\gglssetwidest  level]{name}

-

+

(New to version 1.21.) This is like \glssetwidest (provided by glossary-tree) but performs a global assignment. -



\eglssetwidest  level]{name}

-

+

This is like \glssetwidest but performs a protected expansion on ⟨name⟩. This has a localised effect. For a global setting, use -



\xglssetwidest  }

-

+

The following only set the value if ⟨name⟩ is wider than the current value (new to version 1.23). Local update: -



\glsupdatewidest  level]{name}

-

+

Global update: -



\gglsupdatewidest  level]{name}

-

+

Locale update (expands ⟨name⟩): -



\eglsupdatewidest  level]{name}

-

+

Global update (expands ⟨name⟩): -



\xglsupdatewidest  level]{name}

-

-

The widest entry value can later be retrieved using -


+

The widest entry value can later be retrieved using +


\glsgetwidestname  \glsgetwidestname

-

+

for the top-level entries and -



\glsgetwidestsubname  \glsgetwidestsubname{level}

-

+

for sub-entries, where ⟨level⟩ is the level number. -

Note that if you are using

Note that if you are using bib2glsTEX. -

The command

The command \glsfindwidesttoplevelname provided by glossary-tree has a CamelCase synonym: -



\glsFindWidestTopLevelName  \glsFindWidestTopLevelName[glossary list]

-

+

Similar commands are also provided: -



\glsFindWidestUsedTopLevelName  glossary list]

-

+

This has an additional check that the entry has been used. Naturally this is only useful if the glossaries that use the alttreealttree



\glsFindWidestUsedAnyName  \glsFindWidestUsedAnyName[glossary list]

-

+

This is like the previous command but if doesn’t check the parent key. This is useful if @@ -6173,17 +6185,17 @@ class="cmss-10">parent



\glsFindWidestAnyName  \glsFindWidestAnyName[glossary list]

-

+

This is like the previous command but doesn’t check if the entry has been used. -



\glsFindWidestUsedLevelTwo  \glsFindWidestUsedLevelTwo[glossary list]

-

+

This is like \glsFindWidestUsedTopLevelName but also sets the first two sub-levels as well. Any entry that has a great-grandparent is ignored. -



\glsFindWidestLevelTwo  \glsFindWidestLevelTwo[glossary list]

-

+

This is like the previous command but doesn’t check if the entry has been used. -



\glsFindWidestUsedAnyNameSymbol  glossary list]{register}

-

+

This is like \glsFindWidestUsedAnyName but also measures the symbol. The length of the widest symbol is stored in ⟨register⟩. -



\glsFindWidestAnyNameSymbol  list]{register}

-

+

This is like the previous command but it doesn’t check if the entry has been used. -



\glsFindWidestUsedAnyNameSymbolLocation  symbol register}{location register}

-

+

This is like \glsFindWidestUsedAnyNameSymbol but also measures the symbol register⟩ and the length of the widest number list is stored in ⟨location register⟩. -



\glsFindWidestAnyNameSymbolLocation  symbol register}{location register}

-

+

This is like the previous command but it doesn’t check if the entry has been used. -



\glsFindWidestUsedAnyNameLocation  glossary list]{register}

-

+

This is like \glsFindWidestUsedAnyNameSymbolLocation but doesn’t measure the symbol. The length of the widest number list is stored in ⟨register⟩. -



\glsFindWidestAnyNameLocation  list]{register}

-

+

This is like the previous command but doesn’t check if the entry has been used. -

The layout of the symbol, description and

The layout of the symbol, description and number list is governed by -



\glsxtralttreeSymbolDescLocation  label}{number list}

-

+

for top-level entries and -



\glsxtralttreeSubSymbolDescLocation  label}{number list}

-

+

for sub-entries. -

There is now a user level command that performs the initialisation for the

There is now a user level command that performs the initialisation for the alttree style: -



\glsxtralttreeInit  \glsxtralttreeInit

-

-

The paragraph indent for subsequent paragraphs in multi-paragraph descriptions +

+

The paragraph indent for subsequent paragraphs in multi-paragraph descriptions is provided by the length -



\glsxtrAltTreeIndent  \glsxtrAltTreeIndent

-

-

For additional commands that are available with the

+

For additional commands that are available with the alttree style, see the documented code (sample-alttree-marginpar.tex.

-

-

+

Top

3. Abbreviations

-

Abbreviations include acronyms (words formed from initial letters, such as +

Abbreviations include acronyms (words formed from initial letters, such as “laser”), initialisms (initial letters of a phrase, such as “html”, that aren’t pronounced as words) and contractions (where parts of words are omitted, often replaced by an apostrophe, such as “don’t”). The “acronym” code provided by the @@ -6392,10 +6404,10 @@ to be described for readers unfamiliar with the term). They are therefore more like a regular term, which may or may not require a description in the glossary. -

The

The glossaries-extra package corrects this misnomer, and provides better abbreviation handling, with -



\newabbreviation  }{long}

-

-

This sets the

+

This sets the category key to abbreviation by default, but that value may be @@ -6433,7 +6445,7 @@ href="#sec:categories">§5 Categories for further details. -

See

See §2.6 Nested Links regarding the pitfalls of using commands like \glsxtrshort within ⟨short⟩ or ⟨long⟩. -

Make sure that you set the category attributes before defining new abbreviations +

Make sure that you set the category attributes before defining new abbreviations or they may not be correctly applied.
-

-

The

+

The \newacronym command provided by the glossaries package is redefined by @@ -6461,7 +6473,7 @@ class="cmtt-10">acronym (see also href="#sec:acronymmods">§2.7 Acronym Style Modifications) so -



\newacronym  short}{long}

-

+

is now equivalent @@ -6500,7 +6512,7 @@ class="cmtt-10">}
-

The

The \newabbreviation command is superficially similar to the glossaries package’s abbreviationglossaries package, although they may produce similar results.) -

The way the abbreviations are displayed by commands like

The way the abbreviations are displayed by commands like \gls varies according to the abbreviation style. The styles are set according to the entry’s category so, unlike the base glossaries package, you can have different abbreviation styles within the same glossary. -

There are two types of full forms. The display full form, which is used on +

There are two types of full forms. The display full form, which is used on first use by commands like short-footnote, the display and inline full forms are different. -

These formatting commands aren’t stored in the

These formatting commands aren’t stored in the short, shortplural\glsxtrlong and the case-changing variants don’t use \glsfirstlongfont. -

You can apply the formatting command used for the short form to some arbitrary +

You can apply the formatting command used for the short form to some arbitrary text using -



\glsuseabbrvfont  text}{category}

-

+

where ⟨category⟩ is the category label that identifies the abbreviation style. Similarly for the formatting command use by the long form: -



\glsuselongfont  text}{category}

-

+

-

Top

3.1 Tagging Initials

-

If you would like to tag the initial letters in the long form such that those letters are +

If you would like to tag the initial letters in the long form such that those letters are underlined in the glossary but not in the main part of the document, you can use -



\GlsXtrEnableInitialTagging  } class="cmtt-10">{⟨cs}

-

+

before you define your abbreviations. -

This command (robustly) defines ⟨

This command (robustly) defines ⟨cs⟩ (a control sequence) to accept a single argument, which is the letter (or letters) that needs to be tagged. The normal behaviour of this command within the document is to simply do its argument, but in @@ -6623,21 +6635,21 @@ href="#catattr.tagging">tagging attribute set to “true”. For those cases it will use -



\glsxtrtagfont  \glsxtrtagfont{text}

-

+

This command defaults to \underline{text} but may be redefined as required. -

The control sequence ⟨

The control sequence ⟨cs⟩ can’t already be defined when used with the unstarred version of \GlsXtrEnableInitialTagging for safety reasons. The starred @@ -6646,7 +6658,7 @@ class="cmti-10">cs⟩. As with redefining any commands, ensure that you don’t redefine something important. In fact, just forget the existence of the starred version and let’s pretend I didn’t mention it. -

The first argument of

The first argument of \GlsXtrEnableInitialTagging is a comma-separated list of category names. The §5 Categories) but this must be done before the glossary is displayed. -

The accompanying sample file

The accompanying sample file sample-mixtures.tex uses initial tagging for both the acronymabbreviation \GlsXtrEnableInitialTagging{acronym,abbreviation}{\itag}

-

This defines the command

This defines the command \itag which can be used in the definitions. For example: @@ -6690,18 +6702,18 @@ example:  
\newabbreviation{xml}{XML}  
 {e\itag{x}tensible \itag{m}arkup \itag{l}anguage}

-

The underlining of the tagged letters only occurs in the glossary and then only for +

The underlining of the tagged letters only occurs in the glossary and then only for entries with the tagging attribute set. -

+

-

Top

3.2 Abbreviation Styles

-

The abbreviation style must be set before abbreviations are defined using: -


The abbreviation style must be set before abbreviations are defined using: +


\setabbreviationstyle  ]{style-name}

-

+

where ⟨style-name⟩ is the name of the style and ⟨category⟩ is the category label @@ -6733,11 +6745,11 @@ class="cmss-10">regular attribute to true. -

If you want to apply different styles to groups of abbreviations, assign a +

If you want to apply different styles to groups of abbreviations, assign a different category to each group and set the style for the given category.
-

-

Note that

+

Note that \setacronymstyle is disabled by glossaries-extra. Use

@@ -6758,7 +6770,7 @@ href="#sec:acronymmods">§2.7 Acronym Style Modifications). However the original acronym interface is incompatible with all the commands described here. -

Abbreviations can be used with the standard

Abbreviations can be used with the standard glossaries commands, such as \gls, @@ -6768,7 +6780,7 @@ class="cmtt-10">\acrshort\acronymfont). The short form can be produced with: -



\glsxtrshort  label}[insert]

-

+

(Use this instead of \acrshort.) -

The long form can be produced with -


The long form can be produced with +


\glsxtrlong  label}[insert]

-

+

(Use this instead of \acrlong.) -

The

The inline full form can be produced with -



\glsxtrfull  label}[insert]

-

+

(This this instead of \acrfull.) -

In general, it’s best not to use commands like

In general, it’s best not to use commands like \glsfirst for abbreviations, especially if you use the ⟨insert⟩ optional argument. Use either \gls (possibly with a reset) or \glsxtrfull.
-

-

As mentioned earlier, the inline full form may not necessarily match the format +

+

As mentioned earlier, the inline full form may not necessarily match the format used on first use with short-nolongfirst use, but the full form will display the long form followed by the short form in parentheses. -

If you want to use an abbreviation in a chapter or section title, use the +

If you want to use an abbreviation in a chapter or section title, use the commands described in §4 Entries in Sectioning Titles, Headers, Captions and Contents instead.
-

-

The arguments ⟨

+

The arguments ⟨options⟩, ⟨label⟩ and ⟨insert⟩ are the same as for commands such as \glstext. There are also analogous case-changing commands: -

First letter upper case short form: -


First letter upper case short form: +


\Glsxtrshort  label}[insert]

-

-

First letter upper case long form: -


+

First letter upper case long form: +


\Glsxtrlong  label}[insert]

-

-

First letter upper case inline full form: -


+

First letter upper case inline full form: +


\Glsxtrfull  label}[insert]

-

-

All upper case short form: +

+

All upper case short form: -



\Glsxtrshort  label}[insert]

-

-

All upper case long form: -


+

All upper case long form: +


\Glsxtrlong  label}[insert]

-

-

All upper case inline full form: -


+

All upper case inline full form: +


\GLSxtrfull  label}[insert]

-

-

Plural forms are also available. -

Short form plurals: -


+

Plural forms are also available. +

Short form plurals: +


\glsxtrshortpl  label}[insert]

-

-


+


\Glsxtrshortpl  label}[insert]

-

-


+


\GLSxtrshortpl  label}[insert]

-

-

Long form plurals: -


+

Long form plurals: +


\glsxtrlongpl  label}[insert]

-

-


+


\Glsxtrlongpl  label}[insert]

-

-


+


\GLSxtrlongpl  label}[insert]

-

-

Full form plurals: -


+

Full form plurals: +


\glsxtrfullpl  label}[insert]

-

-


+


\Glsxtrfullpl  label}[insert]

-

-


+


\GLSxtrfullpl  label}[insert]

-

-

Be careful about using

+

Be careful about using \glsentryfull, \Glsentryfull, \glsentryfullpl and @@ -7057,13 +7069,13 @@ class="cmtt-10">\glsentryshort etc.
-

-

+

+

-

Top

3.3 Shortcut Commands

-

The abbreviation shortcut commands can be enabled using the package option +

The abbreviation shortcut commands can be enabled using the package option shortcutstable 3.1. -


@@ -7403,10 +7415,10 @@ class="cmtt-10">\newabbreviation
-

Top

3.4 Predefined Abbreviation Styles

-

There are two types of abbreviation styles: those that treat the abbreviation as a +

There are two types of abbreviation styles: those that treat the abbreviation as a regular entry (so that \gls uses \gls uses \glsxtrgenabbrvfmt). -

The regular entry abbreviation styles set the

The regular entry abbreviation styles set the regular attribute to “true” for the @@ -7442,7 +7454,7 @@ class="cmss-10">long\glsxtrshort. -

The other abbreviation styles don’t modify the

The other abbreviation styles don’t modify the regular attribute. The \glsxtrfullformat that are defined by the style). -

In both cases, the

In both cases, the first use of \gls may not match the text produced by \glsfirst (and likewise for the plural and case-changing versions). -

The sample file

The sample file sample-abbr-styles.tex demonstrates all predefined styles described here. -

For the “sc” styles that use

For the “sc” styles that use \textsc, be careful about your choice of fonts as some only have limited support. For example, you may not be able to combine bold @@ -7481,52 +7493,52 @@ class="cmss-10">fontenc package with the T1 option or something similar.
-

-

The parenthetical styles, such as

+

The parenthetical styles, such as long-short, use -



\glsxtrparen  \glsxtrparen{text}

-

+

to set the parenthetical material. This just puts parentheses around the text: (⟨text⟩). -

The basic abbreviation styles, such as

The basic abbreviation styles, such as long-short and short-long use -



\glsabbrvdefaultfont  \glsabbrvdefaultfont{text}

-

+

for the short form. This just does ⟨text⟩ by default. (That is, no font change is applied.) On first use, -



\glsfirstabbrvdefaultfont  \glsfirstabbrvdefaultfont{text}

-

+

is used instead. By default, this just does \glsabbrvdefaultfont. The long form is formatted according to -



\glslongdefaultfont  }

-

+

which again just does ⟨text⟩ (no font change). On first use, -



\glsfirstlongdefaultfont  \glsfirstlongdefaultfont{text}

-

+

is used instead. This just does \glslongdefaultfont. The plural suffix used for the short form is given by -



\glsxtrabbrvpluralsuffix  \glsxtrabbrvpluralsuffix

-

+

which defaults to \glspluralsuffix. -

The small-cap styles, such as

The small-cap styles, such as long-short-sc and short-sc-long, use -



\glsabbrvscfont  \glsabbrvscfont{text}

-

+

which uses \textsc.3.1 On first use -



\glsabbrvdefaultfont  \glsfirstabbrvscfont{text}

-

+

is used instead. This uses \glsabbrvscfont by default. So redefine, \glsabbrvscfont to change first and subsequent uses or \glsfirstabbrvscfont to change just the first use. -

The long form for the small-cap styles uses

The long form for the small-cap styles uses \glslongdefaultfont or \glsfirstlongdefaultfont, as with the basic style. The suffix is given by -



\glsxtrscsuffix  \glsxtrscsuffix

-

+

This is defined as @@ -7612,7 +7624,7 @@ This is defined as

\newcommand*{\glsxtrscsuffix}{\glstextup{\glsxtrabbrvpluralsuffix}}
-

The

The \glstextup command is provided by glossaries and is used to switch off the @@ -7632,51 +7644,51 @@ attributes. See §5 Categories for further details.) -

The small styles, such as

The small styles, such as long-short-sm and short-sm-long, use -



\glsabbrvsmfont  \glsabbrvsmfont{text}

-

+

which uses \textsmaller. (This requires the relsizes package, which isn’t loaded by glossaries-extra, so must be loaded explicitly.) On first use -



\glsfirstabbrvsmfont  \glsfirstabbrvsmfont{text}

-

+

is used instead. This uses \glsabbrvsmfont by default. -

The long form for the smaller styles uses

The long form for the smaller styles uses \glslongdefaultfont or \glsfirstlongdefaultfont, as with the basic style. The suffix is given by -



\glsxtrsmsuffix  \glsxtrsmsuffix

-

+

which defaults to just \glsxtrabbrvpluralsuffix. -

The “short-em” (emphasize short) styles, such as

The “short-em” (emphasize short) styles, such as long-short-em or short-em-long, use -



\glsabbrvemfont  \glsabbrvemfont{text}

-

+

On first use -



\glsfirstabbrvemfont  \glsfirstabbrvemfont{text}

-

+

is used instead. This uses \glsabbrvemfont by default. The suffix is given by -



\glsxtremsuffix  \glsxtremsuffix

-

+

which defaults to just \glsxtrabbrvpluralsuffix. The long form is as for the basic style unless the style is a “long-em” style. -

The “long-em” (emphasize long) styles, such as

The “long-em” (emphasize long) styles, such as long-em-short-em or short-em-long-em, use -



\glsfirstlongemfont  \glsfirstlongemfont{long-form}

-

+

instead of \glsfirstlongdefaultfont{long-form} and -



\glslongemfont  }

-

+

instead of \glslongdefaultfont{long-form}. The first form \glsfirstlongemfont is initialised to use \glslongemfont. -

The user styles have similar commands: -


The user styles have similar commands: +


\glsabbrvuserfont  \glsabbrvuserfont{text}

-

+

for the short form, -



\glsfirstabbrvuserfont  \glsfirstabbrvuserfont{text}

-

+

for the first use short form, -



\glslonguserfont  \glslonguserfont{text}

-

+

for the long form, -



\glsfirstlonguserfont  \glsfirstlonguserfont{text}

-

+

for the first use long form, and -



\glsxtrusersuffix  \glsxtrusersuffix

-

+

for the short plural suffix. -

Similarly for the hyphen styles: -


Similarly for the hyphen styles: +


\glsabbrvhyphenfont  \glsabbrvhyphenfont{text}

-

+

for the short form, -



\glsfirstabbrvhyphenfont  \glsfirstabbrvhyphenfont{text}

-

+

for the first use short form, -



\glslonghyphenfont  \glslonghyphenfont{text}

-

+

for the long form, -



\glsfirstlonghyphenfont  \glsfirstlonghyphenfont{text}

-

+

for the first use long form, and -



\glsxtrhyphensuffix  \glsxtrhyphensuffix

-

+

for the short plural suffix. -

Similarly for the “only” styles, such as

Similarly for the “only” styles, such as long-only-short-only: -



\glsabbrvonlyfont  \glsabbrvonlyfont{text}

-

+

for the short form, -



\glsfirstabbrvonlyfont  \glsfirstabbrvonlyfont{text}

-

+

for the first use short form, -



\glslongonlyfont  \glslongonlyfont{text}

-

+

for the long form, -



\glsfirstlongonlyfont  }

-

+

for the first use long form, and -



\glsxtronlysuffix  \glsxtronlysuffix

-

+

for the short plural suffix. -

Note that by default inserted material (provided in the final optional argument of +

Note that by default inserted material (provided in the final optional argument of commands like \gls), is placed outside the font command in the predefined styles. To move it inside, use: -



\glsxtrinsertinsidetrue  \glsxtrinsertinsidetrue

-

+

This applies to all the predefined styles. For example: @@ -7909,17 +7921,17 @@ This applies to all the predefined styles. For example:  
\renewcommand*{\glsfirstlongdefaultfont}[1]{\emph{#1}}  
\glsxtrinsertinsidetrue

-

This will make the long form and the inserted text emphasized, whereas the default +

This will make the long form and the inserted text emphasized, whereas the default (without \glsxtrinsertinsidetrue) would place the inserted text outside of the emphasized font. -

Note that for some styles, such as the

Note that for some styles, such as the short-long, the inserted text would be placed inside the font command for the short form (rather than the long form in the above example). -

Remember that

Remember that \textsc renders lowercase letters as small capitals. Uppercase letters are rendered as normal uppercase letters, so if you specify the short form in @@ -7933,8 +7945,8 @@ convert its argument to lowercase. For example:

\renewcommand*{\glsabbrvscfont}[1]{\textsc{\MakeLowercase{#1}}}
-

-

If you want to easily switch between the “sc” and “sm” styles, you may find it +

+

If you want to easily switch between the “sc” and “sm” styles, you may find it easier to redefine this command to convert case: @@ -7944,16 +7956,16 @@ easier to redefine this command to convert case: \renewcommand*{\glsabbrvscfont}[1]{\textsc{\MakeTextLowercase{#1}}}  
\renewcommand*{\glsabbrvsmfont}[1]{\textsmaller{\MakeTextUppercase{#1}}}

-

-

Some of the styles use -


+

Some of the styles use +


\glsxtrfullsep  \glsxtrfullsep{label}

-

+

as a separator between the long and short forms. This is defined as a space by default, but may be changed as required. For example: @@ -7963,7 +7975,7 @@ default, but may be changed as required. For example:

\renewcommand*{\glsxtrfullsep}[1]{~}
-

or +

or @@ -7971,8 +7983,8 @@ default, but may be changed as required. For example:

\renewcommand*{\glsxtrfullsep}[1]{\glsacspace{#1}}
-

-

The new naming scheme for abbreviation styles is as follows:

+

+

The new naming scheme for abbreviation styles is as follows:

-

Or, if you are using

Or, if you are using hyperref: @@ -10831,8 +10843,8 @@ class="cmss-10">hyperref\texorpdfstring{\glsabbrvfont{\glsentryshort{html}}}{\glsentryshort{html}}}

-

-

Since this is a bit cumbersome, you might want to define a new command to do +

+

Since this is a bit cumbersome, you might want to define a new command to do this for you. However, if you have mixed styles this won’t work as commands like \gls and \MakeUppercase. -

The

The glossaries-extra package tries to resolve this by modifying \markright and @@ -10855,12 +10867,12 @@ class="cmtt-10">\markboth and \@starttoc. If you don’t like this change, you can restore their former definitions using -



\glsxtrRevertMarks  \glsxtrRevertMarks

-

+

In this case, you’ll have to use the glossaries manual’s recommendations of either simply using \chapter[A Chapter about \glsentryshort{html}]{A Chapter about \gls{html}}

-

Alternatively, you need to find a way to insert

Alternatively, you need to find a way to insert \glsxtrmarkhook and \@glsxtrinmark at the start of the header or table of contents either scoped or afterwards cancelled with \@glsxtrnotinmark and \glsxtrrestoremarkhook. -

If you don’t revert the mark commands back with

If you don’t revert the mark commands back with \glsxtrRevertMarks, you can use the commands described below in the argument of sectioning commands. You can still use them even if the mark commands have been reverted, but only where they don’t conflict with the page style. -

The commands listed below all use

The commands listed below all use \texorpdfstring if hyperref

These commands essentially behave as though you have used

These commands essentially behave as though you have used \glsxtrshort (or equivalent) with the options noindexheaduc attribute to “true” for the appropriate category. -

If you use one of the

If you use one of the \textsc styles, be aware that the default fonts don’t provide bold small-caps or italic small-caps. This means that if the chapter @@ -10926,239 +10938,239 @@ class="cmtt-10">\glsabbrvfont. You may want to consider using the slantsc package in this case.
-

-

Display the short form: -


+

Display the short form: +


\glsfmtshort  \glsfmtshort{label}

-

-

Display the plural short form: -


+

Display the plural short form: +


\glsfmtshortpl  \glsfmtshortpl{label}

-

-

First letter upper case singular short form: -


+

First letter upper case singular short form: +


\Glsfmtshort  \Glsfmtshort{label}

-

+

(No case-change applied to PDF bookmarks.) -

First letter upper case plural short form: +

First letter upper case plural short form: -



\Glsfmtshortpl  \Glsfmtshortpl{label}

-

+

(No case-change applied to PDF bookmarks.) -

Display the long form: -


Display the long form: +


\glsfmtlong  \glsfmtlong{label}

-

-

Display the plural long form: -


+

Display the plural long form: +


\glsfmtlongpl  \glsfmtlongpl{label}

-

-

First letter upper case singular long form: -


+

First letter upper case singular long form: +


\Glsfmtlong  \Glsfmtlong{label}

-

+

(No case-change applied to PDF bookmarks.) -

First letter upper case plural long form: -


First letter upper case plural long form: +


\Glsfmtlongpl  \Glsfmtlongpl{label}

-

+

(No case-change applied to PDF bookmarks.) -

There are similar commands for the full form, but note that these use the

There are similar commands for the full form, but note that these use the inline full form, which may be different from the full form used by \gls. -

Display the full form: -


Display the full form: +


\glsfmtfull  \glsfmtfull{label}

-

-

Display the plural full form: -


+

Display the plural full form: +


\glsfmtfullpl  \glsfmtfullpl{label}

-

-

First letter upper case singular full form: -


+

First letter upper case singular full form: +


\Glsfmtfull  \Glsfmtfull{label}

-

+

(No case-change applied to PDF bookmarks.) -

First letter upper case plural full form: -


First letter upper case plural full form: +


\Glsfmtfullpl  \Glsfmtfullpl{label}

-

+

(No case-change applied to PDF bookmarks.) -

There are also equivalent commands for the value of the

There are also equivalent commands for the value of the text field: -



\glsfmttext  \glsfmttext{label}

-

-

First letter converted to upper case: -


+

First letter converted to upper case: +


\Glsfmttext  \Glsfmttext{label}

-

+

(No case-change applied to PDF bookmarks.) -

The plural equivalents: +

The plural equivalents: -



\glsfmtplural  \glsfmtplural{label}

-

+

and -



\Glsfmtplural  \Glsfmtplural{label}

-

-

Likewise for the value of the

+

Likewise for the value of the name field: -



\glsfmtname  \glsfmtname{label}

-

-

First letter converted to upper case: -


+

First letter converted to upper case: +


\Glsfmtname  \Glsfmtname{label}

-

+

(No case-change applied to PDF bookmarks.) -

Similarly for the value of the

Similarly for the value of the first field: -



\glsfmtfirst  \glsfmtfirst{label}

-

-

First letter converted to upper case: -


+

First letter converted to upper case: +


\Glsfmtfirst  \Glsfmtfirst{label}

-

+

(No case-change applied to PDF bookmarks.) -

The plural equivalents: -


The plural equivalents: +


\glsfmtfirstpl  \glsfmtfirstpl{label}

-

+

and -



\Glsfmtfirstpl  \Glsfmtfirstpl{label}

-

+

-

-

+

Top

5. Categories

-

Each entry defined by

Each entry defined by \newglossaryentry (or commands that internally use it such as babel shorthands on that make some characters active.) -

The use of categories can give you more control over the way entries are displayed +

The use of categories can give you more control over the way entries are displayed in the text or glossary. Note that an entry’s category is independent of the glossary type. Be careful not to confuse category with type. -

The default category assumed by

The default category assumed by \newglossaryentry is labelled general. @@ -11192,7 +11204,7 @@ class="cmtt-10">\newacronym have the category set to acronym by default. -

Additionally, if you have enabled

Additionally, if you have enabled \newterm with the numbersnumber. -

You can obtain the category label for a given entry using -


You can obtain the category label for a given entry using +


\glscategory  \glscategory{label}

-

+

This is equivalent to commands like \glsentryname and so may be used in an expandable context. No error is generated if the entry doesn’t exist. -

You can test the category for a given entry using -


You can test the category for a given entry using +


\glsifcategory  part}{false part}

-

+

This is equivalent to

-

Here the

Here the short and longuser1 \glsuseri{dante}[.]

-

This will bring the punctuation character inside the

This will bring the punctuation character inside the link-text and it won’t be discarded. @@ -11462,21 +11474,21 @@ class="description">If this attribute is set to “true” any entry def class="cmtt-10">\newabbreviation will automatically have spaces in the long form replaced with -



\glsxtrwordsep  \glsxtrwordsep

-

+

and each word is encapsulated with -



\glsxtrword  \glsxtrword{word}

-

+

For example: @@ -11486,7 +11498,7 @@ class="cmtt-10">}


\glssetcategoryattribute{abbreviation}{markwords}{true}  
\newabbreviation{ip}{IP}{Internet Protocol}
-

is essentially the same as +

is essentially the same as @@ -11495,7 +11507,7 @@ class="cmtt-10">}


\newabbreviation{ip}{IP}  
{\glsxtrword{Internet}\glsxtrwordsep\glsxtrword{Protocol}}
-

The “hyphen” styles, such as

The “hyphen” styles, such as long-hyphen-short-hyphen, take advantage of this @@ -11517,15 +11529,15 @@ class="cmtt-10">\glsxtrlong. You can provide your own \newcommand{\hyplong}[2][]{%  
 {\def\glsxtrwordsep{-}\glsxtrlong[#1]{#2}}}

-

-

This setting will also adjust the long plural. -

This setting may result in the

+

This setting will also adjust the long plural. +

This setting may result in the \glsxtrword and \glsxtrwordsep markup ending up in the sort field, depending on the style in use.
-

+

markwords but applies to the short form. (Only useful for abbreviations that contain spaces.) -

This setting will only adjust the short plural if the

This setting will only adjust the short plural if the shortplural key isn’t used. This setting will take precedence over insertdots. -

This setting may result in the

This setting may result in the \glsxtrword and \glsxtrwordsep markup ending up in the sort field, depending on the style in use.
-

+

markshortwords. -

If you explicitly override the short plural using the

If you explicitly override the short plural using the shortplural key, you must explicitly insert the dots yourself (since there’s no way for the code to determine if the plural has a suffix that shouldn’t be followed by a dot).
-

-

This attribute is best used with the

+

This attribute is best used with the discardperiod attribute set to “true”. @@ -11669,7 +11681,7 @@ class="cmtt-10">\glsxtrifcounttrigger\cgls should behave. -

With

With glossaries, commands like \cgls use \cglsformat only if the previous @@ -11707,7 +11719,7 @@ class="cmtt-10">\capitalisewordsmfirstuc). If you want to use a different command you can redefine: -



\glsxtrfieldtitlecasecs  \glsxtrfieldtitlecasecs{phrase cs}

-

+

For example: @@ -11724,7 +11736,7 @@ class="cmtt-10">}

\newcommand*{\glsxtrfieldtitlecasecs}[1]{\xcapitalisefmtwords*{#1}}
-

(Note that the argument to

(Note that the argument to \glsxtrfieldtitlecasecs will be a control sequence whose replacement text is the entry’s description, which is why \xcapitalisefmtwords is needed instead of \capitalisefmtwords.)

-

Any other values of this attribute are ignored. Remember that there are design +

Any other values of this attribute are ignored. Remember that there are design limitations for both the first letter uppercasing and the title casing commands. See the mfirstuc\glossentrydesc \glssetcategoryattribute{general}{glossdescfont}{emph}

-

+

\glossentryname \glssetcategoryattribute{general}{glossnamefont}{emph}
-

Note that this overrides

Note that this overrides \glsnamefont which will only be used if this attribute hasn’t been set. -

Remember that glossary styles may additionally apply a font change, +

Remember that glossary styles may additionally apply a font change, such as the list styles which put the name in the optional argument of \item. @@ -11872,7 +11884,7 @@ class="cmtt-10">\gls will be set to the

\glssetcategoryattribute{general}{targeturl}{master-doc.pdf}
-

(See also the accompanying sample file

(See also the accompanying sample file sample-external.tex.) If the URL contains awkward characters (such as % or \glspercentchar and \glstildechar that expand to literal characters. -

If you want to a named anchor within the target URL (notionally adding +

If you want to a named anchor within the target URL (notionally adding #name⟩ to the URL), then you also need to set \glslabel within ⟨name⟩ which is set by commands like \gls to the entry’s label. -

All the predefined glossary styles start each entry listing with

All the predefined glossary styles start each entry listing with \glstarget which sets the anchor to \glolinkprefix\glslabel, so if you want @@ -11912,10 +11924,10 @@ class="cmss-10">targeturl \glssetcategoryattribute{general}{targetname}{\glolinkprefix\glslabel}

-

(If the target document changed

(If the target document changed \glolinkprefix then you will need to adjust the above as appropriate.) -

If the anchor is in the form ⟨

If the anchor is in the form ⟨name1.name2⟩ then use targetcategory for the ⟨name1⟩ part. -

For example: +

For example: @@ -11938,11 +11950,11 @@ class="cmti-10">name1⟩ part.  
\glssetcategoryattribute{general}{targetcategory}{page}  
\glssetcategoryattribute{general}{targetname}{7}

-

will cause all link text for

will cause all link text for general entries to link to master-doc.pdf#page.7 (page 7 of that PDF). -

If you want a mixture in your document of entries that link to an internal +

If you want a mixture in your document of entries that link to an internal glossary and entries that link to an external URL then you can use the starred form of \newignoredglossary\newignoredglossary  category=external,  
  description={external example}}

-

+

-

An attribute can be set using: -


An attribute can be set using: +


\glssetcategoryattribute  attribute-label}{value}

-

+

where ⟨category-label⟩ is the category label, ⟨attribute-label⟩ is the attribute label and ⟨value⟩ is the new value for the attribute. -

There is a shortcut version to set the

There is a shortcut version to set the regular attribute to “true”: -



\glssetregularcategory  \glssetregularcategory{category-label}

-

-

If you need to lookup the category label for a particular entry, you can use the +

+

If you need to lookup the category label for a particular entry, you can use the shortcut command: -



\glssetattribute  } class="cmtt-10">{⟨value}

-

+

This uses \glssetcategoryattribute with \glscategory to set the attribute. Note that this will affect all other entries that share this entry’s category. -

You can fetch the value of an attribute for a particular category using: -


You can fetch the value of an attribute for a particular category using: +


\glsgetcategoryattribute  } class="cmtt-10">{⟨attribute-label}

-

+

Again there is a shortcut if you need to lookup the category label for a given entry: -



\glsgetattribute  } -

-

You can test if an attribute has been assigned to a given category using: -


+

You can test if an attribute has been assigned to a given category using: +


\glshascategoryattribute  true code}{false code}

-

+

This uses etoolbox’s true code⟩ if the attribute has been set and isn’t blank and isn’t \relax. The shortcut if you need to lookup the category label from an entry is: -



\glshasattribute  code}{false code}

-

-

You can test the value of an attribute for a particular category using: -


+

You can test the value of an attribute for a particular category using: +


\glsifcategoryattribute  true-part}{false-part}

-

+

This tests if the attribute (given by ⟨attribute-label⟩) for the category (given by ⟨true-part⟩ is done. If the attribute isn’t set or is set but isn’t equal to ⟨value⟩, ⟨false part⟩ is done. -

For example: +

For example: @@ -12124,7 +12136,7 @@ class="cmti-10">false part⟩ is done.

\glsifcategoryattribute{general}{nohyper}{true}{NO HYPER}{HYPER}
-

This does “NO HYPER” if the

This does “NO HYPER” if the general category has the nohyper attribute set to true otherwise if does “HYPER”. -

With boolean-style attributes like

With boolean-style attributes like nohyper, make sure you always test for true not false in case the attribute hasn’t been set. -

Again there’s a shortcut if you need to lookup the category label from a particular +

Again there’s a shortcut if you need to lookup the category label from a particular entry: -



\glsifattribute  true-part} {false-part}

-

-

There’s also a shortcut to determine if a particular category has the

+

There’s also a shortcut to determine if a particular category has the regular attribute set to “true”: -



\glsifregularcategory  true-part}{false-part}

-

+

Alternatively, if you need to lookup the category for a particular entry: -



\glsifregular  }{false-part}

-

+

Note that if the regularregular attribute has been set to “false”: -



\glsifnotregularcategory  true-part}{false-part}

-

+

or for a particular entry: -



\glsifnotregular  }{false-part}

-

+

Again, if the regular attribute hasn’t been set, the above do ⟨false-part⟩, so these reverse commands aren’t logically opposite in the strict sense. -

You can iterate through all entries with a given category using: -


You can iterate through all entries with a given category using: +


\glsforeachincategory[glossary-labels]{label-cs}{body}

-

+

This iterates through all entries in the glossaries identified by the comma-separated list ⟨glossary-labels⟩ that have the category given by ⟨

Similarly, you can iterate through all entries that have a category with a given +

Similarly, you can iterate through all entries that have a category with a given attribute using: -



\glsforeachwithattribute  }{body}

-

+

This will do ⟨body⟩ for each entry that has a category with the attribute ⟨attribute-label⟩ set to ⟨attribute-value⟩. The remaining arguments are as the previous command. -

You can change the category for a particular entry using the standard glossary +

You can change the category for a particular entry using the standard glossary field changing commands, such as \glsfielddef. Alternatively, you can use -



\glsxtrsetcategory  }{category-label}

-

+

This will change the category to ⟨category-label⟩ for each entry listed in the comma-separated list ⟨\glsfieldxdef so it will expand ⟨category-label⟩ and make the change global. -

You can also change the category for all entries with a glossary or glossaries +

You can also change the category for all entries with a glossary or glossaries using: -



\glsxtrsetcategoryforall  } class="cmtt-10">{⟨category-label}

-

+

where ⟨glossary-labels⟩ is a comma-separated list of glossary labels.

-

-

+

Top

6. Entry Counting

-

As mentioned in

As mentioned in §2.4 Entry Counting Modifications, §5 Categories). -

Remember that entry counting only counts the number of times an entry is used +

Remember that entry counting only counts the number of times an entry is used by commands that change the first use flag. (That is, all those commands that mark the entry as having been used.) There are many commands that don’t modify this flag and they won’t contribute to the entry use count.
-

-

With

+

With glossaries-extra, you may use \cgls instead of shortcuts=ac). -

All upper case versions (not provided by

All upper case versions (not provided by glossaries) are also available: -



\cGLS  label}[insert]

-

+

and -



\cGLSpl  label}[insert]

-

+

These are analogous to \cgls and \cglspl but they use -



\cGLSformat  label}{insert}

-

+

and -



\cGLSplformat  label}{insert}

-

+

which convert the analogous \cglsformat and \cglsplformat to upper case. -

Just using

Just using glossaries: @@ -12476,8 +12488,8 @@ class="cmss-10">glossaries:  
\printglossaries  
\end{document}

-

-

If you switch to

+

If you switch to glossaries-extra you must set the entrycountentrycount\printglossaries  
\end{document}

-

-

When activated with

+

When activated with \glsenableentrycount, commands such as \cgls now use -



\glsxtrifcounttrigger  } class="cmtt-10">{⟨normal code}

-

+

to determine if the entry trips the entry count trigger. The ⟨trigger code⟩ uses commands like trigger code⟩ but the usual \gls behaviour in ⟨normal code⟩). -

The default definition is: +

The default definition is: @@ -12553,7 +12565,7 @@ class="cmti-10">normal code⟩).  
 {#3}%  
}

-

This means that if an entry is assigned to a category that has the

This means that if an entry is assigned to a category that has the entrycount @@ -12561,7 +12573,7 @@ attribute then the ⟨trigger code⟩ will be used if the previous count value (the number of times the entry was used on the last run) is greater than the value of the attribute. -

For example, to trigger normal use if the previous count value is greater than +

For example, to trigger normal use if the previous count value is greater than four: @@ -12570,8 +12582,8 @@ four:

\glssetcategoryattribute{abbreviation}{entrycount}{4}
-

-

There is a convenient command provided to enable entry counting, set the +

+

There is a convenient command provided to enable entry counting, set the entrycount\gls, etc to use \cgls etc: -



\GlsXtrEnableEntryCounting  } class="cmtt-10">{⟨value}

-

+

The first argument ⟨categories⟩ is a comma-separated list of categories. For each category, the value⟩. In addition, this does:  
\renewcommand*{\GLS}{\cGLS}%  
\renewcommand*{\GLSpl}{\cGLSpl}%

-

This makes it easier to enable entry-counting on existing documents. -

If you use

This makes it easier to enable entry-counting on existing documents. +

If you use \GlsXtrEnableEntryCounting more than once, subsequent uses will just set the entrycount attribute for each listed category. -

The above example document can then become: +

The above example document can then become: @@ -12636,12 +12648,12 @@ class="cmss-10">entrycount\printglossaries  
\end{document}

-

-

The standard entry-counting function describe above counts the number of times +

+

The standard entry-counting function describe above counts the number of times an entry has been marked as used throughout the document. (The reset commands will reset the total back to zero.) If you prefer to count per sectional-unit, you can use -



\GlsXtrEnableEntryUnitCounting  value}{counter-name}

-

+

where ⟨categories⟩ is a comma-separated list of categories to which this feature should be applied, ⟨value⟩ is the trigger value and ⟨counter-name⟩ is the name of the counter used by the sectional unit. -

Due to the asynchronous nature of T

Due to the asynchronous nature of TEX’s output routine, discrepancies will occur in page spanning paragraphs if you use the page counter.
-

-

Note that you can’t use both the document-wide counting and the per-unit +

+

Note that you can’t use both the document-wide counting and the per-unit counting in the same document. -

The counter value is used as part of a label, which means that

The counter value is used as part of a label, which means that \thecounter-name⟩ needs to be expandable. Since \theHcounter-name⟩ if it exists otherwise it will use \thecounter-name⟩. -

The per-unit counting function uses two attributes:

The per-unit counting function uses two attributes: entrycount (as before) and @@ -12695,53 +12707,53 @@ class="cmss-10">unitcount

Both the original document-wide counting mechanism and the per-unit counting +

Both the original document-wide counting mechanism and the per-unit counting mechanism provide a command that can be used to access the current count value for this run: -



\glsentrycurrcount  \glsentrycurrcount{label}

-

+

and the final value from the previous run: -



\glsentryprevcount  \glsentryprevcount{label}

-

+

In the case of the per-unit counting, this is the final value for the current unit. In both commands ⟨label⟩ is the entry’s label. -

The per-unit counting mechanism additionally provides: -


The per-unit counting mechanism additionally provides: +


\glsentryprevtotalcount  \glsentryprevtotalcount{label}

-

+

which gives the sum of all the per-unit totals from the previous run for the entry given by ⟨label⟩, and -



\glsentryprevmaxcount  \glsentryprevmaxcount{label}

-

+

which gives the maximum per-unit total from the previous run. -

The above two commands are unavailable for the document-wide counting. -

Example of per-unit counting, where the unit is the chapter: +

The above two commands are unavailable for the document-wide counting. +

Example of per-unit counting, where the unit is the chapter: @@ -12765,7 +12777,7 @@ which gives the maximum per-unit total from the previous run.  
\printglossaries  
\end{document}

-

In this document, the

In this document, the css entry is used three times in the first chapter. This is more than the trigger value of 2, so \gls{css} is expanded on \gls{css} doesn’t get a line added to the glossary file. -

The

The html is used a total of three times, but the expansion and indexing suppression trigger is tripped in both chapters because the per-unit total (1 for the first chapter and 2 for the second chapter) is less than or equal to the trigger value. -

The

The sample entry has only been used once, but it doesn’t trip the indexing suppression because it’s in the general category, which hasn’t been listed in \GlsXtrEnableEntryUnitCounting. -

The per-unit entry counting can be used for other purposes. In the following +

The per-unit entry counting can be used for other purposes. In the following @@ -12800,12 +12812,12 @@ won’t be triggered, but the unit entry count is used to automatically supp hyperlink for commands like \gls by modifying the hook -



\glslinkcheckfirsthyperhook  \glslinkcheckfirsthyperhook

-

+

which is used at the end of the macro the determines whether or not to suppress the hyperlink. @@ -12833,10 +12845,10 @@ hyperlink.  
\printglossaries  
\end{document}

-

This only produces a hyperlink for the first instance of

This only produces a hyperlink for the first instance of \gls{sample} on each page. -

The earlier warning about using the

The earlier warning about using the page counter still applies. If the first instance of -

-

+

Top

7. Auto-Indexing

-

It’s possible that you may also want a normal index as well as the glossary, +

It’s possible that you may also want a normal index as well as the glossary, and you may want entries to automatically be added to the index (as in this document). There are two attributes that govern this: indexnamedualindex. -

The

The \glsxtrpostnamehook macro, used at the end of \glossentrynamename key. -

The internal macro used by the

The internal macro used by the glossaries package to write the information to the external glossary file is modified to check for the dualindex attribute. -

In both cases, the indexing is done through -


In both cases, the indexing is done through +


\glsxtrdoautoindexname  }{attribute-label}

-

+

This uses the standard \index command with the sort value taken from the entry’s @@ -12908,15 +12920,15 @@ class="cmti-10">label⟩}. As from v1.16, there are user-level commands available to change the sort and actual value used by the automated index. -

The actual value is given by -


The actual value is given by +


\glsxtrautoindexentry  \glsxtrautoindexentry{label}

-

+

where ⟨label⟩ is the entry’s label. The default definition is: @@ -12926,12 +12938,12 @@ class="cmti-10">label⟩ is the entry’s label. The default def

\newcommand*{\glsxtrautoindexentry}[1]{\string\glsentryname{#1}}
-

Note the use of

Note the use of \string to prevent \glsentryname from being expanded as it’s written to the index file. -

The sort value is assigned using: -


The sort value is assigned using: +


\glsxtrautoindexassignsort  }{label}

-

+

where ⟨label⟩ is the entry label and ⟨cs⟩ is the command which needs to be set to the @@ -12955,31 +12967,31 @@ sort value. The default definition is:  
  \glsletentryfield{#1}{#2}{sort}%  
}

-

After this macro is called, ⟨

After this macro is called, ⟨cs⟩ is then processed to escape any of makeindex’s special characters. Note that this escaping is only performed on the sort not on the actual value. -

The command used to perform the actual indexing is: -


The command used to perform the actual indexing is: +


\glsxtrautoindex  \glsxtrautoindex{text}

-

+

This just does \index{text} by default. -

The entry’s

The entry’s parent field isn’t referenced in this automated indexing.
-

-

For example, to index the value of the

+

For example, to index the value of the first key, instead of the namename \renewcommand*{\glsxtrautoindexentry}[1]{\string\glsentryfirst{#1}}

-

and if the sort value also needs to be set to the

and if the sort value also needs to be set to the long field, if present, otherwise the sort  {\glsletentryfield{#1}{#2}{sort}}%  
}

-

-

If the value of the attribute given by ⟨

+

If the value of the attribute given by ⟨attribute-label⟩ is “true”, no encap will be added, otherwise the encap will be the attribute value. For example: @@ -13019,7 +13031,7 @@ added, otherwise the encap will be the attribute value. For example:

\glssetcategoryattribute{general}{indexname}{textbf}
-

will set the encap to

will set the encap to textbf which will display the relevant page number in bold whereas @@ -13029,13 +13041,13 @@ whereas

\glssetcategoryattribute{general}{dualindex}{true}
-

won’t apply any formatting to the page number in the index. -

The location used in the index will always be the page number not the counter +

won’t apply any formatting to the page number in the index. +

The location used in the index will always be the page number not the counter used in the glossary. (Unless some other loaded package has modified the definition of \index to use some thing else.)
-

-

By default the

+

By default the format key won’t be used with the format key to override the attribute value by using the preamble-only command: -



\GlsXtrEnableIndexFormatOverride  \GlsXtrEnableIndexFormatOverride

-

+

If you use this command and hyperref has been loaded, then the \glshypernumber to allow formats that use that command. -

The

The dualindex attribute will still be used on subsequent use even if the @@ -13079,8 +13091,8 @@ class="cmss-10">dualindexnoindex key.
-

-

The

+

The \glsxtrdoautoindexname command will attempt to escape any of \makeindex\encapchar have been defined before glossaries-extra is loaded). -

If this isn’t the case, you can use the following preamble-only commands to set +

If this isn’t the case, you can use the following preamble-only commands to set the correct characters. -

Be very careful of possible shifting category codes!
-

-


Be very careful of possible shifting category codes!
+

+


\GlsXtrSetActualChar  \GlsXtrSetActualChar{char}

-

+

Set the actual character to ⟨char⟩. -



\GlsXtrSetLevelChar  \GlsXtrSetLevelChar{char}

-

+

Set the level character to ⟨char⟩. -



\GlsXtrSetEscChar  \GlsXtrSetEscChar{char}

-

+

Set the escape (quote) character to ⟨char⟩. -



\GlsXtrSetEncapChar  }

-

+

Set the encap character to ⟨char⟩.

-

-

+

Top

8. On-the-Fly Document Definitions

-

The commands described here may superficially look like ⟨

The commands described here may superficially look like ⟨word\index{word\index then just use \index.
-

-

The

+

The glossaries package advises against defining entries in the documentglossaries-extra but can be enabled using the href="#styopt.docdefs">docdefs package options. -

Although this can be problematic, the

Although this can be problematic, the glossaries-extra package provides a way of defining and using entries within the documentdocdefsThere are limitations with this approach, so take care with it. This function is disabled by default, but can be enabled using the preamble-only command: -



\GlsXtrEnableOnTheFly  \GlsXtrEnableOnTheFly

-

+

When used, this defines the commands described below. -

The commands

The commands \glsxtr, \glsxtrpl, \Glsxtr and \printglossary\gls or there may be unexpected results.
-

-


+


\glsxtr  dfn-options]{label}

-

+

If an entry with the label ⟨label⟩ has already been defined, this just does \gls @@ -13258,7 +13270,7 @@ class="cmitt-10">dfn-options⟩}

-

The ⟨

The ⟨label⟩ must contain any non-expandable commands, such as formatting commands or problematic characters. If the term requires any of these, they must be omitted from the ⟨name key must be provided in the optional argument ⟨dfn-options⟩.
-

+

-

The second optional argument ⟨

The second optional argument ⟨dfn-options⟩ should be empty if the entry has already been defined, since it’s too late for them. If it’s not empty, a warning will be generated with -



\GlsXtrWarning  dfn-options}{label}

-

-

For example, this warning will be generated on the second instance of

+

For example, this warning will be generated on the second instance of \glsxtr below: @@ -13297,8 +13309,8 @@ below:  
 ... later  
\glsxtr[][plural=geese]{goose}

-

-

If you are considering doing something like: +

+

If you are considering doing something like: @@ -13309,14 +13321,14 @@ below:  
 ... later  
\goose\ some more text here

-

then don’t bother. It’s simpler and less problematic to just define the entries in the +

then don’t bother. It’s simpler and less problematic to just define the entries in the preamble with \newglossaryentry and then use \gls in the document. -

There are plural and case-changing alternatives to

There are plural and case-changing alternatives to \glsxtr: -



\glsxtrpl  dfn-options]{label}

-

+

This is like \glsxtr but uses \glspl instead of \gls. -



\Glsxtr  dfn-options]{label}

-

+

This is like \glsxtr but uses \Gls instead of \gls. -



\Glsxtrpl  dfn-options]{label}

-

+

This is like \glsxtr but uses \Glspl instead of \gls. -

If you use UTF-8 and don’t want the inconvenient of needing to use an +

If you use UTF-8 and don’t want the inconvenient of needing to use an ASCII-only label, then it’s better to use XƎLATEX or LuaLATEX instead of LATEX (or pdfLATEX). If you really desperately want to use UTF-8 entry labels @@ -13373,20 +13385,20 @@ without switching to X\GlsXtrEnableOnTheFly that allows you to use UTF-8 characters in ⟨label⟩, but it’s experimental and may not work in some cases. -

If you use the starred version of

If you use the starred version of \GlsXtrEnableOnTheFly don’t use any commands in the ⟨label⟩, even if they expand to just text.
-

+

-

-

+

Top

9. bib2gls: Managing Reference Databases

-

There is a new command line application called

There is a new command line application called bib2gls.glstex file which is loaded using \glsxtrresourcefile (or \GlsXtrLoadResources). -

This means that you can use a reference managing system, such as JabRef, to +

This means that you can use a reference managing system, such as JabRef, to maintain the database and it reduces the TEX overhead by only defining the entries that are actually required in the document. If you currently have a convertgls2bibbib2gls.) -

There are some new commands and options added to

There are some new commands and options added to glossaries-extra to help assist the integration of bib2gls into the document build process. -

An example of the contents of

An example of the contents of .bib file that stores glossary entries that can be extracted with bib2gls  description={a waterbird with a long neck}  
}

-

-

The follow provides some abbreviations: +

+

The follow provides some abbreviations: @@ -13483,8 +13495,8 @@ class="cmtt-10">bib2gls  description={a simple interpreted server-side scripting language}  
}

-

-

Here are some symbols: +

+

Here are some symbols: @@ -13507,8 +13519,8 @@ preamble{"\providecommand{\mtx}[1]{\boldsymbol{#1}}"}  
  description={a set}  
}

-

-

To ensure that

+

To ensure that bib2glsrecord \usepackage[record]{glossaries-extra}

-

If this option’s value is omitted (as above), the normal indexing will be switched off, +

If this option’s value is omitted (as above), the normal indexing will be switched off, since bib2gls can also sort the entries and collate the locations. -

If you still want to use an indexing application (for example, you need a custom +

If you still want to use an indexing application (for example, you need a custom \printglossaries), but it’s a good idea to also ins id="dx1-31019">bib2gls to omit sorting to save time. -

The

The .glstex file created by \bib2gls is loaded using: -



\glsxtrresourcefile  ]{filename}

-

+

(Don’t include the file extension in ⟨filename⟩.) There’s a shortcut version (recommended over the above) that sets ⟨filename⟩ to use \jobname: -



\GlsXtrLoadResources  \GlsXtrLoadResources[options]

-

+

On the first use, this command is a shortcut for

}
where ⟨n⟩ is the current value of -



\glsxtrresourcecount

-

+

which is incremented at the end of \GlsXtrLoadResources. Any advisory notes regarding \glsxtrresourcefile also apply to \GlsXtrLoadResources. -

The

The \glsxtrresourcefile command writes the line

-

at the start of the front matter and +

at the start of the front matter and @@ -13691,9 +13703,9 @@ example,

\GlsXtrSetDefaultNumberFormat{glsnumberformat}
-

at the start of the main matter to prevent any records in the front matter from +

at the start of the main matter to prevent any records in the front matter from occurring in the location lists. -

Note that commands like

-

-

If you want to add all entries to the glossary, you need to tell

+

If you want to add all entries to the glossary, you need to tell bib2gls this in the @@ -13720,7 +13732,7 @@ options list. For example:

\GlsXtrLoadResources[src={terms},selection={all}]
-

This will add all entries, regardless of whether or not they have any records in the +

This will add all entries, regardless of whether or not they have any records in the .aux file. Those that don’t have any records will have an empty location list. See the .aux file. Those that don’t have any records will h href="#glo:bib2gls">bib2gls user manual for more details of this option. -

+

-

Top

9.2 Sorting and Displaying the Glossary

-

There are many sorting options provided by

There are many sorting options provided by bib2gls. The default is to sort @@ -13759,7 +13771,7 @@ example:  
  sort=de-DE-1996 % sort according to this locale  
]

-

The locale-sensitive sort methods usually ignore most punctuation so for lists of +

The locale-sensitive sort methods usually ignore most punctuation so for lists of symbols you may find it more appropriate to use one of the letter-base sort methods that sort according to the Unicode value of each character. See the bib2gls manual for full details of all the available sort methods. -

Since the

Since the .glstex file only defines those references required within the document (selected according to the selection option) and the definitions have been written in @@ -13782,7 +13794,7 @@ href="#sec:printunsrt">§10.2 Display All Entries Without Sorting or Indexing. -

Suppose the

Suppose the .bib examples shown above have been stored in the files terms.bib, EX’s path. Then the document might look like:  
\printunsrtglossaries  
\end{document}

-

The document build process (assuming the document is called

The document build process (assuming the document is called mydoc) is: @@ -13817,7 +13829,7 @@ pdflatex mydoc  
bib2gls mydoc  
pdflatex mydoc

-

This creates a single glossary containing the entries:

This creates a single glossary containing the entries: bird, duck, goose, shtml. These cross-referenced entries won’t have a location list when the glossary is first displayed, but depending on how they are referenced, they may pick up a location list on the next document build. -

The entries can be separated into different glossaries with different sort +

The entries can be separated into different glossaries with different sort methods: @@ -13878,8 +13890,8 @@ methods:  
\printunsrtglossaries  
\end{document}

-

-

Or you can have multiple instance of

+

Or you can have multiple instance of \GlsXtrLoadResources with the same type, which will produce a glossary with ordered sub-blocks. For example: @@ -13905,7 +13917,7 @@ class="cmtt-10">type, which will produce a glossary with ordered sub-bloc  
\printunsrtglossaries  
\end{document}

-

This will result in a glossary where the first group has the title “Abbreviations”, the +

This will result in a glossary where the first group has the title “Abbreviations”, the second group has the title “Symbols” and then follow the usual letter groups. Note that for this example to work, you must run bib2gls -g myDoc  
pdflatex myDoc

-

-

You can provide your own custom sort rule. For example, if you are using +

+

You can provide your own custom sort rule. For example, if you are using XƎLATEX or LuaLATEX:

  class="cmtt-10">]
-

+

-

Top

9.3 Supplementary Commands

-

These commands are provided by

These commands are provided by glossaries-extra for use with bib2gls. -



\glshex  \glshex

-

+

This is just defined as \string\u, which is required when you need to indicate a Unicode character in the form \uhex⟩ in some of the resource options (as described above). -

The information provided with

The information provided with \GlsXtrLoadResources is written to the .aux file using

@@ -14222,12 +14234,12 @@ class="cmti-10">information⟩ is the information to pass to bib2gls. The command in the second argument -



\glsxtrresourceinit  \glsxtrresourceinit

-

+

may be used to temporarily redefine commands before the information is written to the file. This does nothing by default, but may be redefined to allow the use of short commands for convenience. For example, with: @@ -14238,13 +14250,13 @@ commands for convenience. For example, with:

\renewcommand{\glsxtrresourceinit}{\let\u\glshex}
-

you can just use, for example,

you can just use, for example, \uE6 instead of \string\uE6 in the custom rule. This redefinition of \u is scoped so its original definition is restored after the write operation. -

It’s possible to specify label prefixes. For example, modifying the earlier +

It’s possible to specify label prefixes. For example, modifying the earlier example: @@ -14271,7 +14283,7 @@ example:  
\printunsrtglossaries  
\end{document}

-

If you do something like this, you may find it more convenient to define custom +

If you do something like this, you may find it more convenient to define custom commands that set the prefix. For example: @@ -14280,12 +14292,12 @@ commands that set the prefix. For example:

\newcommand*{\sym}[2][]{\gls[#1]{sym.#2}}
-

The problem with this is that the custom command

The problem with this is that the custom command \sym does allow for modifiers (such as \gls* or \gls+). Instead you can use: -



\glsxtrnewgls  prefix}{cs}

-

+

which defines the command ⟨cs⟩ that behaves like

@@ -14322,7 +14334,7 @@ class="cmtt-10">]
\glsxtrnewgls{sym.}{\sym}
-

or (to default to no hyperlinks) +

or (to default to no hyperlinks) @@ -14330,12 +14342,12 @@ class="cmtt-10">]

\glsxtrnewgls[hyper=false]{sym.}{\sym}
-

now you can use

now you can use \sym+{M} to behave like \gls+{sym.M}. -

If you also want the plural and first letter upper case versions you can +

If you also want the plural and first letter upper case versions you can use -



\glsxtrnewglslike  }{\Glspl-like cs}

-

+

For example: @@ -14364,8 +14376,8 @@ For example:

\glsxtrnewglslike[hyper=false]{idx.}{\idx}{\idxpl}{\Idx}{\Idxpl}
-

For the all caps versions: -


For the all caps versions: +


\glsxtrnewGLSlike  \GLS-like cs}{\GLSpl-like cs}

-

+

For example: @@ -14389,10 +14401,10 @@ For example:

\glsxtrnewGLSlike[hyper=false]{idx.}{\IDX}{\IDXpl}
-

-

There’s an analogous command for

+

There’s an analogous command for \rgls: -



\glsxtrnewrgls  }{cs}

-

+

and for \rgls, \rglspl, \rGls and \rGlspl: -



\glsxtrnewrglslike  }{\rGlspl-like cs}

-

+

and for the all caps: -



\glsxtrnewrGLSlike  \rGLS-like cs}{\rGLSpl-like cs}

-

-

+

+

-

Top

9.4 Record Counting

-

As from version 1.1 of

As from version 1.1 of bib2glsrecordcount: set to the total number of records found for class="cmtt-10">recordcount.⟨counter⟩: set to the total number of records found for the entry for the given counter. -

If

If --record-count-unit is used then additionally:

  • location⟩: set to the total number of reco -

    Only use the unit counting option if the locations don’t contain any special characters. If +

    Only use the unit counting option if the locations don’t contain any special characters. If you really need it with locations that may contain formatting commands, then you can try redefining: -



    \glsxtrdetoklocation  \glsxtrdetoklocation{location}

    -

    +

    so that it detokenizes ⟨location⟩ but take care when using \GlsXtrLocationRecordCount with commands like \thepage as they can end up becoming detokenized too early. -

    Note that the record count includes locations that

    Note that the record count includes locations that bib2glssection counter (stored in the recordcount.section field) is 1. -

    With the unit counting on as well, the field

    With the unit counting on as well, the field recordcount.page.1 is set to 2, recordcount.page.2 is set to 1, recordcount.page.3 is set to 4 and recordcount.section.3 is set to 1. -

    You can access these fields using the following commands which will expand to +

    You can access these fields using the following commands which will expand to the field value if set or to 0 if unset: -



    \GlsXtrTotalRecordCount  \GlsXtrTotalRecordCount{label}

    -

    +

    This expands to the total record count for the entry given by ⟨label⟩. @@ -14553,8 +14565,8 @@ class="cmti-10">label⟩.

    \GlsXtrTotalRecordCount{bird}
    -

    expands to 8. -


    expands to 8. +


    \GlsXtrRecordCount  label}{counter}

    -

    +

    This expands to the counter total for the entry given by ⟨label⟩ where ⟨counter⟩ is the @@ -14575,7 +14587,7 @@ counter name. For example:

    \GlsXtrRecordCount{bird}{page}
    -

    expands to 7 and +

    expands to 7 and @@ -14583,8 +14595,8 @@ counter name. For example:

    \GlsXtrRecordCount{bird}{section}
    -

    expands to 1. -


    expands to 1. +


    \GlsXtrLocationRecordCount  } class="cmtt-10">{⟨location}

    -

    +

    This expands to the total for the given location. For example @@ -14606,18 +14618,18 @@ This expands to the total for the given location. For example

    \GlsXtrLocationRecordCount{bird}{page}{3}
    -

    expands to 4. Be careful about using

    expands to 4. Be careful about using \thepage in the ⟨location⟩ part. Remember that due to TEX’s asynchronous output routine, \thepage may not be correct. -

    There are commands analogous to the entry counting commands like

    There are commands analogous to the entry counting commands like \cgls and \cglsformat that are triggered by the record count. These are listed below. -



    \rgls  label}[insert]

    -

    -


    +


    \rglspl  label}[insert]

    -

    -


    +


    \rGls  label}[insert]

    -

    -


    +


    \rGlspl  label}[insert]

    -

    -


    +


    \rGLS  label}[insert]

    -

    -


    +


    \rGLSpl  label}[insert]

    -

    +

    These commands check the recordcount \glssetcategoryattribute{abbreviation}{recordcount}{1}

    -

    For convenience, you can use -


    For convenience, you can use +



    -

    +

    to set the recordcountn⟩ for all the categories listed in ⟨category list⟩. -

    The

    The \rgls-like commands use -



    \glsxtrifrecordtrigger  } class="cmtt-10">{⟨normal}

    -

    +

    to determine whether the \rgls-like command should behave like its \gls counterpart (⟨normal⟩) or whether it should instead use ⟨trigger code⟩. -

    This command checks if the

    This command checks if the recordcount attribute is set. If not is just does ⟨normal⟩, otherwise it tests if -



    \glsxtrrecordtriggervalue  \glsxtrrecordtriggervalue{label}

    -

    +

    is greater than the value given in the recordcount \GlsXtrTotalRecordCount{#1}%  
    }

    -

    The ⟨

    The ⟨trigger code⟩ part writes a record with the format set to trigger format⟩. Then it unsets the first use flag. Note that it doesn’t implement the post-link hook. This ensures that the record count is correct on the next run. -

    The ⟨

    The ⟨trigger format⟩ depends on the \rgls-like command used and will be one of the following: -



    \rglsformat  label}{insert}

    -

    -


    +


    \rglsplformat  label}{insert}

    -

    -


    +


    \rGlsformat  label}{insert}

    -

    -


    +


    \rGlsplformat  label}{insert}

    -

    -


    +


    \rGLSformat  label}{insert}

    -

    -


    +


    \rGLSplformat  label}{insert}

    -

    +

    These all behave much like their \cglsformat counterparts. If the entry’s regular attribute is set or if the entry doesn’t have a long form, the first or first plural is used, otherwise the long or long plural form is used. -

    You can use -


    You can use +


    \glsxtrenablerecordcount  \glsxtrenablerecordcount

    -

    +

    to redefine \gls, \glspl, \rGls, class="cmtt-10">\rGlspl, \rGLS, \rGLSpl, respectively, for convenience. -

    If you don’t want the entries that use ⟨

    If you don’t want the entries that use ⟨trigger code⟩ to appear in the glossary, you need to use the resource option trigger-type to assign them to another glossary. @@ -14921,7 +14933,7 @@ For example:  
    \printunsrtglossaries  
    \end{document}

    -

    In the above,

    In the above, stc and upa both only have one record, so they are assigned to the main one.

    -

    -

    +

    Top

    10. Miscellaneous New Commands

    -

    The

    The glossaries package provides \glsrefentry entry to cross-reference entries @@ -14948,21 +14960,21 @@ class="cmss-10">subentrycounter options. The glossaries-extra package provides a supplementary command -



    \glsxtrpageref  \glsxtrpageref{label}

    -

    +

    that works in the same way except that it uses \pageref instead of \ref. -

    You can copy an entry to another glossary using -


    You can copy an entry to another glossary using +


    \glsxtrcopytoglossary  }{glossary-type}

    -

    +

    This appends ⟨entry-label⟩ to the end of the internal list for the glossary given by ⟨ \printunsrtglossary[target=false]

    -

    -

    The

    +

    The glossaries package allows you to set preamble code for a given glossary type using \setglossarypreamble. This overrides any previous setting. With glossaries-extra (as from v1.12) you can instead append to the preamble using -



    \apptoglossarypreamble  type]{code}

    -

    +

    or prepend using -



    \pretoglossarypreamble  type]{code}

    -

    +

    -

    Top

    10.1 Entry Fields

    -

    A field may now be used to store the name of a text-block command that takes a +

    A field may now be used to store the name of a text-block command that takes a single argument. The field is given by -



    \GlsXtrFmtField  \GlsXtrFmtField

    -

    +

    The default value is useri. Note that the value must be the control sequence name without the initial backslash. -

    For example: +

    For example: @@ -15067,10 +15079,10 @@ class="cmti-10">without the initial backslash.  
       $\mtx{M}\mtxinv{M}=\glssymbol{identitymatrix}$}  
    }

    -

    -

    There are two commands provided that allow you to apply the command to an +

    +

    There are two commands provided that allow you to apply the command to an argument: -



    \glsxtrfmt  label}{text}

    -

    +

    This effectively does

    cs⟩ is the command obtained from the control seque provided field, which must be defined to take a single required argument. Although it effectively acts like \glslink it misses out the post-link hook. -

    The default ⟨

    The default ⟨default-options⟩ are given by -



    \GlsXtrFmtDefaultOptions  \GlsXtrFmtDefaultOptions

    -

    +

    This is defined as noindex but may be redefined as appropriate. Note that the replacement text of \GlsXtrFmtDefaultOptions is prepended to the optional argument of \glslink. -

    As from version 1.23, there’s also a starred version of this command that has a +

    As from version 1.23, there’s also a starred version of this command that has a final optional argument: -



    \glsxtrfmt*  text}[insert]

    -

    +

    Both the starred and unstarred versions use: -



    \glsxtrfmtdisplay  }{insert}

    -

    +

    within the link text. In the case of the unstarred version ⟨insert⟩ will be empty. It will also be empty if the final option argument is missing from the starred form. If the @@ -15176,17 +15188,17 @@ default definition is:

    \newcommand{\glsxtrfmtdisplay}[3]{\csuse{#1}{#2}#3}
    -

    which puts ⟨

    which puts ⟨text⟩ inside the argument of the control sequence and ⟨insert⟩ outside it (but it will still be inside the link text). -

    Remember that nested links cause a problem so avoid using commands like

    Remember that nested links cause a problem so avoid using commands like \gls or \glsxtrfmt within ⟨text⟩.
    -

    -

    For example: +

    +

    For example: @@ -15199,7 +15211,7 @@ class="cmti-10">text⟩.

     
      \glssymbol{identitymatrix}  
    \]
    -

    If the default options are set to

    If the default options are set to noindex then \glsxtrfmt won’t index, but will create a hyperlink (if \renewcommand{\GlsXtrFmtDefaultOptions}{hyper=false,noindex}

    -

    -

    Note that

    +

    Note that \glsxtrfmt won’t work with PDF bookmarks. Instead you can use -



    \glsxtrentryfmt  label}{text}

    -

    +

    This uses \texorpdfstring and will simply expand to ⟨text⟩ within the PDF @@ -15237,14 +15249,14 @@ class="cmti-10">text⟩} if a control sequence name has been provided or just ⟨text⟩ otherwise. -

    The

    The glossaries package provides \glsaddstoragekey to add new keys. This command will cause an error if the key has already been defined. The glossaries-extra package provides a supplementary command that will only define the key if it doesn’t already exist: -



    \glsxtrprovidestoragekey  }{cs}

    -

    +

    If the key has already been defined, it will still provide the command given in the third argument ⟨cs⟩ (if it hasn’t already been defined). Unlike cs⟩ may be left empty if you’re happy to just use \glsfieldfetch to fetch the value of this new key. -

    You can test if a key has been provided with: -


    You can test if a key has been provided with: +


    \glsxtrifkeydefined  true}{false}

    -

    +

    This tests if ⟨key⟩ is available for use in the ⟨key⟩= list in the second argument of @@ -15286,7 +15298,7 @@ class="cmtt-10">\newglossaryentry (or the optional argument of commands l class="cmtt-10">\newabbreviation). The corresponding field may not have been set for any of the entries if no default was provided. -

    There are now commands provided to set individual fields. Note that +

    There are now commands provided to set individual fields. Note that these only change the specified field, not any related values. For example, changing the value of the textparent field). Unexpected results may occur if they are subsequently changed. -



    \GlsXtrSetField  field}{value}

    -

    +

    Sets the field given by ⟨field⟩ to ⟨value⟩ for the entry given by ⟨

    \GlsXtrSetField uses -



    \glsxtrsetfieldifexists  }{code}

    -

    +

    where ⟨label⟩ is the entry label and ⟨code⟩ is the assignment code. -

    This command just uses

    This command just uses \glsdoifexists{=warn\glsxtrsetfieldifexists to simply do ⟨code⟩ if you want to skip the existence check. Alternatively you can instead use -



    \glsxtrdeffield  replacement text}

    -

    +

    This simply uses etoolbox’s \csdef without any checks. This command isn’t robust. There is also a version that uses \csedef instead: -



    \glsxtredeffield  replacement text}

    -

    -


    +


    \gGlsXtrSetField  field}{value}

    -

    +

    As \GlsXtrSetField but globally. -



    \eGlsXtrSetField  field}{value}

    -

    +

    As \GlsXtrSetField but uses protected expansion. -



    \xGlsXtrSetField  field}{value}

    -

    +

    As \gGlsXtrSetField but uses protected expansion. -



    \GlsXtrLetField  field}{cs}

    -

    +

    Sets the field given by ⟨field⟩ to the replacement text of ⟨cs⟩ for the entry given by ⟨label⟩ (using \let). -



    \csGlsXtrLetField  }{cs name}

    -

    +

    As \GlsXtrLetField but the control sequence name is supplied instead. -



    \GlsXtrLetFieldToField  label-2}{field-2}

    -

    +

    Sets the field given by ⟨field-1⟩ for the entry given by ⟨label-1⟩ to the field given by @@ -15508,7 +15520,7 @@ class="cmti-10">code⟩} is still used, as for \GlsXtrSetField. -

    The

    The glossaries package provides \ifglshasfield to determine if a field has been @@ -15517,21 +15529,21 @@ class="cmss-10">glossaries-extra package provides a simpler version: -



    \glsxtrifhasfield  \glsxtrifhasfield{label}{field}{label}{true}{false}

    -

    +

    (New to v1.19.) Unlike \ifglshasfield, this version doesn’t complain if the entry (given by ⟨true⟩ part is done otherwise it does ⟨false⟩. Within ⟨true⟩ you may use -



    \glscurrentfieldvalue  \glscurrentfieldvalue

    -

    +

    to access the field value. This command includes grouping which scopes the ⟨true⟩ and ⟨false⟩ parts. The starred version -



    \glsxtrifhasfield*  \glsxtrifhasfield*{label}{field}{label}{true}{false}

    -

    +

    omits the implicit grouping. -

    There is also a version that simply uses

    There is also a version that simply uses \ifcsundef. It doesn’t save the field value, but can be used if you only need to check if the field is defined without accessing it: -



    \GlsXtrIfFieldUndef  }{false}

    -

    -

    You can test if a field value equals a string using -


    +

    There’s a difference between an undefined field and an unset field. An undefined +field hasn’t been assigned any value (no associated internal control sequence +has been defined). If a defined field has been defined to empty, then it’s +considered unset. \GlsXtrIfFieldUndef implement ⟨false⟩ for a defined but +empty field whereas \glsxtrifhasfield and \ifglshasfield will implement +⟨false⟩ a defined but empty field. Remember that any keys that may be used +in \newglossaryentry will have a default value if not provided. In many +cases, the default value is empty, so only use \GlsXtrIfFieldUndef for +fields that can only be defined through commands like \GlsXtrSetField. +
    +

    +

    You can test if a field value equals a string using +


    \GlsXtrIfFieldEqStr  \GlsXtrIfFieldEqStr{label}{field}{label}{text}{true} class="cmtt-10">{⟨false}

    -

    +

    If the entry exists and has the given field set to the given text then this does ⟨true⟩ otherwise it does ⟨text⟩ using etoolbox’s \ifdefstring. -

    The

    The glossaries package provides \glsfieldfetch which can be used to fetch the value of the given field and store it in a control sequence. The glossaries-extra package provides another way of accessing the field value: -



    \glsxtrusefield  entry-label}{field-label}

    -

    + + + +

    This works in the same way as commands like \glsentrytext but the field label is specified in the first argument. Note that the ⟨glossaries manual. No error occurs if the entry or field haven’t been defined. This command is not robust. -

    There is also a version that converts the first letter to uppercase (analogous to +

    There is also a version that converts the first letter to uppercase (analogous to \Glsentrytext): -



    \Glsxtrusefield  entry-label}{field-label}

    -

    - - - -

    If you want to use a field to store a list that can be used as an

    +

    If you want to use a field to store a list that can be used as an etoolbox internal list, you can use the following command that adds an item to the field using @@ -15668,7 +15699,7 @@ list, you can use the following command that adds an item to the field using class="cmss-10">etoolbox’s \listcsadd: -



    \glsxtrfieldlistadd  }{item}

    -

    +

    where ⟨label⟩ is the entry’s label, ⟨field⟩ is the entry’s field and ⟨\listgadd, \listeadd and \listxadd: -



    \glsxtrfieldlistgadd  }{item}

    -

    -


    +


    \glsxtrfieldlisteadd  }{item}

    -

    -


    +


    \glsxtrfieldlistxadd  }{item}

    -

    +

    You can then iterate over the list using: -



    \glsxtrfielddolistloop  }{field}

    -

    +

    or -



    \glsxtrfieldforlistloop  } class="cmtt-10">{⟨handler}

    -

    +

    that internally use \dolistcsloop and \forlistloop, respectively. -

    There are also commands that use

    There are also commands that use \ifinlistcs: -



    \glsxtrfieldifinlist  } class="cmtt-10">{⟨false}

    -

    +

    and \xifinlistcs -



    \glsxtrfieldxifinlist  true}{false}

    -

    -

    See the

    +

    See the etoolbox’s user manual for further details of these commands, in particular the limitations of \ifinlist. -

    When using the

    If the field has a comma-separated list value instead, you can iterate over it +using: +


    \glsxtrforcsvfield  \glsxtrforcsvfield{label}{field}{handler} +

    +

    +where again ⟨handler⟩ is a control sequence that takes a single argument. Unlike the +etoolbox loops, this doesn’t ignore empty elements nor does it discard leading / +trailing spaces. Internally it uses \@for (modified by xfor which is automatically +loaded by glossaries). The xfor package modifies the behaviour of \@for to allow the +loop to be broken prematurely using \@endfortrue. The \glsxtrforcsvfield +command locally defines a user level command: +


    \glsxtrendfor  \glsxtrendfor

    +

    +which is just a synonym for \@endfortrue. +

    The loop is performed within the true part of \glsxtrifhasfield so scoping is +automatically applied. +

    When using the record option, in addition to recording the usual location, you can + id="dx1-37055"> option, in addition to recording the usual location, you can also record the current value of another counter at the same time using the preamble-only command: -



    \GlsXtrRecordCounter  \GlsXtrRecordCounter{counter name}

    -

    +

    For example: @@ -15827,7 +15906,7 @@ For example: \usepackage[record]{glossaries-extra}  
    \GlsXtrRecordCounter{section}

    -

    Each time an entry is referenced with commands like

    Each time an entry is referenced with commands like \gls or \glstext, the \gls{bird} is used in section 1.2 th

    \glsxtrfieldlistgadd{bird}{record.section}{1.2}
    -

    Note that there’s no key corresponding to this new

    Note that there’s no key corresponding to this new record.section field, but its value can be accessed with \glsxtrfielduse or the list can be iterated over with \glsxtrfielddolistloop etc. -

    +

    -

    Top

    10.2 Display All Entries Without Sorting or Indexing

    -



    \printunsrtglossary  \printunsrtglossary[options]

    -

    +

    This behaves like \printnoidxglossary but never sorts the entries and always lists all the defined entries for the given glossary (and doesn’t require @@ -15909,8 +15988,8 @@ the definition of \glsgroupskip to avoid the “Incomplete \iftrue” error that may otherwise occur. -

    There’s also a starred form -


    There’s also a starred form +


    \printunsrtglossary*  options]{code}

    -

    +

    which is equivalent to

    \endgroup class="cmtt-10">\glossarypreamble, the supplied ⟨code⟩ is done before the glossary header. -

    This means you now have the option to simply list all entries on the first +

    This means you now have the option to simply list all entries on the first LATEX run without the need for a post-processor, however there will be no §9 bib2gls: Managing Reference Databases). -

    No attempt is made to gather hierarchical elements. If child entries aren’t defined +

    No attempt is made to gather hierarchical elements. If child entries aren’t defined immediately after their parent entry, they won’t be together in the glossary when using \printunsrtglossary.
    -

    +

    -

    If you have any entries with the

    If you have any entries with the see key set, you will need the glossariesrecord=only package option will automatically deal with this. -

    For example: +

    For example: @@ -15995,32 +16074,32 @@ will automatically deal with this.  
    \printunsrtglossaries  
    \end{document}

    -

    In the above, zebra will be listed before ant as it was defined first. -

    If you allow document definitions with the

    In the above, zebra will be listed before ant as it was defined first. +

    If you allow document definitions with the docdefs option, the document will require a second LATEX run if the entries are defined after \printunsrtglossary. -

    The optional argument is as for

    The optional argument is as for \printnoidxglossary (except for the sort key, which isn’t available). -

    All glossaries may be displayed in the order of their definition using: -


    All glossaries may be displayed in the order of their definition using: +


    \printunsrtglossaries  \printunsrtglossaries

    -

    +

    which is analogous to \printnoidxglossaries. This just iterates over all defined glossaries (that aren’t on the ignored list) and does \printunsrtglossary[type=⟨type⟩]. -

    To avoid complications caused by

    To avoid complications caused by tabular-like glossary styles,



    \printunsrtglossaryentryprocesshook  \printunsrtglossaryentryprocesshook class="cmtt-10">{⟨label}

    -

    +

    This hook should not display any content, but may be used to perform calculations. For example, to calculate widths. Within this hook you can use: -



    \printunsrtglossaryskipentry  \printunsrtglossaryskipentry

    -

    +

    to skip the current entry. This will prevent the entry from being added to the internal command. -

    There’s another hook immediately before the internal command containing the +

    There’s another hook immediately before the internal command containing the glossary code is performed: -



    \printunsrtglossarypredoglossary  \printunsrtglossarypredoglossary

    -

    +

    -

    The internal command uses -


    The internal command uses +


    \printunsrtglossaryhandler  \printunsrtglossaryhandler{label}

    -

    +

    to display each item in the list, where ⟨label⟩ is the current label. -

    By default the handler just does -


    By default the handler just does +


    \glsxtrunsrtdo  \glsxtrunsrtdo{label}

    -

    +

    which determines whether to use \glossentry or \subglossentry and checks the @@ -16092,10 +16171,10 @@ class="cmss-10">loclist fields for the number list. -

    You can redefine the handler if required. For example, you may want to filter +

    You can redefine the handler if required. For example, you may want to filter entries according to the category label. You can test if a label is contained in a comma-separated list of labels using: -



    \glsxtriflabelinlist  } class="cmtt-10">{⟨false}

    -

    +

    The ⟨label⟩ and ⟨label list⟩ will be fully expanded. -

    If you redefine the handler to exclude entries, you may end up with an empty +

    If you redefine the handler to exclude entries, you may end up with an empty glossary. This could cause a problem for the list-based styles.
    -

    -

    For example, if the preamble includes: +

    +

    For example, if the preamble includes: @@ -16126,7 +16205,7 @@ glossary. This could cause a problem for the list-based styles.

    \usepackage[record,style=index]{glossaries-extra}  
    \GlsXtrRecordCounter{section}
    -

    then you can print the glossary but first redefine the handler to only select entries +

    then you can print the glossary but first redefine the handler to only select entries that include the current section number in the record.section field: @@ -16140,8 +16219,8 @@ class="cmtt-10">record.section field:  
      {}%  
    }

    -

    -

    Alternatively you can use the starred form of

    +

    Alternatively you can use the starred form of \printunsrtglossary which will localise the change: @@ -16157,8 +16236,8 @@ localise the change:  
      }%  
    }

    -

    -

    If you are using the

    +

    If you are using the hyperref package and want to display the same glossary more than once, you can also add a temporary redefinition of   }%  
    }

    -

    Note that this will cause a problem if your descriptions contain commands like

    Note that this will cause a problem if your descriptions contain commands like \gls that need to link an entry that doesn’t appear in the summary. In this case, it’s a better approach to use: @@ -16208,8 +16287,8 @@ better approach to use:  
      }%  
    }

    -

    -

    If it’s a short summary at the start of a section, you might also want to suppress +

    +

    If it’s a short summary at the start of a section, you might also want to suppress the glossary header and add some vertical space afterwards: @@ -16233,9 +16312,9 @@ the glossary header and add some vertical space afterwards:  
      \appto\glossarypostamble{\glspar\medskip\glspar}%  
    }

    -

    -

    There’s a shortcut command that essentially does this: -


    +

    There’s a shortcut command that essentially does this: +


    \printunsrtglossaryunit  counter name}

    -

    +

    The above example can simply be replaced with: @@ -16255,11 +16334,11 @@ The above example can simply be replaced with:

    \printunsrtglossaryunit{section}
    -

    -

    This shortcut command is actually defined to use

    +

    This shortcut command is actually defined to use \printunsrtglossary* with -



    \printunsrtglossaryunitsetup  counter name}

    -

    +

    so if you want to just make some minor modifications you can do @@ -16279,9 +16358,9 @@ so if you want to just make some minor modifications you can do  
      \renewcommand*{\glossarysection}[2][]{\subsection*{Summary}}%  
    }

    -

    which will start the list with a subsection header with the title “Summary” +

    which will start the list with a subsection header with the title “Summary” (overriding the glossary’s title). -

    Note that this shortcut command is only available with the

    Note that this shortcut command is only available with the record (or @@ -16290,7 +16369,7 @@ href="#styopt.record">record=alsoindex) package option. -

    This temporary change in the hypertarget prefix means you need to explicitly use +

    This temporary change in the hypertarget prefix means you need to explicitly use \hyperlink to create a link to it as commands like \gls will try to link to the target @@ -16302,12 +16381,12 @@ the front or back matter) which can be the target for all glossary references an just use \printunsrtglossaryunit for a quick summary at the start of a section etc. -

    +

    -

    Top

    10.3 Standalone Entry Items

    -

    It may be that you don’t want a list but would rather display entry details +

    It may be that you don’t want a list but would rather display entry details throughout the document. You can simply do \glsentryname followed by  \par\medskip  
    }

    -

    define your entries +

    define your entries @@ -16342,7 +16421,7 @@ custom command:  
      description={a relation or expression involving variables}  
    }

    -

    and then later in the text: +

    and then later in the text: @@ -16350,25 +16429,25 @@ custom command:

    \displayterm{function}
    -

    -

    However, if may be that you want to use

    +

    However, if may be that you want to use hyperref and have commands like \gls link back to the place where the term is described. Instead of using \glsentryname use -



    \glsxtrglossentry  \glsxtrglossentry{label}

    -

    +

    where ⟨label⟩ is the entry’s label. -

    This is designed to behave much like the way the name is displayed in the +

    This is designed to behave much like the way the name is displayed in the glossary. It performs the following:

    -

    otherwise it does

    +

    otherwise it does

    • \glsentryitem{glossnamefont

      If you have used

      If you have used \nopostdesc or \glsxtrnopostpunc in any of your description fields, you can use -



      \glsxtractivatenopost  \glsxtractivatenopost

      -

      +

      to make these commands behave as they normally do within a glossary. This needs to be placed before

      @@ -16450,10 +16529,10 @@ class="cmtt-10">}\glspostdescription class="cmtt-10">\glsnonextpages and \glsnextpages have no effect outside of the glossary and are not intended for use in a standalone context. -

      It’s also possible to select a different field (rather than using

      It’s also possible to select a different field (rather than using name): -



      \glsxtrglossentryother  }{field}

      -

      +

      The ⟨field⟩ must be given using its internal field label which may not be the same as the key used to set the field. See the key to field mappings table in the }.

    • Otherwise ⟨header⟩ is simply the field value.
    -

    The

    The \glsxtrglossentryother command internally uses \glossentrynameother{label}

    (for example, \glssymbolaccessdisplay). -

    This means that my custom command can be changed to: +

    This means that my custom command can be changed to: @@ -16533,7 +16612,7 @@ class="cmtt-10">\glssymbolaccessdisplay).  
     \par\medskip  
    }

    -

    If I want numbered definitions, then I can use the package options

    If I want numbered definitions, then I can use the package options entrycounter or subentrycounter \par\medskip  
    }

    -

    The counter label uses a dot after the number by default but this can be changed to +

    The counter label uses a dot after the number by default but this can be changed to a colon: @@ -16560,13 +16639,13 @@ a colon:

    \renewcommand*{\glsentrycounterlabel}{\theglossaryentry:\space}
    -

    It’s now possible to not only use

    It’s now possible to not only use \gls to link back to the definition but also use \glsrefentry to reference the counter and \glsxtrpageref to reference the page number. -

    If I want the description to behave more like it does in a glossary in need to make +

    If I want the description to behave more like it does in a glossary in need to make the following modification: @@ -16583,9 +16662,9 @@ the following modification:  
     \par\medskip  
    }

    -

    (Note the grouping to localise

    (Note the grouping to localise \glsxtractivatenopost.) -

    You can also use

    You can also use \glsxtrglossentry within section headings. For example: @@ -16594,7 +16673,7 @@ class="cmtt-10">\glsxtrglossentry within section headings. For example:

    \section{\glsxtrglossentry{function}}
    -

    This will use

    This will use \glsentryname in PDF bookmarks (if \texorpdfstring is defined) and will use \@glsxtrnotinmark and \glsxtrrestoremarkhook.) -

    +

    -

    Top

    10.4 Entry Aliases

    -

    An entry can be made an alias of another entry using the

    An entry can be made an alias of another entry using the alias key. The value should be the label of the other term. There’s no check for the other’s @@ -16626,7 +16705,7 @@ defining the other entry after the aliased entry. (For example, when used with href="#glo:bib2gls">bib2gls.) -

    If an entry ⟨

    If an entry ⟨entry-1⟩ is made an alias of ⟨entry-2⟩ then:

    -

    The index suppression trigger is performed by -


    The index suppression trigger is performed by +


    \glsxtrsetaliasnoindex  \glsxtrsetaliasnoindex

    -

    +

    This is performed after the default options provided by \GlsXtrSetDefaultGlsOpts @@ -16716,17 +16795,17 @@ class="cmss-10">=only, \glsxtrsetaliasnoindex will default to do nothing. -

    Within the definition of

    Within the definition of \glsxtrsetaliasnoindex you can use -



    \glsxtrindexaliased  \glsxtrindexaliased

    -

    +

    to index ⟨entry-2⟩. -

    The index suppression command can be redefined to index the main term instead. +

    The index suppression command can be redefined to index the main term instead. For example: @@ -16738,27 +16817,27 @@ For example:  
     \setkeys{glslink}{noindex}%  
    }

    -

    -

    The value of the

    +

    The value of the alias field can be accessed using -



    \glsxtralias  \glsxtralias{label}

    -

    +

    -

    -

    +

    Top

    11. Supplemental Packages

    -

    The

    The glossaries bundle provides additional support packages glossaries-prefix (for @@ -16767,10 +16846,10 @@ class="cmss-10">glossaries-accsupp (for accessibility support). These packages aren’t automatically loaded.

    -

    Top

    11.1 Prefixes or Determiners

    -

    If prefixing is required, you can simply load

    If prefixing is required, you can simply load glossaries-prefix after glossaries-extra. For @@ -16794,13 +16873,13 @@ example:  
    \printglossaries  
    \end{document}

    -

    -

    +

    +

    -

    Top

    11.2 Accessibility Support

    -

    The

    The glossaries-accsupp package needs to be loaded before glossaries-extra or through @@ -16815,7 +16894,7 @@ class="cmss-10">accsupp \usepackage[accsupp]{glossaries-extra}

    -

    If you don’t load

    If you don’t load glossaries-accsupp or you load glossaries-accsuppxxx⟩ commands described below will simply be equiv corresponding \glsentryxxx⟩ commands. -

    The following

    The following \glsaccessxxx⟩ commands add accessibility information wrapped around the corresponding \glsentryxxx⟩ commands. There is no check for existence of the entry nor do any of these commands add formatting, hyperlinks or indexing information. -



    \glsaccessname  \glsaccessname{label}

    -

    +

    This displays the value of the name field for the entry identified by ⟨label⟩. -

    If the

    If the glossaries-accsupp package isn’t loaded, this is simply defined as: @@ -16857,7 +16936,7 @@ class="cmss-10">glossaries-accsupp \newcommand*{\glsaccessname}[1]{\glsentryname{#1}}

    -

    otherwise it’s defined as: +

    otherwise it’s defined as: @@ -16871,20 +16950,20 @@ class="cmss-10">glossaries-accsupp  {#1}%  
    }

    -

    (

    (\glsnameaccessdisplay is defined by the glossaries-accsupp package.) The first letter upper case version is: -



    \Glsaccessname  \Glsaccessname{label}

    -

    +

    Without the glossaries-accsupp package this is just defined as: @@ -16895,7 +16974,7 @@ class="cmss-10">glossaries-accsupp \newcommand*{\Glsaccessname}[1]{\Glsentryname{#1}}

    -

    With the

    With the glossaries-accsupp package this is defined as: @@ -16911,112 +16990,112 @@ class="cmss-10">glossaries-accsupp  {#1}%  
    }

    -

    -

    The following commands are all defined in an analogous manner. -


    +

    The following commands are all defined in an analogous manner. +


    \glsaccesstext  \glsaccesstext{label}

    -

    +

    This displays the value of the text field. -



    \Glsaccesstext  \Glsaccesstext{label}

    -

    +

    This displays the value of the text field with the first letter converted to upper case. -



    \glsaccessplural  \glsaccessplural{label}

    -

    +

    This displays the value of the plural field. -



    \Glsaccessplural  \Glsaccessplural{label}

    -

    +

    This displays the value of the plural field with the first letter converted to upper case. -



    \glsaccessfirst  \glsaccessfirst{label}

    -

    +

    This displays the value of the first field. -



    \Glsaccessfirst  \Glsaccessfirst{label}

    -

    +

    This displays the value of the first field with the first letter converted to upper case. -



    \glsaccessfirstplural  \glsaccessfirstplural{label}

    -

    +

    This displays the value of the firstplural field. -



    \Glsaccessfirstplural  \Glsaccessfirstplural{label}

    -

    +

    This displays the value of the firstplural field with the first letter converted to upper case. -



    \glsaccesssymbol  \glsaccesssymbol{label}

    -

    +

    This displays the value of the symbol field. -



    \Glsaccesssymbol  }

    -

    +

    This displays the value of the symbol field with the first letter converted to upper case. -



    \glsaccesssymbolplural  \glsaccesssymbolplural{label}

    -

    +

    This displays the value of the symbolplural field. -



    \Glsaccesssymbolplural  \Glsaccesssymbolplural{label}

    -

    +

    This displays the value of the symbolplural field with the first letter converted to upper case. -



    \glsaccessdesc  \glsaccessdesc{label}

    -

    +

    This displays the value of the desc field. -



    \Glsaccessdesc  \Glsaccessdesc{label}

    -

    +

    This displays the value of the desc field with the first letter converted to upper case. -



    \glsaccessdescplural  \glsaccessdescplural{label}

    -

    +

    This displays the value of the descplural field. -



    \Glsaccessdescplural  \Glsaccessdescplural{label}

    -

    +

    This displays the value of the descplural field with the first letter converted to upper case. -



    \glsaccessshort  \glsaccessshort{label}

    -

    +

    This displays the value of the short field. -



    \Glsaccessshort  \Glsaccessshort{label}

    -

    +

    This displays the value of the short field with the first letter converted to upper case. -



    \glsaccessshortpl  \glsaccessshortpl{label}

    -

    +

    This displays the value of the shortplural field. -



    \Glsaccessshortpl  \Glsaccessshortpl{label}

    -

    +

    This displays the value of the shortplural field with the first letter converted to upper case. -



    \glsaccesslong  \glsaccesslong{label}

    -

    +

    This displays the value of the long field. -



    \Glsaccesslong  \Glsaccesslong{label}

    -

    +

    This displays the value of the long field with the first letter converted to upper case. -



    \glsaccesslongpl  }

    -

    +

    This displays the value of the longplural field. -



    \Glsaccesslongpl  \Glsaccesslongpl{label}

    -

    +

    This displays the value of the longplural field with the first letter converted to upper @@ -17199,11 +17278,11 @@ case.

    -

    -

    +

    Top

    12. Sample Files

    -

    The following sample files are provided with this package: +

    The following sample files are provided with this package:

    sample.tex
    sample-suppl-hyp.tex. -

    -

    +

    Top

    -

    -

    Alternatively you can use the

    +

    Alternatively you can use the title key when you print the list of abbreviations. For example: @@ -17531,7 +17610,7 @@ For example:

    \printabbreviations[title={List of Abbreviations}]
    -

    or +

    or @@ -17539,13 +17618,13 @@ For example:

    \printglossary[type=abbreviations,title={List of Abbreviations}]
    -

    -

    The other fixed text commands are the diagnostic messages, which shouldn’t +

    +

    The other fixed text commands are the diagnostic messages, which shouldn’t appear in the final draft of your document. -

    The

    The glossaries-extra package has the facility to load language modules if they exist, but won’t warn if they don’t. -

    If you want to write your own language module, you just need to create a file +

    If you want to write your own language module, you just need to create a file called glossariesxtr-langtracklang package). For example, glossariesxtr-french.ldf. -

    The simplest code for this file is: +

    The simplest code for this file is: @@ -17586,8 +17665,8 @@ class="cmtt-10">glossariesxtr-french.ldf.  
      \glossariesxtrcaptionsfrench  
    }

    -

    -

    You can adapt this for other languages by replacing all instances of the language +

    +

    You can adapt this for other languages by replacing all instances of the language identifier french and the translated text Abr\’eviations as appropriate. This EX’s path so that it can be found by class="cmss-10">glossaries-extra. You might also want to consider uploading it to CTAN so that it can be useful to others. (Please don’t send it to me. I already have more packages than I am able to maintain.) -

    If you additionally want to provide translations for the diagnostic messages used +

    If you additionally want to provide translations for the diagnostic messages used when a glossary is missing, you need to redefine the following commands: -



    \GlsXtrNoGlsWarningHead  }{file}

    -

    +

    This produces the following text in English:

    -

    This document is incomplete. The external file associated with the +

    This document is incomplete. The external file associated with the glossary ‘⟨label⟩’ (which should be called ⟨file⟩) hasn’t been created.

    -



    \GlsXtrNoGlsWarningEmptyStart  \GlsXtrNoGlsWarningEmptyStart

    -

    +

    This produces the following text in English:

    -

    This has probably happened because there are no entries defined in +

    This has probably happened because there are no entries defined in this glossary.

    -



    \GlsXtrNoGlsWarningEmptyMain  \GlsXtrNoGlsWarningEmptyMain

    -

    +

    This produces the following text in English:

    -

    If you don’t want this glossary, add

    If you don’t want this glossary, add nomain to your package option list when you load glossaries-extra.sty. For example:

    -



    \GlsXtrNoGlsWarningEmptyNotMain  \GlsXtrNoGlsWarningEmptyNotMain{label}

    -

    +

    This produces the following text in English:

    -

    Did you forget to use

    Did you forget to use type=label⟩ when you defined your entries? If you tried to load entries into this glossary with ] as the optional argument? If you did, check that the definitions in the file you loaded all had the type set to \glsdefaulttype.

    -



    \GlsXtrNoGlsWarningCheckFile  \GlsXtrNoGlsWarningCheckFile{file}

    -

    +

    This produces the following text in English:

    -

    Check the contents of the file ⟨

    Check the contents of the file ⟨file⟩. If it’s empty, that means you haven’t indexed any of your entries in this glossary (using commands like \gls or \glsadd) so this list can’t be generated. If the file isn’t empty, the document build process hasn’t been completed.

    -



    \GlsXtrNoGlsWarningMisMatch  \GlsXtrNoGlsWarningMisMatch

    -

    +

    This produces the following text in English:

    -

    You need +

    You need to either replace \makenoidxglossaries with \makeglossaries or @@ -17705,17 +17784,17 @@ class="cmtt-10">\printglossaries) class="cmtt-10">\printnoidxglossary (or \printnoidxglossaries) and then rebuild this document.

    -



    \GlsXtrNoGlsWarningNoOut  \GlsXtrNoGlsWarningNoOut{file}

    -

    +

    This produces the following text in English:

    -

    The file ⟨

    The file ⟨file⟩ doesn’t exist. This most likely means you haven’t used \makeglossaries or you have used \nofiles. If this is just a draft version of the document, you can suppress this message using the nomissingglstext package option.

    -



    \GlsXtrNoGlsWarningTail  \GlsXtrNoGlsWarningTail

    -

    +

    This produces the following text in English:

    -

    This message will be removed once the problem has been fixed.

    -


    This message will be removed once the problem has been fixed.

    +


    \GlsXtrNoGlsWarningBuildInfo  \GlsXtrNoGlsWarningBuildInfo

    -

    +

    This is advice on how to generate the glossary files. See the documented code (glossaries-extra-code.pdf) for further details. -



    \GlsXtrNoGlsWarningAutoMake  \GlsXtrNoGlsWarningAutoMake{label}

    -

    +

    This is the message produced when the automake593, 594, 595, 596, 597
    +href="glossaries-extra-manual.html#dx1-37048" >597, 598

    F fancyhdr package  598
    +href="glossaries-extra-manual.html#dx1-13042" >599
    first use  599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 648, 649, 650
    +class="cmbx-10">649, 650, 651
    first use flag  651, 652, 653, 654, 655, 652, 653, 654, 655, 656, 656
    +class="cmbx-10">657
    first use text  657, 658
    +class="cmbx-10">658, 659
    fontenc package  659
    +href="glossaries-extra-manual.html#dx1-22024" >660

    G \gglssetwidest  660
    +class="cmti-10">661
    \gglsupdatewidest  661
    +class="cmti-10">662
    \gGlsXtrSetField  662
    +class="cmti-10">663
    glossaries package  663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673
    +href="glossaries-extra-manual.html#dx1-5032" >664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675
    glossaries-accsupp package  674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689
    +href="glossaries-extra-manual.html#dx1-4036" >676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691
    glossaries-extra package  690, 691
    +href="glossaries-extra-manual.html#dx1-5034" >692, 693
    glossaries-extra-stylemods package  692, 693, 694, 695, 696, 697, 698
    +href="glossaries-extra-manual.html#dx1-4027" >694, 695, 696, 697, 698, 699, 700
    glossaries-prefix package  699, 700, 701
    +href="glossaries-extra-manual.html#dx1-41001" >701, 702, 703
    \glossariesextrasetup  702
    +class="cmti-10">704
    glossary styles:
        altlist  703
    +href="glossaries-extra-manual.html#dx1-17022" >705
        alttree  704, 705, 706, 707, 708, 709, 710
    +href="glossaries-extra-manual.html#dx1-17032" >706, 707, 708, 709, 710, 711, 712
        bookindex  711, 712, 713, 714
    +href="glossaries-extra-manual.html#dx1-13002" >713, 714, 715, 716
        index  715
    +href="glossaries-extra-manual.html#dx1-17027" >717
        inline  716, 717
    +href="glossaries-extra-manual.html#dx1-17006" >718, 719
        list  718, 719
    +href="glossaries-extra-manual.html#dx1-17018" >720, 721
        listdotted  720
    +href="glossaries-extra-manual.html#dx1-17023" >722
        long  721
    +href="glossaries-extra-manual.html#dx1-17012" >723
        long3col  722
    +href="glossaries-extra-manual.html#dx1-17004" >724
        mcolindexgroup  723
    +href="glossaries-extra-manual.html#dx1-13003" >725
        tree  724
    +href="glossaries-extra-manual.html#dx1-17028" >726
    glossary-bookindex package  725, 726
    +href="glossaries-extra-manual.html#dx1-13001" >727, 728
    glossary-inline package  727
    +href="glossaries-extra-manual.html#dx1-17007" >729
    glossary-tree package  728, 729, 730, 731
    +href="glossaries-extra-manual.html#dx1-13035" >730, 731, 732, 733
    \glossentrynameother  732
    +class="cmti-10">734
    \glossxtrsetpopts  733
    +class="cmti-10">735
    \glsabbrvdefaultfont  734, 736, 735
    +class="cmti-10">737
    \glsabbrvemfont  736
    +class="cmti-10">738
    \glsabbrvfont  737
    +class="cmti-10">739
    \glsabbrvhyphenfont  738
    +class="cmti-10">740
    \glsabbrvonlyfont  739
    +class="cmti-10">741
    \glsabbrvscfont  740
    +class="cmti-10">742
    \glsabbrvsmfont  741
    +class="cmti-10">743
    \glsabbrvuserfont  742, 744, 743
    +class="cmti-10">745
    \Glsaccessdesc  744
    +class="cmti-10">746
    \glsaccessdesc  745
    +class="cmti-10">747
    \Glsaccessdescplural  746
    +class="cmti-10">748
    \glsaccessdescplural  747
    +class="cmti-10">749
    \Glsaccessfirst  748
    +class="cmti-10">750
    \glsaccessfirst  749
    +class="cmti-10">751
    \Glsaccessfirstplural  750
    +class="cmti-10">752
    \glsaccessfirstplural  751
    +class="cmti-10">753
    \Glsaccesslong  752
    +class="cmti-10">754
    \glsaccesslong  753
    +class="cmti-10">755
    \Glsaccesslongpl  754
    +class="cmti-10">756
    \glsaccesslongpl  755
    +class="cmti-10">757
    \Glsaccessname  756
    +class="cmti-10">758
    \glsaccessname  757
    +class="cmti-10">759
    \Glsaccessplural  758
    +class="cmti-10">760
    \glsaccessplural  759
    +class="cmti-10">761
    \Glsaccessshort  760
    +class="cmti-10">762
    \glsaccessshort  761
    +class="cmti-10">763
    \Glsaccessshortpl  762
    +class="cmti-10">764
    \glsaccessshortpl  763
    +class="cmti-10">765
    \Glsaccesssymbol  764
    +class="cmti-10">766
    \glsaccesssymbol  765
    +class="cmti-10">767
    \Glsaccesssymbolplural  766
    +class="cmti-10">768
    \glsaccesssymbolplural  767
    +class="cmti-10">769
    \Glsaccesstext  768
    +class="cmti-10">770
    \glsaccesstext  769
    +class="cmti-10">771
    \glsacspace  770
    +class="cmti-10">772
    \glsacspacemax  771
    +class="cmti-10">773
    \glsadd options
        format  772
    +href="glossaries-extra-manual.html#dx1-8071" >774
        theHvalue  773, 774
    +href="glossaries-extra-manual.html#dx1-6022" >775, 776
        thevalue  775, 776, 777, 778, 779
    +href="glossaries-extra-manual.html#dx1-6021" >777, 778, 779, 780, 781
    \glscategory  780
    +class="cmti-10">782
    \glscategorylabel  781
    +class="cmti-10">783
    \glscurrententrylabel  782
    +class="cmti-10">784
    \glscurrentfieldvalue  783
    +class="cmti-10">785
    \glsentrycurrcount  784
    +class="cmti-10">786
    \glsentryprevcount  785
    +class="cmti-10">787
    \glsentryprevmaxcount  786
    +class="cmti-10">788
    \glsentryprevtotalcount  787
    +class="cmti-10">789
    \glsFindWidestAnyName  788
    +class="cmti-10">790
    \glsFindWidestAnyNameLocation  789
    +class="cmti-10">791
    \glsFindWidestAnyNameSymbol  790
    +class="cmti-10">792
    \glsFindWidestAnyNameSymbolLocation  791
    +class="cmti-10">793
    \glsFindWidestLevelTwo  792
    +class="cmti-10">794
    \glsFindWidestTopLevelName  793
    +class="cmti-10">795
    \glsFindWidestUsedAnyName  794
    +class="cmti-10">796
    \glsFindWidestUsedAnyNameLocation  795
    +class="cmti-10">797
    \glsFindWidestUsedAnyNameSymbol  796
    +class="cmti-10">798
    \glsFindWidestUsedAnyNameSymbolLocation  797
    +class="cmti-10">799
    \glsFindWidestUsedLevelTwo  798
    +class="cmti-10">800
    \glsFindWidestUsedTopLevelName  799
    +class="cmti-10">801
    \glsfirstabbrvdefaultfont  800
    +class="cmti-10">802
    \glsfirstabbrvemfont  801
    +class="cmti-10">803
    \glsfirstabbrvfont  802
    +class="cmti-10">804
    \glsfirstabbrvhyphenfont  803
    +class="cmti-10">805
    \glsfirstabbrvonlyfont  804
    +class="cmti-10">806
    \glsfirstabbrvsmfont  805
    +class="cmti-10">807
    \glsfirstabbrvuserfont  806
    +class="cmti-10">808
    \glsfirstlongdefaultfont  807
    +class="cmti-10">809
    \glsfirstlongemfont  808
    +class="cmti-10">810
    \glsfirstlongfont  809
    +class="cmti-10">811
    \glsfirstlongfootnotefont  810
    +class="cmti-10">812
    \glsfirstlonghyphenfont  811
    +class="cmti-10">813
    \glsfirstlongonlyfont  812
    +class="cmti-10">814
    \glsfirstlonguserfont  813
    +class="cmti-10">815
    \Glsfmtfirst  814
    +class="cmti-10">816
    \glsfmtfirst  815
    +class="cmti-10">817
    \Glsfmtfirstpl  816
    +class="cmti-10">818
    \glsfmtfirstpl  817
    +class="cmti-10">819
    \Glsfmtfull  818
    +class="cmti-10">820
    \glsfmtfull  819
    +class="cmti-10">821
    \Glsfmtfullpl  820
    +class="cmti-10">822
    \glsfmtfullpl  821
    +class="cmti-10">823
    \Glsfmtlong  822
    +class="cmti-10">824
    \glsfmtlong  823
    +class="cmti-10">825
    \Glsfmtlongpl  824
    +class="cmti-10">826
    \glsfmtlongpl  825
    +class="cmti-10">827
    \Glsfmtname  826
    +class="cmti-10">828
    \glsfmtname  827
    +class="cmti-10">829
    \Glsfmtplural  828
    +class="cmti-10">830
    \glsfmtplural  829
    +class="cmti-10">831
    \Glsfmtshort  830
    +class="cmti-10">832
    \glsfmtshort  831
    +class="cmti-10">833
    \Glsfmtshortpl  832
    +class="cmti-10">834
    \glsfmtshortpl  833
    +class="cmti-10">835
    \Glsfmttext  834
    +class="cmti-10">836
    \glsfmttext  835
    +class="cmti-10">837
    \glsforeachwithattribute  836
    +class="cmti-10">838
    \glsgetattribute  837
    +class="cmti-10">839
    \glsgetcategoryattribute  838
    +class="cmti-10">840
    \glsgetwidestname  839
    +class="cmti-10">841
    \glsgetwidestsubname  840
    +class="cmti-10">842
    \glshasattribute  841
    +class="cmti-10">843
    \glshascategoryattribute  842
    +class="cmti-10">844
    \glshex  843
    +class="cmti-10">845
    \glsifattribute  844
    +class="cmti-10">846
    \glsifcategory  845
    +class="cmti-10">847
    \glsifcategoryattribute  846
    +class="cmti-10">848
    \glsifnotregular  847
    +class="cmti-10">849
    \glsifnotregularcategory  848
    +class="cmti-10">850
    \glsifregular  849
    +class="cmti-10">851
    \glsifregularcategory  850
    +class="cmti-10">852
    \glskeylisttok  851
    +class="cmti-10">853
    \glslabeltok  852
    +class="cmti-10">854
    @@ -19625,2003 +19706,2017 @@ class="cmti-10">852
    class="cmtt-10">\glslink options
        format  853, 854, 855, 856
    +href="glossaries-extra-manual.html#dx1-6034" >855, 856, 857, 858
        hyper  857, 858, 859
    +href="glossaries-extra-manual.html#dx1-11055" >859, 860, 861
        hyper=false  860
    +href="glossaries-extra-manual.html#dx1-26016" >862
        hyperoutside  861, 862
    +href="glossaries-extra-manual.html#dx1-6016" >863, 864
        noindex  863, 864, 865, 866, 867, 868, 869
    +href="glossaries-extra-manual.html#dx1-6001" >865, 866, 867, 868, 869, 870, 871
        theHvalue  870
    +href="glossaries-extra-manual.html#dx1-6025" >872
        thevalue  871
    +href="glossaries-extra-manual.html#dx1-6024" >873
        wrgloss  872, 873, 874, 875
    +href="glossaries-extra-manual.html#dx1-6009" >874, 875, 876, 877
    \glslinkcheckfirsthyperhook  876
    +class="cmti-10">878
    \glslistchildpostlocation  877
    +class="cmti-10">879
    \glslistchildprelocation  878
    +class="cmti-10">880
    \glslongdefaultfont  879
    +class="cmti-10">881
    \glslongemfont  880
    +class="cmti-10">882
    \glslongfont  881
    +class="cmti-10">883
    \glslongfootnotefont  882
    +class="cmti-10">884
    \glslonghyphenfont  883
    +class="cmti-10">885
    \glslongonlyfont  884
    +class="cmti-10">886
    \glslongpltok  885
    +class="cmti-10">887
    \glslongtok  886
    +class="cmti-10">888
    \glslonguserfont  887
    +class="cmti-10">889
    \glsnoidxdisplayloc  888
    +class="cmti-10">890
    \glsps  889
    +class="cmti-10">891
    \glspt  890
    +class="cmti-10">892
    \glsseeitemformat  891
    +class="cmti-10">893
    \glssetattribute  892
    +class="cmti-10">894
    \glssetcategoryattribute  893
    +class="cmti-10">895
    \glssetregularcategory  894
    +class="cmti-10">896
    \glsshortpltok  895
    +class="cmti-10">897
    \glsshorttok  896
    +class="cmti-10">898
    \glstreechildprelocation  897
    +class="cmti-10">899
    \glstreeprelocation  898
    +class="cmti-10">900
    \glsupdatewidest  899
    +class="cmti-10">901
    \glsuseabbrvfont  900
    +class="cmti-10">902
    \glsuselongfont  901
    +class="cmti-10">903
    \Glsxtr  902
    +class="cmti-10">904
    \glsxtr  903
    +class="cmti-10">905
    \glsxtrabbrvfootnote  904
    +class="cmti-10">906
    \glsxtrabbrvpluralsuffix  905, 907, 906
    +class="cmti-10">908
    \glsxtractivatenopost  907
    +class="cmti-10">909
    \glsxtraddallcrossrefs  908
    +class="cmti-10">910
    \glsxtralias  909
    +class="cmti-10">911
    \glsxtrAltTreeIndent  910
    +class="cmti-10">912
    \glsxtralttreeInit  911
    +class="cmti-10">913
    \glsxtralttreeSubSymbolDescLocation  912
    +class="cmti-10">914
    \glsxtralttreeSymbolDescLocation  913
    +class="cmti-10">915
    \glsxtrautoindex  914
    +class="cmti-10">916
    \glsxtrautoindexassignsort  915
    +class="cmti-10">917
    \glsxtrautoindexentry  916
    +class="cmti-10">918
    \glsxtrbookindexatendgroup  917
    +class="cmti-10">919
    \glsxtrbookindexbetween  918
    +class="cmti-10">920
    \glsxtrbookindexbookmark  919
    +class="cmti-10">921
    \glsxtrbookindexcols  920
    +class="cmti-10">922
    \glsxtrbookindexcolspread  921
    +class="cmti-10">923
    \glsxtrbookindexfirstmark  922
    +class="cmti-10">924
    \glsxtrbookindexfirstmarkfmt  923
    +class="cmti-10">925
    \glsxtrbookindexformatheader  924
    +class="cmti-10">926
    \glsxtrbookindexlastmark  925
    +class="cmti-10">927
    \glsxtrbookindexlastmarkfmt  926
    +class="cmti-10">928
    \glsxtrbookindexmarkentry  927
    +class="cmti-10">929
    \glsxtrbookindexname  928
    +class="cmti-10">930
    \glsxtrbookindexparentchildsep  929
    +class="cmti-10">931
    \glsxtrbookindexparentsubchildsep  930
    +class="cmti-10">932
    \glsxtrbookindexprelocation  931
    +class="cmti-10">933
    \glsxtrbookindexsubatendgroup  932
    +class="cmti-10">934
    \glsxtrbookindexsubbetween  933
    +class="cmti-10">935
    \glsxtrbookindexsubname  934
    +class="cmti-10">936
    \glsxtrbookindexsubprelocation  935
    +class="cmti-10">937
    \glsxtrbookindexsubsubatendgroup  936
    +class="cmti-10">938
    \glsxtrbookindexsubsubbetween  937
    +class="cmti-10">939
    \glsxtrchecknohyperfirst  938
    +class="cmti-10">940
    \glsxtrcopytoglossary  939
    +class="cmti-10">941
    \glsxtrdeffield  940
    +class="cmti-10">942
    \glsxtrdetoklocation  941
    +class="cmti-10">943
    \glsxtrdisplayendloc  942
    +class="cmti-10">944
    \glsxtrdisplayendlochook  943
    +class="cmti-10">945
    \glsxtrdisplaysingleloc  944
    +class="cmti-10">946
    \glsxtrdisplaystartloc  945
    +class="cmti-10">947
    \glsxtrdoautoindexname  946
    +class="cmti-10">948
    \glsxtrdowrglossaryhook  947
    +class="cmti-10">949
    \glsxtredeffield  948
    +class="cmti-10">950
    \glsxtremsuffix  949
    +class="cmti-10">951
    \GlsXtrEnableEntryCounting  950
    +class="cmti-10">952
    \GlsXtrEnableEntryUnitCounting  951
    +class="cmti-10">953
    \GlsXtrEnableIndexFormatOverride  952
    +class="cmti-10">954
    \GlsXtrEnableInitialTagging  953
    +class="cmti-10">955
    \GlsXtrEnableOnTheFly  954
    +class="cmti-10">956
    \GlsXtrEnablePreLocationTag  955
    +class="cmti-10">957
    \glsxtrenablerecordcount  956
    +class="cmti-10">958
    +\glsxtrendfor  959
    \glsxtrentryfmt  957
    +class="cmti-10">960
    \glsxtrfielddolistloop  958
    -\glsxtrfieldforlistloop  959
    +class="cmti-10">961
    +\glsxtrfieldforlistloop  962
    \glsxtrfieldifinlist  960
    +class="cmti-10">963
    \glsxtrfieldlistadd  961
    +class="cmti-10">964
    \glsxtrfieldlisteadd  962
    +class="cmti-10">965
    \glsxtrfieldlistgadd  963
    +class="cmti-10">966
    \glsxtrfieldlistxadd  964
    +class="cmti-10">967
    \glsxtrfieldtitlecasecs  965
    +class="cmti-10">968
    \glsxtrfieldxifinlist  966
    +class="cmti-10">969
    \glsxtrfmt  967
    +class="cmti-10">970
    \glsxtrfmt*  968
    +class="cmti-10">971
    \GlsXtrFmtDefaultOptions  969
    +class="cmti-10">972
    \glsxtrfmtdisplay  970
    +class="cmti-10">973
    \GlsXtrFmtField  971
    +class="cmti-10">974
    +\glsxtrforcsvfield  975
    \GlsXtrFormatLocationList  972
    +class="cmti-10">976
    \GLSxtrfull  973
    +class="cmti-10">977
    \Glsxtrfull  974
    +class="cmti-10">978
    \glsxtrfull  975
    +class="cmti-10">979
    \Glsxtrfullformat  976
    +class="cmti-10">980
    \glsxtrfullformat  977
    +class="cmti-10">981
    \GLSxtrfullpl  978
    +class="cmti-10">982
    \Glsxtrfullpl  979
    +class="cmti-10">983
    \glsxtrfullpl  980
    +class="cmti-10">984
    \Glsxtrfullplformat  981
    +class="cmti-10">985
    \glsxtrfullplformat  982
    +class="cmti-10">986
    \glsxtrfullsep  983
    +class="cmti-10">987
    \glsxtrglossentry  984
    +class="cmti-10">988
    \glsxtrglossentryother  985
    +class="cmti-10">989
    \glsxtrhyphensuffix  986
    +class="cmti-10">990
    \glsxtrifcounttrigger  987
    +class="cmti-10">991
    \glsxtrifcustomdiscardperiod  988
    +class="cmti-10">992
    \GlsXtrIfFieldEqStr  989
    +class="cmti-10">993
    \GlsXtrIfFieldUndef  990
    +class="cmti-10">994
    \glsxtrifhasfield  991
    +class="cmti-10">995
    \glsxtrifhasfield*  992
    +class="cmti-10">996
    \glsxtrifkeydefined  993
    +class="cmti-10">997
    \glsxtriflabelinlist  994
    +class="cmti-10">998
    \glsxtrifrecordtrigger  995
    +class="cmti-10">999
    \glsxtrifwasfirstuse  996
    +class="cmti-10">1000
    \glsxtrindexaliased  997
    +class="cmti-10">1001
    \glsxtrindexseealso  998
    +class="cmti-10">1002
    \glsxtrinitwrgloss  999
    +class="cmti-10">1003
    \Glsxtrinlinefullformat  1000
    +class="cmti-10">1004
    \glsxtrinlinefullformat  1001
    +class="cmti-10">1005
    \Glsxtrinlinefullplformat  1002
    +class="cmti-10">1006
    \glsxtrinlinefullplformat  1003
    +class="cmti-10">1007
    + + + \glsxtrinsertinsidetrue  1004
    +class="cmti-10">1008
    \GlsXtrLetField  1005
    - - - +class="cmti-10">1009
    \GlsXtrLetFieldToField  1006
    +class="cmti-10">1010
    \GlsXtrLoadResources  1007
    +class="cmti-10">1011
    +\glsxtrlocalsetgrouptitle  1012
    \GlsXtrLocationRecordCount  1008
    +class="cmti-10">1013
    \glsxtrlocrangefmt  1009
    +class="cmti-10">1014
    \Glsxtrlong  1010, 1015, 1011
    +class="cmti-10">1016
    \glsxtrlong  1012
    +class="cmti-10">1017
    \glsxtrlonghyphen  1013
    +class="cmti-10">1018
    \glsxtrlonghyphenshort  1014
    +class="cmti-10">1019
    \GLSxtrlongpl  1015
    +class="cmti-10">1020
    \Glsxtrlongpl  1016
    +class="cmti-10">1021
    \glsxtrlongpl  1017
    +class="cmti-10">1022
    \glsxtrlongshortdescsort  1018
    +class="cmti-10">1023
    \glsxtrnewgls  1019
    +class="cmti-10">1024
    \glsxtrnewGLSlike  1020
    +class="cmti-10">1025
    \glsxtrnewglslike  1021
    +class="cmti-10">1026
    \glsxtrnewnumber  1022
    +class="cmti-10">1027
    \glsxtrnewrgls  1023
    +class="cmti-10">1028
    \glsxtrnewrGLSlike  1024
    +class="cmti-10">1029
    \glsxtrnewrglslike  1025
    +class="cmti-10">1030
    \glsxtrnewsymbol  1026
    +class="cmti-10">1031
    \GlsXtrNoGlsWarningAutoMake  1027
    +class="cmti-10">1032
    \GlsXtrNoGlsWarningBuildInfo  1028
    +class="cmti-10">1033
    \GlsXtrNoGlsWarningCheckFile  1029
    +class="cmti-10">1034
    \GlsXtrNoGlsWarningEmptyMain  1030
    +class="cmti-10">1035
    \GlsXtrNoGlsWarningEmptyNotMain  1031
    +class="cmti-10">1036
    \GlsXtrNoGlsWarningEmptyStart  1032
    +class="cmti-10">1037
    \GlsXtrNoGlsWarningHead  1033
    +class="cmti-10">1038
    \GlsXtrNoGlsWarningMisMatch  1034
    +class="cmti-10">1039
    \GlsXtrNoGlsWarningNoOut  1035
    +class="cmti-10">1040
    \GlsXtrNoGlsWarningTail  1036
    +class="cmti-10">1041
    \glsxtrnopostpunc  1037
    +class="cmti-10">1042
    \glsxtronlysuffix  1038
    +class="cmti-10">1043
    \glsxtrorglong  1039
    +class="cmti-10">1044
    \glsxtrorgshort  1040
    +class="cmti-10">1045
    \Glsxtrp  1041, 1046, 1042
    +class="cmti-10">1047
    \glsxtrp  1043
    +class="cmti-10">1048
    \glsxtrpageref  1044
    +class="cmti-10">1049
    \glsxtrparen  1045
    +class="cmti-10">1050
    \Glsxtrpl  1046
    +class="cmti-10">1051
    \glsxtrpl  1047
    +class="cmti-10">1052
    \glsxtrpostdescription  1048
    +class="cmti-10">1053
    \glsxtrposthyphenlong  1049
    +class="cmti-10">1054
    \glsxtrposthyphenshort  1050
    +class="cmti-10">1055
    + + + \glsxtrpostlink  1051
    +class="cmti-10">1056
    \glsxtrpostlinkAddDescOnFirstUse  1052
    +class="cmti-10">1057
    \glsxtrpostlinkAddSymbolOnFirstUse  1053
    - - - +class="cmti-10">1058
    \glsxtrpostlinkendsentence  1054
    +class="cmti-10">1059
    \glsxtrpostlinkhook  1055
    +class="cmti-10">1060
    \glsxtrpostlongdescription  1056
    +class="cmti-10">1061
    \glsxtrpostnamehook  1057
    +class="cmti-10">1062
    \GlsXtrPostNewAbbreviation  1058
    +class="cmti-10">1063
    \glsxtrprelocation  1059, 1064, 1060
    +class="cmti-10">1065
    \glsxtrprovidestoragekey  1061
    +class="cmti-10">1066
    \GlsXtrRecordCount  1062
    +class="cmti-10">1067
    \GlsXtrRecordCounter  1063
    +href="glossaries-extra-manual.html#dx1-37056" >1068
    \glsxtrrecordtriggervalue  1064
    +class="cmti-10">1069
    \glsxtrregularfont  1065
    +class="cmti-10">1070
    \glsxtrresourcefile  1066
    +class="cmti-10">1071
    \glsxtrresourceinit  1067
    +class="cmti-10">1072
    \glsxtrrestorepostpunc  1068
    +class="cmti-10">1073
    \glsxtrRevertMarks  1069
    +class="cmti-10">1074
    \glsxtrscsuffix  1070
    +class="cmti-10">1075
    \glsxtrseealsolabels  1071
    +class="cmti-10">1076
    \glsxtrseelist  1072
    +class="cmti-10">1077
    \GlsXtrSetActualChar  1073
    +class="cmti-10">1078
    \glsxtrsetaliasnoindex  1074
    +class="cmti-10">1079
    \GlsXtrSetAltModifier  1075
    +class="cmti-10">1080
    \glsxtrsetcategory  1076
    +class="cmti-10">1081
    \glsxtrsetcategoryforall  1077
    +class="cmti-10">1082
    \GlsXtrSetDefaultGlsOpts  1078
    +class="cmti-10">1083
    \GlsXtrSetEncapChar  1079
    +class="cmti-10">1084
    \GlsXtrSetEscChar  1080
    +class="cmti-10">1085
    \GlsXtrSetField  1081
    +class="cmti-10">1086
    \glsxtrsetfieldifexists  1082
    +class="cmti-10">1087
    \glsxtrsetgrouptitle  1083
    +class="cmti-10">1088
    \GlsXtrSetLevelChar  1084
    +class="cmti-10">1089
    \glsxtrsetpopts  1085
    +class="cmti-10">1090
    \GlsXtrSetRecordCountAttribute  1086
    +class="cmti-10">1091
    \Glsxtrshort  1087, 1092, 1088
    +class="cmti-10">1093
    \glsxtrshort  1089
    +class="cmti-10">1094
    \glsxtrshorthyphenlong  1090
    +class="cmti-10">1095
    \GLSxtrshortpl  1091
    +class="cmti-10">1096
    \Glsxtrshortpl  1092
    +class="cmti-10">1097
    \glsxtrshortpl  1093
    +class="cmti-10">1098
    \glsxtrsmsuffix  1094
    +class="cmti-10">1099
    \Glsxtrsubsequentfmt  1095
    +class="cmti-10">1100
    \glsxtrsubsequentfmt  1096
    +class="cmti-10">1101
    \Glsxtrsubsequentplfmt  1097
    +class="cmti-10">1102
    \glsxtrsubsequentplfmt  1098
    +class="cmti-10">1103
    + + + \glsxtrtagfont  1099
    +class="cmti-10">1104
    \GlsXtrTotalRecordCount  1100
    +class="cmti-10">1105
    \glsxtrunsrtdo  1101
    - - - +class="cmti-10">1106
    \GlsXtrUseAbbrStyleFmts  1102
    +class="cmti-10">1107
    \GlsXtrUseAbbrStyleSetup  1103
    +class="cmti-10">1108
    \Glsxtrusefield  1104
    +class="cmti-10">1109
    \glsxtrusefield  1105
    +class="cmti-10">1110
    \glsxtruserfield  1106
    +class="cmti-10">1111
    \glsxtruserparen  1107
    +class="cmti-10">1112
    \glsxtrusersuffix  1108, 1113, 1109
    +class="cmti-10">1114
    \glsxtrusesee  1110
    +class="cmti-10">1115
    \glsxtruseseealso  1111
    +class="cmti-10">1116
    \glsxtruseseeformat  1112, 1117, 1113
    +class="cmti-10">1118
    \GlsXtrWarnDeprecatedAbbrStyle  1114
    +class="cmti-10">1119
    \GlsXtrWarning  1115
    +class="cmti-10">1120
    \glsxtrword  1116
    +class="cmti-10">1121
    \glsxtrwordsep  1117
    +class="cmti-10">1122
    \glsxtrwrglossmark  1118
    +class="cmti-10">1123

    H hyperref package  1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138
    +href="glossaries-extra-manual.html#dx1-6033" >1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143

    I \ifglsxtrinitwrglossbefore  1139
    +class="cmti-10">1144
    inputenc package  1140
    +href="glossaries-extra-manual.html#dx1-33018" >1145

    L link-text  1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1159
    +class="cmbx-10">1164
    location list  1160, 1161, 1162, 1163, 1165, 1166, 1167, 1168, 1164
    +class="cmbx-10">1169
    \longnewglossaryentry  1165
    +class="cmti-10">1170

    M makeglossaries  1166, 1167, 1168, 1169, 1171, 1172, 1173, 1174, 1170
    +class="cmbx-10">1175
    \makeglossaries  1171
    +class="cmti-10">1176
    makeglossaries-lite  1172, 1177, 1173
    +class="cmbx-10">1178
    makeglossaries-lite  1174, 1179, 1175
    +class="cmbx-10">1180
    makeindex  1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1188
    +class="cmbx-10">1193
    makeindex  1189, 1190, 1191, 1192
    +href="glossaries-extra-manual.html#dx1-6028" >1194, 1195, 1196, 1197
    memoir class  1193
    +href="glossaries-extra-manual.html#dx1-3021" >1198
    mfirstuc package  1194, 1195, 1196
    +href="glossaries-extra-manual.html#dx1-5" >1199, 1200, 1201

    N + + + \newabbreviation  1197
    +class="cmti-10">1202
    \newabbreviationstyle  1198
    - - - +class="cmti-10">1203
    \newacronym  1199
    +class="cmti-10">1204
    \newglossaryentry options
        alias  1200, 1201, 1202, 1203, 1204, 1205
    +href="glossaries-extra-manual.html#dx1-5021" >1205, 1206, 1207, 1208, 1209, 1210
        category  1206, 1207, 1208, 1209, 1210, 1211
    +href="glossaries-extra-manual.html#dx1-5020" >1211, 1212, 1213, 1214, 1215, 1216
        desc  1212, 1213
    +href="glossaries-extra-manual.html#dx1-43038" >1217, 1218
        descplural  1214, 1215
    +href="glossaries-extra-manual.html#dx1-43042" >1219, 1220
        description  1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235
    +href="glossaries-extra-manual.html#dx1-5002" >1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240
        descriptionplural  1236, 1237, 1238, 1239
    +href="glossaries-extra-manual.html#dx1-5030" >1241, 1242, 1243, 1244
        first  1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252
    +href="glossaries-extra-manual.html#dx1-8013" >1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257
        firstplural  1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262
    +href="glossaries-extra-manual.html#dx1-8014" >1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267
        location  1263, 1264
    +href="glossaries-extra-manual.html#dx1-13016" >1268, 1269
        loclist  1265
    +href="glossaries-extra-manual.html#dx1-38025" >1270
        long  1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274
    +href="glossaries-extra-manual.html#dx1-10026" >1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279
        longplural  1275, 1276, 1277, 1278, 1279, 1280
    +href="glossaries-extra-manual.html#dx1-10010" >1280, 1281, 1282, 1283, 1284, 1285
        name  1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312
    +href="glossaries-extra-manual.html#dx1-5007" >1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1315, 1316, 1317
        parent  1313, 1314, 1315
    +href="glossaries-extra-manual.html#dx1-17054" >1318, 1319, 1320
        plural  1316, 1317, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325, 1326, 1327, 1328
    +href="glossaries-extra-manual.html#dx1-8017" >1321, 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333
        see  1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, 1354, 1355
    +href="glossaries-extra-manual.html#dx1-4054" >1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360
        seealso  1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, 1364, 1365
    +href="glossaries-extra-manual.html#dx1-4055" >1361, 1362, 1363, 1364, 1365, 1366, 1367, 1368, 1369, 1370
        short  1366, 1367, 1368, 1369, 1370, 1371, 1372, 1373, 1374, 1375, 1376, 1377, 1378, 1379
    +href="glossaries-extra-manual.html#dx1-8011" >1371, 1372, 1373, 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384
        shortplural  1380, 1381, 1382, 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394
    +href="glossaries-extra-manual.html#dx1-10011" >1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399
        sort  1395, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411
    +href="glossaries-extra-manual.html#dx1-4124" >1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411, 1412, 1413, 1414, 1415, 1416
        symbol  1412, 1413, 1414
    +href="glossaries-extra-manual.html#dx1-43030" >1417, 1418, 1419
        symbolplural  1415, 1416
    +href="glossaries-extra-manual.html#dx1-43034" >1420, 1421
        text  1417, 1418, 1419, 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429
    +href="glossaries-extra-manual.html#dx1-5009" >1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433, 1434
        type  1430, 1431
    +href="glossaries-extra-manual.html#dx1-12046" >1435, 1436
        user1  1432, 1433, 1434
    +href="glossaries-extra-manual.html#dx1-22080" >1437, 1438, 1439
    number list  1435, 1436, 1437, 1438, 1439, 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, 1463, 1464, 1465, 1466, 1467, 1463
    +class="cmbx-10">1468

    P package options:
        abbreviations  1464, 1465, 1466, 1467, 1468
    +href="glossaries-extra-manual.html#dx1-4136" >1469, 1470, 1471, 1472, 1473
        accsupp  1469, 1470, 1471, 1472
    +href="glossaries-extra-manual.html#dx1-4035" >1474, 1475, 1476, 1477
        acronym  1473
    +href="glossaries-extra-manual.html#dx1-4144" >1478
        acronymlists  1474
    +href="glossaries-extra-manual.html#dx1-4148" >1479
        automake  1475, 1476
    +href="glossaries-extra-manual.html#dx1-5054" >1480, 1481
        autoseeindex  1477, 1478
    +href="glossaries-extra-manual.html#dx1-4064" >1482, 1483
    + + +         false  1479, 1480
    +href="glossaries-extra-manual.html#dx1-4056" >1484, 1485
        debug  1481
    +href="glossaries-extra-manual.html#dx1-4002" >1486
            all  1482, 1483
    +href="glossaries-extra-manual.html#dx1-4005" >1487, 1488
            showtargets  1484, 1485
    - - - +href="glossaries-extra-manual.html#dx1-4003" >1489, 1490
            showwrgloss  1486, 1487, 1488
    +href="glossaries-extra-manual.html#dx1-4004" >1491, 1492, 1493
            true  1489
    +href="glossaries-extra-manual.html#dx1-4007" >1494
        docdef  1490, 1491, 1492, 1493
    +href="glossaries-extra-manual.html#dx1-4104" >1495, 1496, 1497, 1498
            restricted  1494, 1495
    +href="glossaries-extra-manual.html#dx1-4117" >1499, 1500
            true  1496, 1497
    +href="glossaries-extra-manual.html#dx1-4132" >1501, 1502
        docdefs  1498, 1499, 1500
    +href="glossaries-extra-manual.html#dx1-30003" >1503, 1504, 1505
            true  1501
    +href="glossaries-extra-manual.html#dx1-4116" >1506
        entrycounter  1502, 1503
    +href="glossaries-extra-manual.html#dx1-36002" >1507, 1508
        hyperfirst
            false  1504
    +href="glossaries-extra-manual.html#dx1-27030" >1509
        index  1505, 1506
    +href="glossaries-extra-manual.html#dx1-5043" >1510, 1511
        indexcrossrefs  1507, 1508, 1509, 1510
    +href="glossaries-extra-manual.html#dx1-4053" >1512, 1513, 1514, 1515
            false  1511
    +href="glossaries-extra-manual.html#dx1-4063" >1516
        indexonlyfirst  1512, 1513, 1514, 1515
    +href="glossaries-extra-manual.html#dx1-6002" >1517, 1518, 1519, 1520
        nogroupskip  1516
    +href="glossaries-extra-manual.html#dx1-17014" >1521
        nomain  1517
    +href="glossaries-extra-manual.html#dx1-3032" >1522
        nomissingglstext  1518
    +href="glossaries-extra-manual.html#dx1-4135" >1523
        nonumberlist  1519, 1520, 1521, 1522
    +href="glossaries-extra-manual.html#dx1-7026" >1524, 1525, 1526, 1527
        nopostdot  1523, 1524, 1525, 1526
    +href="glossaries-extra-manual.html#dx1-4023" >1528, 1529, 1530, 1531
            false  1527, 1528, 1529
    +href="glossaries-extra-manual.html#dx1-3004" >1532, 1533, 1534
            true  1530
    +href="glossaries-extra-manual.html#dx1-3003" >1535
        noredefwarn
            false  1531
    +href="glossaries-extra-manual.html#dx1-3009" >1536
            true  1532
    +href="glossaries-extra-manual.html#dx1-3006" >1537
        notree  1533
    +href="glossaries-extra-manual.html#dx1-17034" >1538
        numbers  1534, 1535, 1536
    +href="glossaries-extra-manual.html#dx1-4152" >1539, 1540, 1541
        postdot  1537, 1538, 1539
    +href="glossaries-extra-manual.html#dx1-3005" >1542, 1543, 1544
        postpunc  1540, 1541, 1542
    +href="glossaries-extra-manual.html#dx1-4019" >1545, 1546, 1547
            comma  1543
    +href="glossaries-extra-manual.html#dx1-4020" >1548
            dot  1544
    +href="glossaries-extra-manual.html#dx1-4021" >1549
            none  1545
    +href="glossaries-extra-manual.html#dx1-4022" >1550
        record  1546, 1547, 1548, 1549, 1550, 1551
    +href="glossaries-extra-manual.html#dx1-4062" >1551, 1552, 1553, 1554, 1555, 1556
            alsoindex  1552, 1553, 1554, 1555, 1556, 1557
    +href="glossaries-extra-manual.html#dx1-4009" >1557, 1558, 1559, 1560, 1561, 1562
            off  1558, 1559
    +href="glossaries-extra-manual.html#dx1-5049" >1563, 1564
            only  1560, 1561, 1562, 1563, 1564, 1565, 1566, 1567, 1568
    +href="glossaries-extra-manual.html#dx1-4067" >1565, 1566, 1567, 1568, 1569, 1570, 1571, 1572, 1573
        section
            chapter  1569
    +href="glossaries-extra-manual.html#dx1-13033" >1574
        seeautonumberlist  1570
    +href="glossaries-extra-manual.html#dx1-7027" >1575
        seenoindex  1571
    +href="glossaries-extra-manual.html#dx1-7016" >1576
            ignore  1572, 1573
    +href="glossaries-extra-manual.html#dx1-7018" >1577, 1578
            warn  1574
    +href="glossaries-extra-manual.html#dx1-38012" >1579
        shortcuts  1575, 1576
    +href="glossaries-extra-manual.html#dx1-4154" >1580, 1581
    + + +         abbr  1577, 1578
    +href="glossaries-extra-manual.html#dx1-4160" >1582, 1583
            abbreviation  1579, 1580
    +href="glossaries-extra-manual.html#dx1-21001" >1584, 1585
            abbreviations  1581, 1582
    +href="glossaries-extra-manual.html#dx1-4159" >1586, 1587
            ac  1583, 1584, 1585, 1586, 1587, 1588
    - - - +href="glossaries-extra-manual.html#dx1-4157" >1588, 1589, 1590, 1591, 1592, 1593
            acro  1589
    +href="glossaries-extra-manual.html#dx1-4156" >1594
            acronyms  1590
    +href="glossaries-extra-manual.html#dx1-4155" >1595
            all  1591
    +href="glossaries-extra-manual.html#dx1-4170" >1596
            false  1592
    +href="glossaries-extra-manual.html#dx1-4176" >1597
            none  1593
    +href="glossaries-extra-manual.html#dx1-4175" >1598
            other  1594, 1595
    +href="glossaries-extra-manual.html#dx1-4161" >1599, 1600
            true  1596
    +href="glossaries-extra-manual.html#dx1-4171" >1601
        sort
            none  1597, 1598
    +href="glossaries-extra-manual.html#dx1-4089" >1602, 1603
        stylemods  1599, 1600, 1601, 1602, 1603
    +href="glossaries-extra-manual.html#dx1-4044" >1604, 1605, 1606, 1607, 1608
            all  1604
    +href="glossaries-extra-manual.html#dx1-4047" >1609
            default  1605
    +href="glossaries-extra-manual.html#dx1-4046" >1610
        subentrycounter  1606, 1607
    +href="glossaries-extra-manual.html#dx1-36003" >1611, 1612
        symbols  1608, 1609, 1610
    +href="glossaries-extra-manual.html#dx1-4149" >1613, 1614, 1615
        toc
            false  1611
    +href="glossaries-extra-manual.html#dx1-3002" >1616
            true  1612
    +href="glossaries-extra-manual.html#dx1-3001" >1617
        translate
            babel  1613
    +href="glossaries-extra-manual.html#dx1-3011" >1618
            true  1614
    +href="glossaries-extra-manual.html#dx1-3013" >1619
        undefaction  1615, 1616
    +href="glossaries-extra-manual.html#dx1-4048" >1620, 1621
            error  1617, 1618
    +href="glossaries-extra-manual.html#dx1-4049" >1622, 1623
            warn  1619, 1620, 1621, 1622, 1623, 1624
    +href="glossaries-extra-manual.html#dx1-4050" >1624, 1625, 1626, 1627, 1628, 1629
        xindy  1625
    +href="glossaries-extra-manual.html#dx1-7046" >1630
    page (counter)  1626, 1627
    +href="glossaries-extra-manual.html#dx1-28028" >1631, 1632
    polyglossia package  1628
    +href="glossaries-extra-manual.html#dx1-45005" >1633
    \pretoglossarypreamble  1629
    +class="cmti-10">1634
    \printabbreviations  1630
    +class="cmti-10">1635
    \printglossary options
        nogroupskip  1631
    +href="glossaries-extra-manual.html#dx1-17015" >1636
        target  1632, 1633
    +href="glossaries-extra-manual.html#dx1-5018" >1637, 1638
        targetnameprefix  1634
    +href="glossaries-extra-manual.html#dx1-5019" >1639
        title  1635
    +href="glossaries-extra-manual.html#dx1-45006" >1640
    \printnoidxglossary options
        sort  1636
    +href="glossaries-extra-manual.html#dx1-38015" >1641
    \printunsrtglossaries  1637
    +class="cmti-10">1642
    \printunsrtglossary  1638
    +class="cmti-10">1643
    \printunsrtglossary*  1639
    +class="cmti-10">1644
    \printunsrtglossaryentryprocesshook  1640
    +class="cmti-10">1645
    \printunsrtglossaryhandler  1641
    +class="cmti-10">1646
    \printunsrtglossarypredoglossary  1642
    +class="cmti-10">1647
    \printunsrtglossaryskipentry  1643
    +class="cmti-10">1648
    + + + \printunsrtglossaryunit  1644
    +class="cmti-10">1649
    \printunsrtglossaryunitsetup  1645
    +class="cmti-10">1650
    \provideignoredglossary  1646
    +class="cmti-10">1651

    R - - - relsizes package  1647
    +href="glossaries-extra-manual.html#dx1-22048" >1652
    \RestoreAcronyms  1648
    +class="cmti-10">1653
    \rGLS  1649
    +class="cmti-10">1654
    \rGls  1650
    +class="cmti-10">1655
    \rgls  1651
    +class="cmti-10">1656
    \rGLSformat  1652
    +class="cmti-10">1657
    \rGlsformat  1653
    +class="cmti-10">1658
    \rglsformat  1654
    +class="cmti-10">1659
    \rGLSpl  1655
    +class="cmti-10">1660
    \rGlspl  1656
    +class="cmti-10">1661
    \rglspl  1657
    +class="cmti-10">1662
    \rGLSplformat  1658
    +class="cmti-10">1663
    \rGlsplformat  1659
    +class="cmti-10">1664
    \rglsplformat  1660
    +class="cmti-10">1665

    S \setabbreviationstyle  1661
    +class="cmti-10">1666
    slantsc package  1662
    +href="glossaries-extra-manual.html#dx1-26020" >1667
    style package  1663
    +href="glossaries-extra-manual.html#dx1-13005" >1668
    subentrycounter package  1664
    +href="glossaries-extra-manual.html#dx1-39016" >1669

    T textcase package  1665
    +href="glossaries-extra-manual.html#dx1-8" >1670
    tracklang package  1666, 1667, 1668
    +href="glossaries-extra-manual.html#dx1-4" >1671, 1672, 1673
    translator package  1669
    +href="glossaries-extra-manual.html#dx1-3012" >1674

    X xfor package  1670
    +href="glossaries-extra-manual.html#dx1-9" >1675, 1676, 1677
    \xglssetwidest  1671
    +class="cmti-10">1678
    \xglsupdatewidest  1672
    +class="cmti-10">1679
    \xGlsXtrSetField  1673
    +class="cmti-10">1680
    xindy  1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1681, 1682, 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1684
    +class="cmbx-10">1691
    xindy  1685
    +href="glossaries-extra-manual.html#dx1-6032" >1692
    xkeyval package  1686
    +href="glossaries-extra-manual.html#dx1-7" >1693

    @@ -21655,7 +21750,7 @@ class="cmr-8">field and the short form was stored in the
    symbol field.

    -

    3.1For compatibility with earlier versions, \glsabbrvscfont \glsxtrscfont is now deprecated. Likewise for similar commands.

    -

    9.1Version 1.11 only allowed one use of \GlsXtrLoadResources per document.

    -

    9.2v1.08 assumed filename#1={\protect\ttfamily#1}|main}} \DeleteShortVerb{\|} \MakeShortVerb{"} - \title{glossaries-extra.sty v1.23: + \title{glossaries-extra.sty v1.24: an extension to the glossaries package} \author{Nicola L.C. Talbot\\[10pt] Dickimaw Books\\ \url{http://www.dickimaw-books.com/}} - \date{2017-11-12} + \date{2017-11-14} \maketitle \begin{abstract} @@ -2791,6 +2791,11 @@ For example: \begin{verbatim} \glsxtrsetgrouptitle{A}{A (a)} \end{verbatim} +This uses a global assignment. If you need to scope the change +you can use +\begin{definition}[\DescribeMacro\glsxtrlocalsetgrouptitle] +\cs{glsxtrlocalsetgrouptitle}\marg{label}\marg{title} +\end{definition} \subsection{Style Hooks} \label{sec:stylehooks} @@ -7516,7 +7521,7 @@ The \styfmt{glossaries} package provides \ics{ifglshasfield} to determine if a field has been set. The \styfmt{glossaries-extra} package provides a simpler version: \begin{definition}[\DescribeMacro\glsxtrifhasfield] -\cs{glsxtrifhasfield}\marg{label}\marg{field}\marg{true}\marg{false} +\cs{glsxtrifhasfield}\marg{field}\marg{label}\marg{true}\marg{false} \end{definition} (New to v1.19.) Unlike \cs{ifglshasfield}, this version doesn't complain if the @@ -7531,7 +7536,7 @@ to access the field value. This command includes grouping which scopes the \meta{true} and \meta{false} parts. The starred version \begin{definition}[\DescribeMacro{\glsxtrifhasfield*}] -\cs{glsxtrifhasfield*}\marg{label}\marg{field}\marg{true}\marg{false} +\cs{glsxtrifhasfield*}\marg{field}\marg{label}\marg{true}\marg{false} \end{definition} omits the implicit grouping. @@ -7542,9 +7547,24 @@ need to check if the field is defined without accessing it: \cs{GlsXtrIfFieldUndef}\marg{field}\marg{label}\marg{true}\marg{false} \end{definition} +\begin{important} +There's a difference between an undefined field and an unset field. +An undefined field hasn't been assigned any value (no +associated internal control sequence has been defined). If a defined +field has been defined to empty, then it's considered unset. +\cs{GlsXtrIfFieldUndef} implement \meta{false} for a defined +but empty field whereas \cs{glsxtrifhasfield} and \cs{ifglshasfield} +will implement \meta{false} a defined but empty field. +Remember that any keys that may be used in \cs{newglossaryentry} +will have a default value if not provided. In many cases, the +default value is empty, so only use \cs{GlsXtrIfFieldUndef} +for fields that can only be defined through commands like +\cs{GlsXtrSetField}. +\end{important} + You can test if a field value equals a string using \begin{definition}[\DescribeMacro{\GlsXtrIfFieldEqStr}] -\cs{GlsXtrIfFieldEqStr}\marg{label}\marg{field}\marg{text}\marg{true}\marg{false} +\cs{GlsXtrIfFieldEqStr}\marg{field}\marg{label}\marg{text}\marg{true}\marg{false} \end{definition} If the entry exists and has the given field set to the given text then this does \meta{true} otherwise it does @@ -7619,6 +7639,28 @@ See the \sty{etoolbox}'s user manual for further details of these commands, in particular the limitations of \cs{ifinlist}. +If the field has a comma-separated list value instead, you +can iterate over it using: +\begin{definition}[\DescribeMacro\glsxtrforcsvfield] +\cs{glsxtrforcsvfield}\marg{label}\marg{field}\marg{handler} +\end{definition} +where again \meta{handler} is a control sequence that takes +a single argument. Unlike the \sty{etoolbox} loops, this +doesn't ignore empty elements nor does it discard leading / trailing +spaces. Internally it uses \cs{@for} (modified by \sty{xfor} +which is automatically loaded by \sty{glossaries}). The +\sty{xfor} package modifies the behaviour of \cs{@for} to allow +the loop to be broken prematurely using \cs{@endfortrue}. +The \cs{glsxtrforcsvfield} command locally defines +a user level command: +\begin{definition}[\DescribeMacro\glsxtrendfor] +\cs{glsxtrendfor} +\end{definition} +which is just a synonym for \cs{@endfortrue}. + +The loop is performed within the true part of \cs{glsxtrifhasfield} +so scoping is automatically applied. + When using the \pkgopt{record} option, in addition to recording the usual location, you can also record the current value of another counter at the same time using the preamble-only command: diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbr-styles.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbr-styles.pdf index 2343a3af263..ffe4a765f26 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbr-styles.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbr-styles.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbrv.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbrv.pdf index f292970bed7..d79fd689916 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbrv.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-abbrv.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-accsupp.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-accsupp.pdf index 31417492597..f6235bad5ae 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-accsupp.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-accsupp.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym-desc.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym-desc.pdf index c59dac9e4d8..e35d1511543 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym-desc.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym-desc.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym.pdf index 7b59e7cb4a0..d369f0845de 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-acronym.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alias.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alias.pdf index dd8b00973a0..5d5339cc94c 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alias.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alias.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-altmodifier.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-altmodifier.pdf index 46af42a4f57..2ac6e310588 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-altmodifier.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-altmodifier.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-marginpar.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-marginpar.pdf index 3d29feeb3a3..68561d92796 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-marginpar.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-marginpar.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-sym.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-sym.pdf index 380cd0c7405..1520c034c6b 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-sym.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree-sym.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree.pdf index bd9432f893e..7c945a7d2a5 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-alttree.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex-hyp.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex-hyp.pdf index bd9e45b0f8d..052f8ca0fce 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex-hyp.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex-hyp.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex.pdf index 94daab172d4..054b4fe31a1 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-autoindex.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref.pdf index b0d9d8446c4..a2b277ac5b9 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref2.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref2.pdf index 6623b5f2523..f71dfcf6cb5 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref2.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-crossref2.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-docdef.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-docdef.pdf index 93a3a946e1c..d969678683f 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-docdef.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-docdef.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-entrycount.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-entrycount.pdf index 86d9f6db2c5..8c8424a1a6f 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-entrycount.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-entrycount.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-external.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-external.pdf index 1d3d9a36d67..acd4493914e 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-external.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-external.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-fmt.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-fmt.pdf index 7e31132e0f8..88d47e363c8 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-fmt.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-fmt.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-footnote.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-footnote.pdf index c4e0dc6151a..79eaacd7fc9 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-footnote.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-footnote.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-header.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-header.pdf index bff18dd6168..151c37e494f 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-header.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-header.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-indexhook.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-indexhook.pdf index 335efed130e..904ee124eef 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-indexhook.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-indexhook.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-initialisms.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-initialisms.pdf index 050ac280d68..e4e43656726 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-initialisms.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-initialisms.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixed-abbrv-styles.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixed-abbrv-styles.pdf index fe40f9e25eb..0cb72f32475 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixed-abbrv-styles.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixed-abbrv-styles.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.pdf index 78a1c6b2a5f..a7511af469e 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixture.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixture.pdf index f862868753c..dbc8fd0ce67 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixture.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixture.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-name-font.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-name-font.pdf index f31a4d93f74..4b8a28f1772 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-name-font.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-name-font.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-nested.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-nested.pdf index c56ef83e63c..b4483abfee5 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-nested.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-nested.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-noidx-restricteddocdefs.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-noidx-restricteddocdefs.pdf index 04c7de34279..cdf00d91eff 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-noidx-restricteddocdefs.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-noidx-restricteddocdefs.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onelink.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onelink.pdf index 7f2db50342a..d8bafefc5ed 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onelink.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onelink.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-utf8.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-utf8.pdf index 0d33b3825bc..c3c87d25940 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-utf8.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-utf8.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-xetex.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-xetex.pdf index ae7053c0638..e55b92a7f45 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-xetex.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly-xetex.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly.pdf index 0ef81682c25..2ea86bf288e 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-onthefly.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-pages.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-pages.pdf index acab3064308..6a25e747656 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-pages.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-pages.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-postdot.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-postdot.pdf index 62c4e3d2ba0..bbe10ca42e7 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-postdot.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-postdot.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-postlink.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-postlink.pdf index 71d8561e5a1..a437e63c915 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-postlink.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-postlink.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-prefix.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-prefix.pdf index 72a58b6b9bf..84eee8369a2 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-prefix.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-prefix.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.glstex b/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.glstex index 5e1e271b732..5c8b1f7fdb2 100644 --- a/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.glstex +++ b/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.glstex @@ -1,4 +1,9 @@ \glsnoexpandfields +\providecommand{\bibglshashchar}{\expandafter\@gobble\string\#} +\providecommand{\bibglscircumchar}{\expandafter\@gobble\string\^} +\providecommand{\bibglsdollarchar}{\expandafter\@gobble\string\$} +\providecommand{\bibglsampersandchar}{\expandafter\@gobble\string\&} +\providecommand{\bibglsunderscorechar}{\expandafter\@gobble\string\_} \providecommand{\bibglsusesee}[1]{\glsxtrusesee{#1}} \providecommand{\bibglsuseseealso}[1]{\glsxtruseseealso{#1}} \providecommand{\bibglsdelimN}{\delimN} diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.pdf index ba96f4815d1..6557cf7af1f 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-restricteddocdefs.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-restricteddocdefs.pdf index 5c8c3a09087..e101133c37f 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-restricteddocdefs.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-restricteddocdefs.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-hyp.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-hyp.pdf index f8b11759504..2587fc0a139 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-hyp.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-hyp.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main-hyp.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main-hyp.pdf index 69bc5966136..72999e4794e 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main-hyp.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main-hyp.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main.pdf index 7939be3ce79..d0f897ef859 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl-main.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl.pdf index 4f078818202..2c54d15a9c9 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-suppl.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-trans.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-trans.pdf index 8e087db1ed5..33e615d77d9 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-trans.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-trans.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-undef.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-undef.pdf index 48abcd0fc77..03477d264b7 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-undef.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-undef.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-unitentrycount.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-unitentrycount.pdf index 57bc7dc4498..99c1b5f6eb8 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample-unitentrycount.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-unitentrycount.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample.pdf index f56bfc57882..0e53b7bd4af 100644 Binary files a/Master/texmf-dist/doc/latex/glossaries-extra/sample.pdf and b/Master/texmf-dist/doc/latex/glossaries-extra/sample.pdf differ diff --git a/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.dtx b/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.dtx index 1a337c6e135..dcef80670b4 100644 --- a/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.dtx +++ b/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.dtx @@ -1,22 +1,22 @@ %\iffalse % glossaries-extra.dtx generated using makedtx version 1.2 (c) Nicola Talbot % Command line args: -% -author "Nicola Talbot" % -src "glossaries-extra.sty\Z=>glossaries-extra.sty" % -src "glossaries-extra-stylemods.sty\Z=>glossaries-extra-stylemods.sty" % -src "glossary-bookindex.sty\Z=>glossary-bookindex.sty" % -src "(example-glossaries-.+\.tex)\Z=>\1" % -src "(example-glossaries-.+\.bib)\Z=>\1" -% -setambles ".*\.bib=>\nopreamble\nopostamble" +% -codetitle "Main Package Code (\\styfmt{glossaries-extra.sty})" % -macrocode ".*\.tex" % -macrocode ".*\.bib" % -comment ".*\.tex" % -comment ".*\.bib" -% -doc "glossaries-extra-codedoc.tex" % -section "chapter" -% -codetitle "Main Package Code (\\styfmt{glossaries-extra.sty})" +% -author "Nicola Talbot" +% -doc "glossaries-extra-codedoc.tex" +% -setambles ".*\.bib=>\nopreamble\nopostamble" % glossaries-extra -% Created on 2017/11/12 16:15 +% Created on 2017/11/14 20:50 %\fi %\iffalse %<*package> @@ -126,7 +126,7 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of \setcounter{IndexColumns}{2} -\CheckSum{20189} +\CheckSum{20211} \newcommand*{\ifirstuse}{\iterm{first use}} \newcommand*{\firstuse}{\gls{firstuse}} @@ -166,13 +166,13 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of \raggedright } -\title{glossaries-extra.sty v1.23: +\title{glossaries-extra.sty v1.24: documented code} \author{Nicola L.C. Talbot\\[10pt] Dickimaw Books\\ \url{http://www.dickimaw-books.com/}} -\date{2017-11-12} +\date{2017-11-14} \begin{document} \DocInput{glossaries-extra.dtx} @@ -217,7 +217,7 @@ Dickimaw Books\\ %\section{Package Initialisation and Options} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra}[2017/11/12 v1.23 (NLCT)] +\ProvidesPackage{glossaries-extra}[2017/11/14 v1.24 (NLCT)] % \end{macrocode} % Requires \sty{xkeyval} to define package options. % \begin{macrocode} @@ -2012,6 +2012,23 @@ Dickimaw Books\\ % \end{macrocode} %\end{macro} % +%\begin{macro}{\glsxtrforcsvfield} +%\changes{1.24}{2017-11-14}{new} +%\begin{definition} +%\cs{glsxtrforcsvfield}\marg{label}\marg{field}\marg{cs handler} +%\end{definition} +% \begin{macrocode} +\newcommand*{\glsxtrforcsvfield}[3]{% + \@glsxtrifhasfield{#2}{#1}% + {% + \let\glsxtrendfor\@endfortrue + \@for\@glsxtr@label:=\glscurrentfieldvalue\do + {\expandafter#3\expandafter{\@glsxtr@label}}}% + {}% +} +% \end{macrocode} +%\end{macro} +% %\begin{macro}{\glsxtrifhasfield} %\changes{1.19}{2017-09-09}{new} %A simpler alternative to \cs{ifglshasfield} that doesn't complain @@ -4071,6 +4088,11 @@ Dickimaw Books\\ \let\theglsentrycounter\@glsxtr@thevalue \def\theHglsentrycounter{\@glsxtr@theHvalue}% }% +% \end{macrocode} +% Define sort key if necessary (in case of \pkgopt[use]{sort}): +%\changes{1.24}{2017-11-14}{added \cs{@gls@setsort}} +% \begin{macrocode} + \@gls@setsort{#2}% \@@do@wrglossary{#2}% }% }% @@ -7895,6 +7917,18 @@ Dickimaw Books\\ % \end{macrocode} %\end{macro} % +%\begin{macro}{\glsxtrlocalsetgrouptitle} +%\changes{1.24}{2017-11-14}{new} +%As above put only locally defines the title. +% \begin{macrocode} +\newcommand{\glsxtrlocalsetgrouptitle}[2]{% + \protected@edef\@glsxtr@titlelabel{glsxtr@grouptitle@#1}% + \@onelevel@sanitize\@glsxtr@titlelabel + \csedef{\@glsxtr@titlelabel}{#2}% +} +% \end{macrocode} +%\end{macro} +% %\begin{macro}{\glsnavigation} %\changes{1.14}{2017-04-18}{new} %Redefine to use new user-level command. @@ -20795,7 +20829,7 @@ defined}{}% % First identify package: % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra-stylemods}[2017/11/12 v1.23 (NLCT)] +\ProvidesPackage{glossaries-extra-stylemods}[2017/11/14 v1.24 (NLCT)] % \end{macrocode} % Provide package options to automatically load required predefined % styles. The simplest method is to just test for the existence of @@ -22852,7 +22886,7 @@ defined}{}% %\section{Package Initialisation and Options} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossary-bookindex}[2017/11/12 v1.23 (NLCT)] +\ProvidesPackage{glossary-bookindex}[2017/11/14 v1.24 (NLCT)] % \end{macrocode} %Load required packages. % \begin{macrocode} diff --git a/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.ins b/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.ins index c2358b79b2c..679399bc50b 100644 --- a/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.ins +++ b/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.ins @@ -1,4 +1,4 @@ -% glossaries-extra.ins generated using makedtx version 1.2 2017/11/12 16:15 +% glossaries-extra.ins generated using makedtx version 1.2 2017/11/14 20:50 \input docstrip \preamble 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 049342b2f73..17882481c14 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 @@ -39,7 +39,7 @@ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra-stylemods}[2017/11/12 v1.23 (NLCT)] +\ProvidesPackage{glossaries-extra-stylemods}[2017/11/14 v1.24 (NLCT)] \newcommand*{\@glsxtr@loadstyles}{} \DeclareOption{all}{% \appto\@glsxtr@loadstyles{% diff --git a/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty b/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty index c793e9bd7f9..aa4aeac9f32 100644 --- a/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty +++ b/Master/texmf-dist/tex/latex/glossaries-extra/glossaries-extra.sty @@ -39,7 +39,7 @@ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra}[2017/11/12 v1.23 (NLCT)] +\ProvidesPackage{glossaries-extra}[2017/11/14 v1.24 (NLCT)] \RequirePackage{xkeyval} \RequirePackage{etoolbox} \@ifpackageloaded{glossaries} @@ -855,6 +855,14 @@ \newcommand*{\glsxtrfieldxifinlist}[5]{% \xifinlistcs{#3}{glo@\glsdetoklabel{#1}@#2}{#4}{#5}% } +\newcommand*{\glsxtrforcsvfield}[3]{% + \@glsxtrifhasfield{#2}{#1}% + {% + \let\glsxtrendfor\@endfortrue + \@for\@glsxtr@label:=\glscurrentfieldvalue\do + {\expandafter#3\expandafter{\@glsxtr@label}}}% + {}% +} \newrobustcmd{\glsxtrifhasfield}{% \@ifstar{\s@glsxtrifhasfield}{\@glsxtrifhasfield}% } @@ -1906,6 +1914,7 @@ \let\theglsentrycounter\@glsxtr@thevalue \def\theHglsentrycounter{\@glsxtr@theHvalue}% }% + \@gls@setsort{#2}% \@@do@wrglossary{#2}% }% }% @@ -3921,6 +3930,11 @@ \@onelevel@sanitize\@glsxtr@titlelabel \csxdef{\@glsxtr@titlelabel}{#2}% } +\newcommand{\glsxtrlocalsetgrouptitle}[2]{% + \protected@edef\@glsxtr@titlelabel{glsxtr@grouptitle@#1}% + \@onelevel@sanitize\@glsxtr@titlelabel + \csedef{\@glsxtr@titlelabel}{#2}% +} \renewcommand*{\glsnavigation}{% \def\@gls@between{}% \ifcsundef{@gls@hypergrouplist@\@glo@type}% diff --git a/Master/texmf-dist/tex/latex/glossaries-extra/glossary-bookindex.sty b/Master/texmf-dist/tex/latex/glossaries-extra/glossary-bookindex.sty index 78b35f8f381..c3004903605 100644 --- a/Master/texmf-dist/tex/latex/glossaries-extra/glossary-bookindex.sty +++ b/Master/texmf-dist/tex/latex/glossaries-extra/glossary-bookindex.sty @@ -39,7 +39,7 @@ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossary-bookindex}[2017/11/12 v1.23 (NLCT)] +\ProvidesPackage{glossary-bookindex}[2017/11/14 v1.24 (NLCT)] \RequirePackage{multicol} \RequirePackage{glossary-tree} \newcommand{\glsxtrbookindexcols}{2} -- cgit v1.2.3