From 8ea673e9cfeb30456e238a5f138bea79990c46dd Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 16 Dec 2016 22:54:42 +0000 Subject: glossaries-extra (16dec16) git-svn-id: svn://tug.org/texlive/trunk@42725 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/doc/latex/glossaries-extra/CHANGES | 4 + .../texmf-dist/doc/latex/glossaries-extra/README | 4 +- .../glossaries-extra/glossaries-extra-code.pdf | Bin 702960 -> 704615 bytes .../glossaries-extra/glossaries-extra-manual.html | 2906 ++++++++++---------- .../glossaries-extra/glossaries-extra-manual.pdf | Bin 570872 -> 572557 bytes .../glossaries-extra/glossaries-extra-manual.tex | 29 +- .../doc/latex/glossaries-extra/sample-abbrv.pdf | Bin 43307 -> 43307 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 .../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 142191 -> 141966 bytes .../latex/glossaries-extra/sample-autoindex.pdf | Bin 147208 -> 146988 bytes .../doc/latex/glossaries-extra/sample-crossref.pdf | Bin 40642 -> 40642 bytes .../latex/glossaries-extra/sample-crossref2.pdf | Bin 41305 -> 41305 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-footnote.pdf | Bin 63220 -> 63220 bytes .../doc/latex/glossaries-extra/sample-header.pdf | Bin 125189 -> 125189 bytes .../latex/glossaries-extra/sample-indexhook.pdf | Bin 42711 -> 42711 bytes .../latex/glossaries-extra/sample-initialisms.pdf | Bin 81582 -> 81582 bytes .../glossaries-extra/sample-mixed-abbrv-styles.pdf | Bin 57809 -> 57809 bytes .../latex/glossaries-extra/sample-mixedsort.pdf | Bin 0 -> 45141 bytes .../latex/glossaries-extra/sample-mixedsort.tex | 35 + .../doc/latex/glossaries-extra/sample-mixture.pdf | Bin 160022 -> 159796 bytes .../latex/glossaries-extra/sample-name-font.pdf | Bin 202090 -> 202090 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 19862 -> 19857 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 37051 -> 37051 bytes .../doc/latex/glossaries-extra/sample-postlink.pdf | Bin 67877 -> 67877 bytes .../doc/latex/glossaries-extra/sample-prefix.pdf | Bin 33107 -> 33107 bytes .../doc/latex/glossaries-extra/sample-record.pdf | Bin 38102 -> 38102 bytes .../glossaries-extra/sample-restricteddocdefs.pdf | Bin 47883 -> 47883 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 | 138 +- .../latex/glossaries-extra/glossaries-extra.ins | 2 +- .../glossaries-extra-stylemods.sty | 2 +- .../latex/glossaries-extra/glossaries-extra.sty | 75 +- Master/tlpkg/libexec/ctan2tds | 1 + 50 files changed, 1734 insertions(+), 1462 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.pdf create mode 100644 Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.tex diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES b/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES index 33ae329ae2d..a0d663d222b 100644 --- a/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES +++ b/Master/texmf-dist/doc/latex/glossaries-extra/CHANGES @@ -1,3 +1,7 @@ +1.09 (2016-12-16): + + * Fixed bug when using the optional argument of \makeglossaries + 1.08 (2016-12-13): * Added record option diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/README b/Master/texmf-dist/doc/latex/glossaries-extra/README index cb584d9719a..37d170b0653 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.08 +LaTeX Package : glossaries-extra v1.09 -Last Modified : 2016-12-13 +Last Modified : 2016-12-16 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 5b88d52c3a5..b1d5f14713a 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 15def62a7e2..0dc44d8d2ab 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 @@ -193,22 +193,22 @@ a span.HoLogo-TeX span.HoLogo-e{text-decoration:none;} -

-

+

-

+

-

-

glossaries-extra.sty v1.08: an extension to the +

+

glossaries-extra.sty v1.09: an extension to the glossaries package

@@ -231,22 +231,22 @@ class="td11">http://www.dickimaw-books.com/
-

2016-12-13

+

2016-12-16

-

+

-

-

+

Abstract

-

The

The glossaries-extra package is an extension to the glossaries package, providing additional features. Some of the features provided by this package are only available @@ -259,7 +259,7 @@ class="cmss-10">glossaries package.

-

Since

Since glossaries-extra internally loads the glossaries package, you also need to have EX distribution? or Updating TEX on Linux.)
-

-

Additional resources:

+

+

Additional resources:

  • The glossaries-extra documented code Glossary -

    1.

    1. Introduction

    -

    The

    The glossaries package is a flexible package, but it’s also a heavy-weight package that uses a lot of resources. As package developer, I’m caught between those users who complain about the drawbacks of a heavy-weight package with a large user manual and those users who want more features (which necessarily adds to the package weight and manual size). -

    The

    The glossaries-extra package is an attempt to provide a compromise for this conflict. Version 4.22 of the glossaries package is the last version to incorporate new @@ -406,10 +406,10 @@ of package loading time and allocation of resources, but those users who do want extra features available will have more of a chance of getting their feature requests accepted.

    -

    Top

    1.1 Package Defaults

    -

    I’m not happy with some of the default settings assumed by the

    I’m not happy with some of the default settings assumed by the glossaries package, and, judging from code I’ve seen, other users also seem unhappy with them, as certain package options are often used in questions posted on various sites. I can’t @@ -419,7 +419,7 @@ but since glossaries-extra is a separate package, I have decided to implement some of these commonly-used options by default. You can switch them back if they’re not appropriate. -

    The new defaults are:

    +

    The new defaults are:

    -

    This is like: +

    This is like: @@ -501,7 +501,7 @@ Commands and Styles).  
    \usepackage[toc,nopostdot]{glossaries}  
    \usepackage{glossaries-extra}

    -

    +

  • @@ -513,7 +513,7 @@ Commands and Styles).  
    \usepackage{babel}  
    \usepackage{glossaries-extra}
-

This is like: +

This is like: @@ -524,7 +524,7 @@ Commands and Styles).  
\usepackage[toc,nopostdot,translate=babel]{glossaries}  
\usepackage{glossaries-extra} -

+

  • @@ -535,7 +535,7 @@ Commands and Styles). \documentclass{memoir}  
    \usepackage{glossaries-extra} -

    This is like: +

    This is like: @@ -545,7 +545,7 @@ Commands and Styles).  
    \usepackage[toc,nopostdot,noredefwarn]{glossaries}  
    \usepackage{glossaries-extra} -

    However @@ -556,7 +556,7 @@ class="cmti-10">However  
    \usepackage{glossaries}  
    \usepackage{glossaries-extra} -

    This is like: +

    This is like: @@ -566,19 +566,19 @@ class="cmti-10">However  
    \usepackage[toc,nopostdot]{glossaries}  
    \usepackage{glossaries-extra} -

    Since by the time

    Since by the time glossaries-extra has been loaded, glossaries has already redefined memoir’s glossary-related commands.

  • -

    Another noticeable change is that by default

    Another noticeable change is that by default \printglossary will now display information text in the document if the external glossary file doesn’t exist. This is explanatory text to help new users who can’t work out what to do next to complete the document build. Once the document is set up correctly and the external files have been generated, this text will disappear. -

    This change is mostly likely to be noticed by users with one or more +

    This change is mostly likely to be noticed by users with one or more redundant empty glossaries who ignore transcript messages, explicitly use \printglossaries  
    \end{document} -

    The above document will only display the list of acronyms at the place where +

    The above document will only display the list of acronyms at the place where \printglossaries occurs. However it will also attempt to input the .gls file associated with the main glossary. -

    If you use

    If you use makeglossaries, you’ll get the warning message: @@ -629,7 +629,7 @@ Warning: File 'test.glo' is empty.  
    Remember to use package option 'nomain' if you  
    don't want to use the main glossary. -

    (where the original file is called

    (where the original file is called test.tex) but if you simply call No file test.gls. -

    This doesn’t occur with

    This doesn’t occur with makeglossaries as it will create the .gls file containing the single command \null. -

    If you simply change from

    If you simply change from glossaries to glossaries-extra in this document, you’ll find a change in the resulting PDF if you don’t use .acr file with makeindex. -

    The transcript file will still contain the message about the missing

    The transcript file will still contain the message about the missing .gls, but now you’ll also see information in the actual PDF document. The simplest remedy is to follow the advice inserted into the document at that point, which is to add the @@ -685,13 +685,13 @@ class="cmss-10">nomain\printglossaries  
    \end{document} -

    -

    +

    +

    -

    Top

    1.2 New or Modified Package Options

    -

    If you haven’t already loaded

    If you haven’t already loaded glossaries, you can use any of the package options provided by glossaries when you load \setupglossariesglossaries package options may be used in that command. -

    This section only lists options that are either unrecognised by the

    This section only lists options that are either unrecognised by the glossaries package or are a modified version of options of the same name provided by glossaries. See the glossaries user manual for details about the unmodified options.
    -

    -

    The new and modified options provided by

    +

    The new and modified options provided by glossaries-extra are described below:

    @@ -727,7 +727,7 @@ class="cmss-10">glossaries-accsupp

    If you want to define styles that can interface with the accessibility support +

    If you want to define styles that can interface with the accessibility support provided by glossaries-accsupp use the §9.2 Accessibility Support for further details.) -

    Note that the

    Note that the accsupp option can only be used as a package option (not through only is assumed. The option is provided for the benefit of any post-processing applications that need to know information about the entries used in the document. The option may only be set in the preamble. -

    The

    The record=off option switches off the recording, as per the default behaviour. It implements undefaction=error -

    The other values switch on the recording and also

    The other values switch on the recording and also undefaction=warn, but \makenoidxglossaries has been used) whereas record=alsoindex will both record and index. -

    With the recording on, any of the commands that would typically index +

    With the recording on, any of the commands that would typically index the entry (such as \gls, \glstext or \glsentryname don’t index, so any use of these comm a corresponding \glsxtr@record entry to the .aux file.) -

    There are two new commands that are intended for use with the recording +

    There are two new commands that are intended for use with the recording function: -



    \glsxtrresourcefile  ]{filename}

    -

    +

    This writes the line

    glossaries-extra (other than simply writing class="cmti-10">options⟩ to the .aux file). The post-processor determines the allowed options. -



    \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 @@ -907,7 +907,7 @@ class="cmss-10">loclistloclist field should be a comma-separated list where each location in the list is in the format -



    \glsnoidxdisplayloc{prefix}{}{location}

    -

    +

    (see the glossaries manual for information about that command). -

    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.

    @@ -1006,7 +1006,7 @@ class="cmtt-10">\newglossaryentry to class="cmtt-10">\makenoidxglossaries, but note that \longnewglossaryentry remains a preamble-only command. -

    With this option, if an entry appears in the glossary before it has been +

    With this option, if an entry appears in the glossary before it has been defined, an error will occur (or a warning if the undefaction=warn @@ -1017,7 +1017,7 @@ class="cmtt-10">.aux and .gls files).

    -

    The

    The glossaries package allows \newglossaryentry within the documentdocdef=true if document definitions are necessary and one or more of the glossaries occurs in the front matter. -

    This option affects commands that internally use

    This option affects commands that internally use \newglossaryentry, such as @@ -1101,14 +1101,14 @@ class="cmtt-10">abbreviations and redefines \glsxtrabbrvtype to this label. In addition, it defines a shortcut command -



    \printabbreviations  \printabbreviations[options]

    -

    +

    which is equivalent to

    options]
    The title of the new glossary is given by -



    \abbreviationsname  \abbreviationsname

    -

    +

    If this command is already defined, it’s left unchanged. Otherwise it’s defined to “Abbreviations” if babel§11 Multi-Lingual Support for further details.) -

    If you don’t use the

    If you don’t use the abbreviations package option, the \abbreviationsname @@ -1147,8 +1147,8 @@ class="cmtt-10">\abbreviationsname -

    -

    If the

    +

    If the abbreviations option is used and the acronymmain:

    -

    -

    Note that there are no analogous options to the

    +

    Note that there are no analogous options to the glossaries package’s acronymlists @@ -1190,7 +1190,7 @@ class="cmssbx-10">symbols

    This is passed to glossaries but will additionally define -



    \glsxtrnewsymbol  }{symbol}

    -

    +

    which is equivalent to

    numbers
    This is passed to glossaries but will additionally define -



    \glsxtrnewnumber  options]{number}

    -

    +

    which is equivalent to

    shortcuts=noneshortcuts=false): don’t define any of the shortcut commands (default). -

    Note that multiple invocations of the

    Note that multiple invocations of the shortcuts option within the same option list will override each other.

    -

    After the

    After the glossaries-extra package has been loaded, you can set available options using -



    \glossariesextrasetup  \glossariesextrasetup{options}

    -

    +

    The abbreviations and \makenoidxglossaries -

    -

    +

    Top

    2. Modifications to Existing Commands and Styles

    -

    The commands used by

    The commands used by glossaries to automatically produce an error if an entry is undefined (such as \glsdoifexists\glsdoifexistsundefaction option into account. -

    The

    The \newglossaryentry command has a new key called category, which sets the @@ -1390,7 +1390,7 @@ href="#sec:categories">§5 Categories for further information about categories. -

    The

    The \newterm command (defined through the index§3 Abbreviations.) -

    The

    The \makeglossaries command now has an optional argument. -



    \makeglossaries  \makeglossaries[list]

    -

    +

    If ⟨list⟩ is empty, \makeglossaries behaves as per its original definition in the @@ -1423,16 +1423,39 @@ class="cmtt-10">\makeglossaries behaves as per its original definition in class="cmss-10">glossaries package, otherwise ⟨list⟩ can be a comma-separated list of glossaries that need processing with an external indexing application. -

    It should then be possible to use

    It should then be possible to use \printglossary for those glossaries listed in ⟨list⟩ and \printnoidxglossary for the other glossaries. +

    If you use the optional argument ⟨list⟩, you can’t define entries in the document +(even with the docdef option).
    +

    +

    You will need at least version 2.20 of makeglossaries or at least version 1.3 +of makeglossaries-lite.lua (both distributed with glossaries v4.27) to +allow for this use of \makeglossaries[list]. Alternatively, use the automake +option.

    -

    Top

    2.1 Entry Indexing

    -

    The

    The glossaries-extra package provides an extra key for commands like \gls and \glsadd\glsaddall) since the whole purpose of that command is to index an entry. -

    There is a new hook that’s used each time indexing information is written to the +

    There is a new hook that’s used each time indexing information is written to the external glossary files: -



    \glsxtrdowrglossaryhook  \glsxtrdowrglossaryhook{label}

    -

    +

    + + + where ⟨label⟩ is the entry’s label. This does nothing by default but may be redefined. (See, for example, the accompanying sample file sample-indexhook.tex, which uses this hook to determine which entries haven’t been indexed.) -

    The value of the

    The value of the see key is now saved as a field. This isn’t the case with glossaries, @@ -1496,9 +1522,6 @@ class="cmtt-10">\makeglossariessee key doesn’t have any effect when used in entries that - - - are defined in the documentdocument environment on the next run. -

    This modification allows

    This modification allows glossaries-extra to provide -



    \glsxtraddallcrossrefs  \glsxtraddallcrossrefs

    -

    +

    which is used at the end of the document to automatically add any unused cross-references unless the package option indexcrossrefs was set to false. -

    As a by-product of this enhancement, the

    As a by-product of this enhancement, the see key will now work for entries defined in the see value to be stored even though it may not be possible to index it at that point. -

    As from version 1.06, you can display the cross-referenced information for a given +

    As from version 1.06, you can display the cross-referenced information for a given entry using -



    \glsxtrusesee  \glsxtrusesee{label}

    -

    +

    This internally uses -



    \glsxtruseseeformat  tag}{xr list}

    -

    +

    where ⟨tag⟩ and ⟨xr list⟩ are obtained from the value of the entry’s see field hasn’t been set for the entry given by ⟨label⟩. -

    Suppose you want to suppress the

    Suppose you want to suppress the number list using nonumberlist. This @@ -1604,7 +1627,7 @@ class="cmss-10">see key set, but this will also show the rest of the number list. -

    Another approach in this situation is to use the post description hook +

    Another approach in this situation is to use the post description hook with \glsxtrusesee to append the cross-reference after the description. For example: @@ -1619,16 +1642,16 @@ example:  
     {}%  
    }

    -

    Now the cross-references can appear even though the

    Now the cross-references can appear even though the number list has been suppressed. -

    +

    -

    Top

    2.2 Entry Display Style Modifications

    -

    Recall from the

    Recall from the glossaries package that commands such as \gls display text at that point in the document (optionally with a hyperlink to the relevant @@ -1639,7 +1662,7 @@ whether or not it actually has a hyperlink. The actual text and the way it’s displayed depends on the command used (such as \gls) and the entry format. -

    The default entry format (

    The default entry format (\glsentryfmt) used in the link-text by commands like @@ -1721,22 +1744,22 @@ class="cmsy-10">§3.2 Abbreviation Styles). -

    This means that entries with a short form can be treated as regular entries rather +

    This means that entries with a short form can be treated as regular entries rather than abbreviations if it’s more appropriate for the desired style. -

    As from version 1.04,

    As from version 1.04, \glsentryfmt now puts \glsgenentry in the argument of the new command -



    \glsxtrregularfont  \glsxtrregularfont{text}

    -

    +

    This just does its argument ⟨text⟩ by default. This means that if you want regular entries in a different font but don’t want that font to apply to abbreviations, then @@ -1745,7 +1768,7 @@ class="cmtt-10">\glsxtrregularfont. This is more precise than changing \glstextformat which will be applied to all linking commands for all entries. -

    For example: +

    For example: @@ -1753,7 +1776,7 @@ class="cmtt-10">\glstextformat \renewcommand*{\glsxtrregularfont}[1]{\textsf{#1}}

    -

    You can access the label through

    You can access the label through \glslabel. For example, you can query the category: @@ -1764,7 +1787,7 @@ category: \renewcommand*{\glsxtrregularfont}[1]{%  
     \glsifcategory{\glslabel}{general}{\textsf{#1}}{#1}}

    -

    or query the category attribute: +

    or query the category attribute: @@ -1774,7 +1797,7 @@ category:  
    \renewcommand*{\glsxtrregularfont}[1]{%  
     \glsifattribute{\glslabel}{font}{sf}{\textsf{#1}}{#1}}

    -

    or use the attribute to store the control sequence name: +

    or use the attribute to store the control sequence name: @@ -1788,7 +1811,7 @@ category:  
      {#1}%  
    }

    -

    (Remember the category and attribute settings will only queried here for

    (Remember the category and attribute settings will only queried here for regular entries, so if the abbreviation style for the acronym\glsxtrregularfont will no longer apply.) -

    The

    The \glspostlinkhook provided by the glossaries package to insert information after the link-text produced by commands like \gls and \glstext is redefined to -



    \glsxtrpostlinkhook  \glsxtrpostlinkhook

    -

    +

    This command will discard a following full stop (period) if the discardperiod attribute is set to “true” for the current entry’s category. It will also do -



    \glsxtrpostlink  \glsxtrpostlink

    -

    +

    if a full stop hasn’t be discarded and -



    \glsxtrpostlinkendsentence  \glsxtrpostlinkendsentence

    -

    +

    if a full stop has been discarded. -

    Avoid the use of

    Avoid the use of \gls-like and \glstext-like commands within the post-link hook as they will cause interference. Consider using commands like @@ -1842,8 +1865,8 @@ href="#sec:nested">§2.4 Nested Links) instead.
    -

    -

    By default

    +

    By default \glsxtrpostlink just does \glsxtrpostlinkcategorygeneral category, \glsxtrpostlinkgeneral if it has been defined.) -

    The sentence-ending hook is slightly more complicated. If the command +

    The sentence-ending hook is slightly more complicated. If the command \glsxtrpostlinkcategory

    There are some convenient commands you might want to use when customizing +

    There are some convenient commands you might want to use when customizing the post-link-text category hooks: -



    \glsxtrpostlinkAddDescOnFirstUse  \glsxtrpostlinkAddDescOnFirstUse

    -

    +

    This will add the description in parentheses on first use. -

    For example, suppose you want to append the description in parentheses on

    For example, suppose you want to append the description in parentheses on first use for entries in the symbolsymbol  \glsxtrpostlinkAddDescOnFirstUse  
    }

    -

    -


    +


    \glsxtrpostlinkAddSymbolOnFirstUse  \glsxtrpostlinkAddSymbolOnFirstUse

    -

    +

    This will append the symbol (if defined) in parentheses on first use. -

    If you want to provide your own custom format be aware that you can’t use +

    If you want to provide your own custom format be aware that you can’t use \ifglsused within the post-link-text hook as by this point the first use flag will have been unset. Instead you can use -



    \glsxtrifwasfirstuse  true}{false}

    -

    +

    This will do ⟨true⟩ if the last used entry was the first use for that entry, otherwise it @@ -1941,7 +1964,7 @@ locally set by commands like \gls, so don’t rely on it outside of the post-link-text hook. -

    Note that commands like

    Note that commands like \glsfirst and \glsxtrfull\glsxtrfull so that it fakes non-first use otherwise the inline full format would include the footnote, which is inappropriate.
    -

    -

    For example, if you want to place the description in a footnote after the

    +

    For example, if you want to place the description in a footnote after the link-text on first use for the general  \glsxtrifwasfirstuse{\footnote{\glsentrydesc{\glslabel}}}{}%  
    }

    -

    -

    The

    +

    The short-postfootnote abbreviation style uses the post-link-text hook to place the footnote after trailing punctuation characters. -

    You can set the default options used by

    You can set the default options used by \glslink, \gls etc with: -



    \GlsXtrSetDefaultGlsOpts  \GlsXtrSetDefaultGlsOpts{options}

    -

    +

    For example, if you mostly don’t want to index entries then you can do: @@ -2007,7 +2030,7 @@ For example, if you mostly don’t want to index entries then you can do:

    \GlsXtrSetDefaultGlsOpts{noindex}
    -

    and then use, for example,

    and then use, for example, \gls[noindex=false]{sample} when you actually want the location added to the \glslink and \gls. -

    Note that if you don’t want

    Note that if you don’t want any indexing, just omit \makeglossaries and \printglossaries (or analogous commands). -

    Commands like

    Commands like \gls have star (*) and plus (hyper=false and hyper=true. The glossaries-extra package provides a way to add a third modifier, if required, using -



    \GlsXtrSetAltModifier  }{options}

    -

    +

    where ⟨char⟩ is the character used as the modifier and ⟨options⟩ is the default set of options (which may be overridden). Note that ⟨char⟩ must be a single character (not a UTF-8 character, unless you are using XƎLATEX or LuaLATEX). -

    When choosing the character ⟨

    When choosing the character ⟨char⟩ take care of any changes in category code.
    -

    -

    Example: +

    +

    Example: @@ -2060,7 +2083,7 @@ class="cmti-10">char⟩ take care of any changes in category code.

    \GlsXtrSetAltModifier{!}{noindex}
    -

    This means that

    This means that \gls!{sample} will be equivalent to \gls[noindex]{sample}. It’s not possible to mix modifiers. For example, if you want to do @@ -2071,18 +2094,18 @@ not possible to mix modifiers. For example, if you want to do

    \gls[noindex,hyper=false]{sample}
    -

    you can use

    you can use \gls*[noindex]{sample} or \gls![hyper=false]{sample} but you can’t combine the * and ! modifiers. -

    +

    -

    Top

    2.3 Entry Counting Modifications

    -

    The

    The \glsenableentrycount command is modified to allow for the entrycount§5 Categories). -

    For example, instead of just doing: +

    For example, instead of just doing: @@ -2102,7 +2125,7 @@ href="#sec:categories">Categories).

    \glsenableentrycount
    -

    you now need to do: +

    you now need to do: @@ -2111,21 +2134,21 @@ href="#sec:categories">Categories). \glsenableentrycount  
    \glssetcategoryattribute{abbreviation}{entrycount}{1}

    -

    This will enable the entry counting for entries in the

    This will enable the entry counting for entries in the abbreviation category, but any entries assigned to other categories will be unchanged. -

    Further information about entry counting, including the new per-unit feature, is +

    Further information about entry counting, including the new per-unit feature, is described in §6 Entry Counting. -

    +

    -

    Top

    2.4 Nested Links

    -

    Complications arise when you use

    Complications arise when you use \gls in the value of the name

    Things can go wrong if we try the following with the

    Things can go wrong if we try the following with the glossaries package: @@ -2149,8 +2172,8 @@ class="cmss-10">glossaries package:  
    \newacronym{html}{HTML}{Hypertext Markup Language}  
    \newacronym{shtml}{S\gls{html}}{\gls{ssi} enabled \gls{html}}

    -

    -

    The main problems are: +

    +

    The main problems are:

    1. first use if the long form is displayed before the shor
      \gls{\uppercase ssi} enabled \gls{html}
      -

      which just doesn’t work. Grouping the

      which just doesn’t work. Grouping the \gls{ssi} doesn’t work either as this will effectively try to do @@ -2179,7 +2202,7 @@ class="cmtt-10">\gls{ssi} doesn’t work either as this

      \uppercase{\gls{ssi}} enabled \gls{html}
      -

      This will upper case the label

      This will upper case the label ssi so the entry won’t be recognised. This problem will also occur if you use the all capitals version, such as shtml. For example:

      This section discusses \gls{ssi}, \gls{html} and \gls{shtml}.
      -

      This produces: +

      This produces:

      -

      This section discusses server side includes (SSI), hypertext +

      This section discusses server side includes (SSI), hypertext markup language (HTML) and SSI enabled HTML (SHTML).

      -

      So the

      So the first use of the shtml entry produces “SSI enabled HTML (SHTML)”. -

      Now let’s suppose the

      Now let’s suppose the html entry is used before the shtml but the ssi entry is @@ -2242,17 +2265,17 @@ class="cmtt-10">shtml entry, for example: The sample files are either \gls{html} or \gls{shtml}, but let's  
      first discuss \gls{ssi}.

    -

    This produces: +

    This produces:

    -

    The sample files are either hypertext markup language (HTML) +

    The sample files are either hypertext markup language (HTML) or server side includes (SSI) enabled HTML (SHTML), but let’s first discuss SSI.

    -

    So the

    So the first use of the shtml entry now produces “server side includes (SSI) enabled HTML (SHTML)”, which looks a bit strange. -

    Now let’s suppose the

    Now let’s suppose the shtml entry is used before (or without) the other two entries: @@ -2262,17 +2285,17 @@ class="cmtt-10">shtml entry is used before (or without) the other two

    This article is an introduction to \gls{shtml}.
    -

    This produces: +

    This produces:

    -

    This article is an introduction to server side includes (SSI) +

    This article is an introduction to server side includes (SSI) enabled hypertext markup language (HTML) (SHTML).

    -

    So the

    So the first use of the shtml entry now produces “server side includes (SSI) enabled hypertext markup language (HTML) (SHTML)”, which is even more strange. -

    This is all aggravated by setting the style using the

    This is all aggravated by setting the style using the glossaries package’s \setacronymstyle. For example: @@ -2283,7 +2306,7 @@ class="cmtt-10">\setacronymstyle. For example:

    \setacronymstyle{long-short}
    -

    as this references the label through the use of

    as this references the label through the use of \glslabel when displaying the long and short forms, but this value changes with each use of \gls, so @@ -2295,7 +2318,7 @@ class="cmtt-10">\glslabel has been changed to html by \gls{html}. -

    Another oddity occurs if you reset the

    Another oddity occurs if you reset the html entry between uses of the shtml entry. For example: @@ -2306,10 +2329,10 @@ class="cmtt-10">shtml

    \gls{shtml} ... \glsreset{html}\gls{shtml}
    -

    The next use of

    The next use of shtml produces “Shypertext markup language (HTML)”, which is downright weird. -

    Even without this, the short form has nested formatting commands, which +

    Even without this, the short form has nested formatting commands, which amount to \acronymfont{S\acronymfont{HTML}}. This may not be a problem for some styles, but if you use one of the “sm” styles (that use hyperref -

    For these reasons it’s better to use the simple expandable commands +

    For these reasons it’s better to use the simple expandable commands like \glsentrytext or  [description={\acrshort{ssi} enabled \acrshort{html}}]  
     {shtml}{SHTML}{SSI enabled HTML}

    -

    with

    with glossaries or: @@ -2370,7 +2393,7 @@ class="cmss-10">glossaries or:  
     [description={\glsxtrshort{ssi} enabled \glsxtrshort{html}}]  
     {shtml}{SHTML}{SSI enabled HTML}

    -

    with

    with glossaries-extra. This fixes all the above listed problems (as long as you don’t use \glsdescfirst use issue, but it doesn’t fix any of the other problems listed above. -

    If it’s simply that you want to use the abbreviation font, you can use +

    If it’s simply that you want to use the abbreviation font, you can use \glsabbrvfont: @@ -2395,10 +2418,10 @@ class="cmtt-10">\glsabbrvfont:  
    \newabbreviation{shtml}{shtml}{\glsabbrvfont{ssi} enabled  
    \glsabbrvfont{html}}

    -

    This will pick up the font style setting of the outer entry (shtml, in the above case). +

    This will pick up the font style setting of the outer entry (shtml, in the above case). This isn’t a problem in the above example as all the abbreviations use the same style. -

    However if you’re really determined to use

    However if you’re really determined to use \gls in a field that may be included within some \gls{ssi} enabled \gls{html}

    -

    is treated as +

    is treated as @@ -2431,7 +2454,7 @@ form {\glstext[hyper=false,noindex]{ssi}} enabled  
    {\glstext[hyper=false,noindex]{html}}

    -

    This overcomes problems 

    This overcomes problems 4, 5 and 6 listed above, but still doesn’t fix problems long-noshort-desc). -

    Additionally, any instance of the long form commands, such as

    Additionally, any instance of the long form commands, such as \glsxtrlong or shtml entry had instead been defined as:

    \newacronym{shtml}{SHTML}{\acrshort{ssi} enabled \acrshort{html}}
    -

    then (using the

    then (using the long-short style) the first use will be like {\acronymfont{\glsentryshort{ssi}}} enabled  
    {\acronymfont{\glsentryshort{html}}} (SHTML)

    -

    whereas if the entry is defined as: +

    whereas if the entry is defined as: @@ -2506,7 +2529,7 @@ href="#glo:firstuse">first use will be like \newabbreviation{shtml}{SHTML}{\glsxtrshort{ssi} enabled  
    \glsxtrshort{html}}

    -

    then the

    then the first use will be like: @@ -2517,7 +2540,7 @@ href="#glo:firstuse">first use will be like: {\glsabbrvfont{\glsentryshort{ssi}}} enabled  
    {\glsabbrvfont{\glsentryshort{html}}} (SHTML)

    -

    Note that the first optional argument of

    Note that the first optional argument of \acrshort or \glsxtrshort is ignored in this context. (The final optional argument will be inserted, if present.) The @@ -2528,8 +2551,8 @@ class="cmtt-10">\glsxtrshort. Note that \acrshort doesn’t set the abbreviation style. -

    Alternatively you can use: -


    Alternatively you can use: +


    \glsxtrp  field}{label}

    -

    +

    where ⟨field⟩ is the field label and corresponds to a command in the form \gls\glstext) or in the form \glsxtrfield⟩ (e.g. \glsxtrshort). -

    There’s a shortcut command for the most common fields: -


    There’s a shortcut command for the most common fields: +


    \glsps  \glsps{label}

    -

    +

    which is equivalent to \glsxtrp{short}{label}, and -



    \glspt  \glspt{label}

    -

    +

    which is equivalent to \glsxtrp{text}{label}. -

    The

    The \glsxtrp command behaves much like the \glsfmtfield⟩ commands described @@ -2592,14 +2615,14 @@ class="cmss-10">noindex to true. If you want to change this, you can use -



    \glsxtrsetpopts  \glsxtrsetpopts{options}

    -

    +

    For example: @@ -2608,17 +2631,17 @@ For example:

    \glsxtrsetpopts{hyper=false}
    -

    will just switch off the hyperlinks but not the indexing. Be careful using +

    will just switch off the hyperlinks but not the indexing. Be careful using this command or you can end up back to the original problem of nested links. -

    The hyper link is re-enabled within glossaries. This is done through the +

    The hyper link is re-enabled within glossaries. This is done through the command: -



    \glossxtrsetpopts  \glossxtrsetpopts

    -

    +

    which by default just does @@ -2627,7 +2650,7 @@ which by default just does

    \glsxtrsetpopts{noindex}
    -

    You can redefine this if you want to adjust the setting when

    You can redefine this if you want to adjust the setting when \glsxtrp is used in the glossary. For example: @@ -2637,8 +2660,8 @@ glossary. For example:

    \renewcommand{\glossxtrsetpopts}{\glsxtrsetpopts{noindex=false}}
    -

    -

    For example, +

    +

    For example, @@ -2646,7 +2669,7 @@ glossary. For example:

    \glsxtrp{short}{ssi}
    -

    is equivalent to +

    is equivalent to @@ -2656,7 +2679,7 @@ glossary. For example:  
     \glsxtrshort[hyper=false,noindex]{ssi}[]%  
    }

    -

    in the main body of the document or +

    in the main body of the document or @@ -2666,8 +2689,8 @@ glossary. For example:  
     \glsxtrshort[noindex]{ssi}[]%  
    }

    -

    inside the glossary. (Note the post-link hook is locally disabled.) -

    If

    inside the glossary. (Note the post-link hook is locally disabled.) +

    If \glsxtrp{short}{ssi} occurs in a sectioning mark, it’s equivalent to @@ -2677,18 +2700,18 @@ to

    {\glsxtrheadshort{ssi}}
    -

    (which recognises the

    (which recognises the headuc attribute.) -

    If

    If hyperref has been loaded, then the bookmark will use \glsentryfield⟩ (\glsentryshort{ssi} in the above example). -

    There are similar commands -


    There are similar commands +


    \Glsxtrp  field}{label}

    -

    +

    for first letter upper case and -



    \Glsxtrp  field}{label}

    -

    +

    for all upper case. -

    If you use any of the case-changing commands, such as

    If you use any of the case-changing commands, such as \Gls or \Glstext\gls\glstext, in the definition of entries for any of the fields that may be used by those case-changing commands.
    -

    -

    You can, with care, protect against issue 

    +

    You can, with care, protect against issue 1 by inserting an empty group at the start if the long form starts with a command that breaks the first letter uppercasing commands like \Gls, but you still won’t be able to use the all caps commands, such as \GLS. -

    If you

    If you really need nested commands, the safest method is @@ -2740,8 +2763,8 @@ class="cmti-10">really need nested commands, the safest method is \newabbreviation{shtml}{shtml}{{}\glsxtrp{short}{ssi} enabled  
    \glsxtrp{short}{html}}

    -

    but be aware that it may have some unexpected results occasionally. -

    Example document: +

    but be aware that it may have some unexpected results occasionally. +

    Example document: @@ -2771,16 +2794,16 @@ class="cmti-10">really need nested commands, the safest method is  
    \printglossaries  
    \end{document}

    -

    -

    +

    +

    -

    Top

    2.5 Acronym Style Modifications

    -

    The

    The glossaries-extra package provides a new way of dealing with abbreviations and redefines \newacronymglossaries-extra is do just add

    -

    before you define any entries. For example, the following document using just +

    before you define any entries. For example, the following document using just glossaries @@ -2819,7 +2842,7 @@ class="cmss-10">glossaries  
    \printglossaries  
    \end{document}

    -

    can be easily adapted to use

    can be easily adapted to use glossaries-extra: @@ -2836,7 +2859,7 @@ class="cmss-10">glossaries-extra:  
    \printglossaries  
    \end{document}

    -

    Table 

    Table 2.1 lists the nearest equivalent glossaries-extra abbreviation styles for the predefined acronym styles provided by


    @@ -2875,32 +2898,32 @@ cellspacing="0" cellpadding="0" id="TBL-2-1" />

    Old Style Name

    New Style Name

    long-sc-short

    long-short-sc

    long-sm-short

    long-short-sm

    long-sp-short

    long-short
    with #1}}

    short-long

    short-long

    sc-short-long

    short-sc-long

    sm-short-long

    short-sm-long

    long-short-desc

    long-short-desc

    long-sc-short-desc

    long-short-sc-desc

    long-sm-short-desc

    long-short-sm-desc

    long-sp-short-desc

    long-short-desc
    with #1}}

    short-long-desc

    short-long-desc

    sc-short-long-desc

    short-sc-long-desc

    sm-short-long-desc

    short-sm-long-desc

    dua

    long-noshort

    dua-desc

    long-noshort-desc

    footnote

    short-footnote

    footnote-sc

    short-sc-footnote

    footnote-sm

    short-sm-footnote

    footnote-desc

    short-footnote-desc

    footnote-sc-desc

    short-sc-footnote-desc

    footnote-sm-desc

    short-sm-footnote-desc

    @@ -3074,7 +3097,7 @@ class="cmss-10">short-sm-footnote-desc

    -

    The reason for introducing the new style of abbreviation commands provided by +

    The reason for introducing the new style of abbreviation commands provided by glossaries-extra is because the original acronym commands provided by glossaries are @@ -3083,15 +3106,15 @@ class="cmss-10">glossaries-extra. However, if you really want to restore the generic acronym function provided by glossaries you can use -



    \RestoreAcronyms  \RestoreAcronyms

    -

    +

    (before any use of \newacronym). -

    \RestoreAcronyms should not be used in combination with the newer glossaries-extra abbreviations. Don’t combine old and new style entries with the same @@ -3101,7 +3124,7 @@ class="cmss-10">typeglossaries acronym mechanism doesn’t work well with the newer glossaries-extra commands. -

    If you use

    -

    -

    In general, there’s rarely any need for

    +

    In general, there’s rarely any need for \RestoreAcronyms. If you have a document that uses \newacronymstyle§3.5 Defining New Abbreviation Styles for further details.) -



    \glsacspace  \glsacspace{label}

    -

    +

    The space command \glsacspace used by the long-sp-short acronym style provided by glossaries is modified so that it uses -



    \glsacspacemax  \glsacspacemax

    -

    +

    instead of the hard-coded 3em. This is a command not a length and so can be changed using \renewcommand. -

    Any of the new abbreviation styles that use

    Any of the new abbreviation styles that use \glsxtrfullsep (such as long-short\glsacspace with

    -

    -

    The

    +

    The first use acronym font command -



    \firstacronymfont{text}

    -

    +

    is redefined to use the first use abbreviation font command \glsfirstabbrvfont. This will be reset if you use \RestoreAcronyms. -

    The subsequent use acronym font command -


    The subsequent use acronym font command +


    \acronymfont{text}

    -

    +

    is redefined to use the subsequent use abbreviation font command \glsabbrvfont. This will be reset if you use \RestoreAcronyms.

    -

    Top

    2.6 Glossary Style Modifications

    -

    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. -

    +

    -

    Top

    2.6.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. -

    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 fur -

    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 @@ -3329,10 +3352,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.6.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 nonumberlist\glossaryentrynumbers so that it doesn’t display th id="dx1-13004">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 @@ -3420,21 +3443,21 @@ 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. -

    +

    -

    Top

    2.6.3 The glossaries-extra-stylemods Package

    -

    As from v1.02,

    As from v1.02, glossaries-extra now includes the package glossaries-extra-stylemods that @@ -3451,7 +3474,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 glossaries-extra. You can @@ -3483,7 +3506,7 @@ class="cmss-10">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 identifiers. For example: @@ -3494,7 +3517,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: @@ -3502,8 +3525,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 inlinenopostdot option, but the post-description category hook can still be used. -

    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. -



    \eglssetwidest  level]{name}

    -

    +

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



    \xglssetwidest  level]{name}

    -

    +

    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. -

    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 alttree



    \glsFindWidestUsedAnyName  \glsFindWidestUsedAnyName[glossary list]

    -

    +

    This is like the previous command but if doesn’t check the parent key. This is useful if all levels should have the same width for the name. -



    \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  }

    -

    +

    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 @@ -3851,10 +3874,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 @@ -3890,7 +3913,7 @@ href="#sec:categories">§5 Categories for further details. -

    See

    See §2.4 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 @@ -3918,7 +3941,7 @@ class="cmtt-10">acronym (see also href="#sec:acronymmods">§2.5 Acronym Style Modifications) so -



    \newacronym  short}{long}

    -

    +

    is now equivalent @@ -3957,7 +3980,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 short form is displayed within commands like

    The short form is displayed within commands like \gls using -



    \glsfirstabbrvfont  \glsfirstabbrvfont{short-form}

    -

    +

    on first use and -



    \glsabbrvfont  \glsabbrvfont{short-form}

    -

    +

    for subsequent use. -

    These commands (

    These commands (\glsfirstabbrvfont and \glsabbrvfont) are reset by the abbreviation styles and whenever an abbreviation is used by commands like \gls class="cmtt-10">\glsentryshort) so don’t try redefining them outside of an abbreviation style.
    -

    -

    If you use the

    +

    If you use the long-short style, \glsabbrvfont is redefine to use -



    \glsabbrvdefaultfont  \glsabbrvdefaultfont{text}

    -

    +

    whereas the long-short-sc style redefines \glsabbrvdefaultfont and use one of the base styles, such class="cmss-10">long-short, or define a new style in a similar manner to the “sc”, “sm” or “em” styles. -

    Similarly the basic styles redefine

    Similarly the basic styles redefine \glsfirstabbrvfont to use -



    \glsfirstabbrvdefaultfont  \glsfirstabbrvdefaultfont{short-form}

    -

    +

    whereas the font modifier styles, such as long-short-sc, use their own custom command, such as \glsfirstscfont. -

    The commands that display the full form for abbreviations use

    The commands that display the full form for abbreviations use \glsfirstabbrvfont to display the short form and -



    \glsfirstlongfont  \glsfirstlongfont{long-form}

    -

    +

    to display the long form on first use or for the inline full format. Commands like \glsxtrlong use -



    \glslongfont  \glslongfont{long-form}

    -

    +

    instead. -

    As with

    As with \glsabbrvfont, this command is changed by all styles. Currently all predefined abbreviation styles, except the “long-em” (emphasize long @@ -4081,7 +4104,7 @@ class="cmtt-10">\glsfirstlongfont to use -



    \glsfirstlongdefaultfont  \glsfirstlongdefaultfont{long-form}

    -

    +

    and \glslongfont to use -



    \glslongdefaultfont  \glslongdefaultfont{long-form}

    -

    -

    You can redefine these command if you want to change the font used by the long +

    +

    You can redefine these command if you want to change the font used by the long form for all your abbreviations (except for the emphasize-long styles), or you can define your own abbreviation style that provides a different format for only those abbreviations defined with that style. -

    The “long-em” (emphasize long) styles use -


    The “long-em” (emphasize long) styles use +


    \glsfirstlongemfont  \glsfirstlongemfont{long-form}

    -

    +

    instead of \glsfirstlongdefaultfont{long-form} and -



    \glslongemfont  \glslongemfont{long-form}

    -

    +

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

    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: @@ -4152,16 +4175,16 @@ 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). -

    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-nolongshort-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\glsfirstlongfont.

    -

    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 @@ -4226,21 +4249,21 @@ the glossary it’s activated for those categories that have the 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 @@ -4252,7 +4275,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 tagging§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: @@ -4295,17 +4318,17 @@ 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 @@ -4334,11 +4357,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

    @@ -4359,7 +4382,7 @@ href="#sec:acronymmods">§2.5 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, @@ -4369,7 +4392,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.) -

    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  ]

    -

    -

    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 @@ -4645,16 +4668,16 @@ class="cmtt-10">\glsxtrfull instead. Similarly for \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 shortcuts=abbreviation (or table 3.1. -


    @@ -4859,10 +4882,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 category assigned to each abbreviation with that style. This means that on long\glsxtrshort. -

    The other abbreviation styles don’t modify the

    The other abbreviation styles don’t modify the regular attribute. The first\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). -

    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 @@ -4932,16 +4955,16 @@ class="cmss-10">fontenc package with the T1 option or something similar.
    -

    -

    The “sc” styles all use -


    +

    The “sc” styles all use +


    \glsxtrscfont  \glsxtrscfont{text}

    -

    +

    which is defined as @@ -4950,15 +4973,15 @@ which is defined as

    \newcommand*{\glsxtrscfont}[1]{\textsc{#1}}
    -

    and -


    and +


    \glsxtrfirstscfont  \glsxtrfirstscfont{text}

    -

    +

    which is defined as @@ -4967,13 +4990,13 @@ which is defined as

    \newcommand*{\glsxtrfirstscfont}[1]{\glsxtrscfont{#1}}
    -

    The default plural suffix for the short form is set to -


    The default plural suffix for the short form is set to +


    \glsxtrscsuffix  \glsxtrscsuffix

    -

    +

    This just defined as @@ -4982,7 +5005,7 @@ This just defined as

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

    The

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

    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 @@ -5014,16 +5037,16 @@ its argument to lowercase. For example:

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

    -

    The “sm” styles all use -


    +

    The “sm” styles all use +


    \glsxtrsmfont  \glsxtrsmfont{text}

    -

    +

    This is defined as: @@ -5032,15 +5055,15 @@ This is defined as:

    \newcommand*{\glsxtrsmfont}[1]{\textsmaller{#1}}
    -

    and -


    and +


    \glsxtrfirstsmfont  \glsxtrfirstsmfont{text}

    -

    +

    which is defined as @@ -5049,7 +5072,7 @@ which is defined as

    \newcommand*{\glsxtrfirstsmfont}[1]{\glsxtrsmfont{#1}}
    -

    If you want to use this style, you must explicitly load the

    If you want to use this style, you must explicitly load the relsize package which defines the \renewcommand*{\glsxtrsmfont}[1]{\textsmaller{\MakeTextUppercase{#1}}}

    -

    The default plural suffix for the short form is set to -


    The default plural suffix for the short form is set to +


    \glsxtrsmsuffix  \glsxtrsmsuffix

    -

    +

    This just does \glspluralsuffix. -

    The “em” styles all use -


    The “em” styles all use +


    \glsabbrvemfont  \glsabbrvemfont{text}

    -

    +

    which is defined as: @@ -5091,15 +5114,15 @@ which is defined as:

    \newcommand*{\glsabbrvemfont}[1]{\emph{#1}}
    -

    and -


    and +


    \glsfirstabbrvemfont  \glsfirstabbrvemfont{text}

    -

    +

    which is defined as: @@ -5108,16 +5131,16 @@ which is defined as:

    \newcommand*{\glsfirstabbrvemfont}[1]{\glsabbrvemfont{#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: @@ -5127,7 +5150,7 @@ default, but may be changed as required. For example:

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

    or +

    or @@ -5135,8 +5158,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:

    • field1⟩[field2⟩[-modifier2⟩][-user] -

      This is for the parenthetical styles. The

      This is for the parenthetical styles. The -modifier⟩ parts may be omitted. These styles display ⟨field2⟩ in parentheses. If ⟨field2⟩ starts with “no” then the parenthetical element is omitted from the display style but is included in the inline style. -

      If the

      If the -modifier⟩ part is present, then the field has a font changing command applied to it. -

      If the

      If the -user part is present, then the user1 value, if provided, is inserted into the parenthetical material . (The field used for the inserted material may be changed.) -

      Examples:

      +

      Examples:

      -

      Take care with the footnote styles. Remember that there are some situations +

      Take care with the footnote styles. Remember that there are some situations where \footnote doesn’t work.
      -

      +

    • style-desc -

      Like ⟨

      Like ⟨style⟩ but the description key must be provided when defining abbreviations with this style. -

      Examples:

      +

      Examples:

    -

    Not all combinations that fit the above syntax are provided. Pre-version 1.04 +

    Not all combinations that fit the above syntax are provided. Pre-version 1.04 styles that didn’t fit this naming scheme are either provided with a synonym (where the former name wasn’t ambiguous) or provided with a deprecated synonym (where the former name was confusing). The deprecated style names generate a warning using: -



    \GlsXtrWarnDeprecatedAbbrStyle  old-name}{new-name}

    -

    +

    where ⟨old-name⟩ is the deprecated name and ⟨new-name⟩ is the preferred name. You can suppress these warnings by redefining this command to do nothing. -

    +

    -

    Top

    3.4.1 Predefined Abbreviation Styles that Set the Regular Attribute

    -

    The following abbreviation styles set the

    The following abbreviation styles set the regular attribute to “true” for all categories that have abbreviations defined with any of these styles. @@ -5472,7 +5495,7 @@ class="cmtt-10">\glsxtrshortlong⟩ (⟨short⟩). -

    The

    The name and sort\gls\glsxtrshort. -

    +

    -

    Top

    3.4.2 Predefined Abbreviation Styles that Don’t Set the Regular Attribute

    -

    The following abbreviation styles will set the

    The following abbreviation styles will set the regular attribute to “false” if it has previously been set. If it hasn’t already been set, it’s left unset. Other attributes may @@ -5743,12 +5766,12 @@ class="cmss-10">long-short style but additional information can be inserted into the parenthetical material. This checks the value of the field given by -



    \glsxtruserfield  \glsxtruserfield

    -

    +

    (which defaults to useri) using \ifglshasfieldlong⟩ (⟨short⟩, ⟨field-value⟩). The format is governed by -



    \glsxtruserparen  text}{label}

    -

    +

    where ⟨text⟩ is the short form (for the long-short-user} in the case of the short-long-user style. -

    For example: +

    For example: @@ -5810,35 +5833,35 @@ class="cmss-10">short-long-user [user1={German Speaking \TeX\ User Group}]  
     {dante}{DANTE}{Deutschsprachige Anwendervereinigung \TeX\ e.V}

    -

    On first use,

    On first use, \gls{tug} will appear as:

    -

    T

    TEX User Group (TUG)

    -

    whereas

    whereas \gls{dante} will appear as:

    -

    Deutschsprachige Anwendervereinigung T

    Deutschsprachige Anwendervereinigung TEX e.V (DANTE, German Speaking TEX User Group)

    -

    The short form is formatted according to -


    The short form is formatted according to +


    \glsabbrvuserfont  \glsabbrvuserfont{text}

    -

    +

    and the plural suffix is given by -



    \glsxtrusersuffix  \glsxtrusersuffix

    -

    -

    These may be redefined as appropriate. For example, if you want a smallcaps +

    +

    These may be redefined as appropriate. For example, if you want a smallcaps style, you can just set these commands to those used by the long-short-sc @@ -5851,7 +5874,7 @@ class="cmss-10">long-short-sc\renewcommand{\glsxtrusersuffix}{\glsxtrscsuffix}

    -

    +

    long-short-desclong⟩ (⟨short⟩). Before version 1.04, this was incorrectly set to the short form. If you want to revert back to this you can redefine -



    \glsxtrlongshortdescsort  \glsxtrlongshortdescsort

    -

    +

    For example: @@ -5885,7 +5908,7 @@ class="cmtt-10">\glsxtrlongshortdescsort


    \renewcommand*{\glsxtrlongshortdescsort}{\the\glsshorttok}
    -

    The

    The description must be supplied by the user. The long and short forms are separated by hyperref

    The inline full form uses the ⟨

    The inline full form uses the ⟨short⟩ (⟨long⟩) style. The namenamedescription is set to the long form. -

    As from version 1.05, all the footnote styles use: -


    As from version 1.05, all the footnote styles use: +


    \glsfirstlongfootnotefont  \glsfirstlongfootnotefont{text}

    -

    +

    to format the long form on first use or for the full form and -



    \glslongfootnotefont  \glslongfootnotefont{text}

    -

    +

    to format the long form elsewhere (for example, when used with \glsxtrlong). -

    As from version 1.07, all the footnote styles use: -


    As from version 1.07, all the footnote styles use: +


    \glsxtrabbrvfootnote  label}{long}

    -

    +

    By default, this just does \footnote} (the first argument is ignored). For  
      \footnote{\glshyperlink[#2]{#1}}%  
    }

    -

    or to include the short form with a hyperlink: +

    or to include the short form with a hyperlink: @@ -6214,7 +6237,7 @@ class="cmtt-10">} (the first argument is ignored). For  
      \footnote{\glshyperlink[\glsfmtshort{#1}]{#1}: #2}%  
    }

    -

    Note that I haven’t used commands like

    Note that I haven’t used commands like \glsxtrshort to avoid interference (see first use. This will also defer the footnote \glsxtrifnextpunc. -

    The inline full form uses the ⟨

    The inline full form uses the ⟨short⟩ (⟨long⟩) style. The namepostfootnote-em -

    +

    -

    Top

    3.5 Defining New Abbreviation Styles

    -

    New abbreviation styles may be defined using: -


    New abbreviation styles may be defined using: +


    \newabbreviationstyle  }{fmts}

    -

    -

    where ⟨

    +

    where ⟨name⟩ is the name of the new style (as used in the mandatory argument of \setabbreviationstyleglossaries package’s \newacronymstyle command. -

    You can’t use styles defined by

    You can’t use styles defined by \newacronymstyle with glossaries-extra unless you have reverted glossaries package can’t be used with abbreviations defined with \newabbreviation.
    -

    -

    The ⟨

    +

    The ⟨setup⟩ argument deals with the way the entry is defined and may set attributes for the given abbreviation category. This argument should redefine -



    \CustomAbbreviationFields  \CustomAbbreviationFields

    -

    +

    to set the entry fields including the name (defaults to the short form if omitted), @@ -6436,12 +6459,12 @@ class="cmss-10">pluraldescription. -

    \CustomAbbreviationFields is expanded by \newabbreviation so take care to protect commands that shouldn’t be expanded.
    -

    -

    For example, the

    +

    For example, the long-short style has the following in ⟨setup⟩: @@ -6462,24 +6485,24 @@ class="cmti-10">setup⟩:  
        plural={\protect\glsabbvfont{\the\glsshortpltok}},%  
        description={\the\glslongtok}}%

    -

    Note that the

    Note that the first and firstplural are set even though they’re not used by \gls. -

    The ⟨

    The ⟨setup⟩ argument may also redefine -



    \GlsXtrPostNewAbbreviation  \GlsXtrPostNewAbbreviation

    -

    +

    which can be used to assign attributes. (This will automatically be initialised to do nothing.) -

    For example, the

    For example, the short-footnote includes the following in ⟨setup⟩: @@ -6497,7 +6520,7 @@ class="cmti-10">setup⟩:  
        {}%  
      }%

    -

    This sets the

    This sets the nohyperfirst attribute to “true”. It also unsets the regularnohyperfirst attribute doesn’t get unset by other styles, so take care not to switch styles for the same category. -

    You can access the short, long, short plural and long plural values through the +

    You can access the short, long, short plural and long plural values through the following token registers. -

    Short value (defined by

    Short value (defined by glossaries): -



    \glsshorttok  \glsshorttok

    -

    -

    Short plural value (defined by

    +

    Short plural value (defined by glossaries-extra): -



    \glsshortpltok  \glsshortpltok

    -

    +

    (This may be the default value or, if provided, the value provided by the user through the shortplural key in the optional argument of \newabbreviation.) -

    Long value (defined by

    Long value (defined by glossaries): -



    \glslongtok  \glslongtok

    -

    -

    Long plural value (defined by

    +

    Long plural value (defined by glossaries-extra): -



    \glslongpltok  \glslongpltok

    -

    +

    (This may be the default value or, if provided, the value provided by the user through the longplural key in the optional argument of \newabbreviation.) -

    There are two other registers available that are defined by

    There are two other registers available that are defined by glossaries: -



    \glslabeltok  \glslabeltok

    -

    +

    which contains the entry’s label and -



    \glskeylisttok  \glskeylisttok

    -

    +

    which contains the values provided in the optional argument of \newabbreviation. -

    Remember put

    Remember put \the in front of the register command as in the examples above. The category label can be access through the command (not a register): -



    \glscategorylabel  \glscategorylabel

    -

    +

    This may be used inside the definition of \GlsXtrPostNewAbbreviation. -

    If you want to base a style on an existing style, you can use -


    If you want to base a style on an existing style, you can use +


    \GlsXtrUseAbbrStyleSetup  \GlsXtrUseAbbrStyleSetup{name}

    -

    +

    where ⟨name⟩ is the name of the existing style. For example, the short-sc-footnoteshort-sm-footnote \GlsXtrUseAbbrStyleSetup{short-footnote}

    -

    within ⟨

    within ⟨setup⟩. -

    The ⟨

    The ⟨fmts⟩ argument deals with the way the entry is displayed in the document. This argument should redefine the following commands: -

    The default suffix for the plural short form (if not overridden by the

    The default suffix for the plural short form (if not overridden by the shortplural key): -



    \abbrvpluralsuffix  \abbrvpluralsuffix

    -

    +

    (Note that this isn’t used for the plural long form, which just uses the regular \glspluralsuffix.) -

    The font used for the short form on

    The font used for the short form on first use or in the full forms: -



    \glsfirstabbrvfont  \glsfirstabbrvfont{text}

    -

    -

    The font used for the short form on subsequent use or through commands like +

    +

    The font used for the short form on subsequent use or through commands like \glsxtrshort: -



    \glsabbrvfont  \glsabbrvfont{text}

    -

    -

    The font used for the long form on

    +

    The font used for the long form on first use or in the full forms: -



    \glsfirstlongfont  \glsfirstlongfont{text}

    -

    -

    The font used for the long form in commands like

    +

    The font used for the long form in commands like \glsxtrlong use: -



    \glslongfont  \glslongfont{text}

    -

    -

    Display full form singular no case-change (used by

    +

    Display full form singular no case-change (used by \gls on first use for abbreviations without the regular attribute set): -



    \glsxtrfullformat  label}{insert}

    -

    -

    Display full form singular first letter converted to upper case (used by

    +

    Display full form singular first letter converted to upper case (used by \Gls on first use for abbreviations without the regular attribute set): -



    \Glsxtrfullformat  label}{insert}

    -

    -

    Display full form plural no case-change (used by

    +

    Display full form plural no case-change (used by \glspl on first use for abbreviations without the regular attribute set): -



    \glsxtrfullplformat  }

    -

    -

    Display full form plural first letter converted to upper case (used by

    +

    Display full form plural first letter converted to upper case (used by \Glspl on \Glsplfirst use for abbreviations without the regular attribute set): -



    \Glsxtrfullplformat  label}{insert}

    -

    -

    In addition ⟨

    +

    In addition ⟨fmts⟩ may also redefine the following commands that govern the inline full formats. If the style doesn’t redefine them, they will default to the same as the display full forms. -

    Inline singular no case-change (used by

    Inline singular no case-change (used by \glsentryfull, \glsxtrfull\glsxtrfull\GLSxtrfull): -



    \glsxtrinlinefullformat  }{insert}

    -

    -

    Inline singular first letter converted to upper case (used by

    +

    Inline singular first letter converted to upper case (used by \Glsentryfull and \Glsxtrfull): -



    \Glsxtrinlinefullformat  }{insert}

    -

    -

    Inline plural no case-change (used by

    +

    Inline plural no case-change (used by \glsentryfullpl, \glsxtrfullpl\glsxtrfullpl\GLSxtrfullpl): -



    \glsxtrinlinefullplformat  }{insert}

    -

    -

    Inline plural first letter converted to upper case (used by

    +

    Inline plural first letter converted to upper case (used by \Glsentryfullpl and \Glsxtrfullpl): -



    \Glsxtrinlinefullplformat  }{insert}

    -

    -

    If you want to provide support for

    +

    If you want to provide support for glossaries-accsupp use the following glossaries-accsupp\glsentry⟨xxx⟩ command.) -

    For example, the

    For example, the short-long style has the following in ⟨fmts⟩: @@ -6866,17 +6889,17 @@ class="cmti-10">fmts⟩:  
        (\glsfirstlongfont{\glsaccesslongpl{##1}})%  
      }%

    -

    Since the inline full commands aren’t redefined, they default to the same as the +

    Since the inline full commands aren’t redefined, they default to the same as the display versions. -

    If you want to base a style on an existing style, you can use -


    If you want to base a style on an existing style, you can use +


    \GlsXtrUseAbbrStyleFmts  \GlsXtrUseAbbrStyleFmts{name}

    -

    +

    within ⟨fmts⟩, where ⟨name⟩ is the name of the existing style. For example, the @@ -6893,7 +6916,7 @@ class="cmti-10">fmts⟩:  
      \renewcommand*{\abbrvpluralsuffix}{\protect\glsxtrscsuffix}%  
      \renewcommand*{\glsabbrvfont}[1]{\glsxtrscfont{##1}}%

    -

    and the

    and the short-sm-long style has: @@ -6905,8 +6928,8 @@ class="cmss-10">short-sm-long  \renewcommand*{\glsabbrvfont}[1]{\glsxtrsmfont{##1}}%  
      \renewcommand*{\abbrvpluralsuffix}{\protect\glsxtrsmsuffix}%

    -

    -

    The simplest examples of creating a new style based on an existing style are the +

    +

    The simplest examples of creating a new style based on an existing style are the “em” styles, such as the short-em-long style, which is defined as: @@ -6925,16 +6948,16 @@ class="cmss-10">short-em-long  \renewcommand*{\glsabbrvfont}[1]{\glsxtremfont{##1}}%  
    }

    -

    +

    -

    -

    +

    Top

    4. Entries in Sectioning Titles, Headers, Captions and Contents

    -

    The

    The glossaries user manual cautions against using commands like \gls in chapter or section titles. The principle problems are:

    @@ -6968,9 +6991,9 @@ class="cmss-10">hyperrefhyperref, you will end up with nested hyperlinks in the table of contents. -

    Similar problems can also occur with captions (except for the page header and bookmark +

    Similar problems can also occur with captions (except for the page header and bookmark issues). -

    To get around all these problems, the

    To get around all these problems, the glossaries user manual recommends using the expandable non-hyperlink commands, such as \glsentrytext \chapter{A Chapter about \glsabbrvfont{\glsentryshort{html}}}

    -

    Or, if you are using

    Or, if you are using hyperref: @@ -7012,8 +7035,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 @@ -7035,12 +7058,12 @@ class="cmtt-10">\markright\markboth. 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}}

    -

    -

    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 @@ -7098,37 +7121,37 @@ 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  }

    -

    +

    (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  }

    -

    +

    and -



    \Glsfmtplural  \Glsfmtplural{label}

    -

    -

    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. @@ -7343,7 +7366,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 indexnumbersnumber. -

    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

    }
    so any restrictions that apply to \ifglsfieldeq also apply to \glsifcategory. -

    Each category may have a set of attributes. For example, the

    Each category may have a set of attributes. For example, the general and acronym\glsentryfmt to determine whether to use \glsgenentryfmt or \glsxtrgenabbrvfmt. -

    Other attributes recognised by

    Other attributes recognised by glossaries-extra are:

    \glsfirst etc commands to ignore the nohyperfirst attribute then just redefine -



    \glsxtrchecknohyperfirst  \glsxtrchecknohyperfirst{label}

    -

    +

    to do nothing.

    non-plural commands like \gls or \glstext. (Provided for entries such as abbreviations that end with a full stop.) -

    Note that this can cause a problem if you access a field that doesn’t end with a +

    Note that this can cause a problem if you access a field that doesn’t end with a full stop. For example: @@ -7527,7 +7550,7 @@ class="cmtt-10">\glstext. (Provided  
     {dante}{DANTE e.V.}{Deutschsprachige Anwendervereinigung \TeX\  
    e.V.}

    -

    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. @@ -7591,14 +7614,14 @@ class="cmtt-10">\newabbreviation (rather than inserting them new dotted version of the original ⟨short⟩ form with the plural suffix appended. -

    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”.

    @@ -7680,7 +7703,7 @@ class="cmtt-10">\glsxtrifcounttrigger\cgls should behave. -

    With

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



    \glsxtrfieldtitlecasecs  \glsxtrfieldtitlecasecs{phrase cs}

    -

    +

    For example: @@ -7733,7 +7756,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}

    -

    +

    glossname\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. @@ -7831,8 +7854,8 @@ class="cmsy-10">§7 Auto-Indexing for further details. -

    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: @@ -7989,22 +8012,22 @@ 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 regular attribute hasn’t be set, the above do ⟨regular 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.3 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 Shortcut Commands class="cmtt-10">\ac which uses \gls. -

    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: @@ -8328,8 +8351,8 @@ class="cmss-10">glossaries:  
    \printglossaries  
    \end{document}

    -

    -

    If you switch to

    +

    If you switch to glossaries-extra you must set the entrycount attribute: @@ -8351,13 +8374,13 @@ class="cmss-10">entrycount\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: @@ -8404,14 +8427,14 @@ 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 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: @@ -8420,8 +8443,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 attribute and redefine \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: @@ -8483,12 +8506,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 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: @@ -8610,7 +8633,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 @@ -8645,12 +8668,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. @@ -8678,10 +8701,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: indexnameindexnamedualindex. -

    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 @@ -8757,7 +8780,7 @@ 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 @@ -8767,13 +8790,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 dualindexformat 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 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 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 @@ -8989,7 +9012,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: @@ -9028,8 +9051,8 @@ below:  
     ... later  
    \glsxtr[][plural=geese]{goose}

    -

    -

    If you are considering doing something like: +

    +

    If you are considering doing something like: @@ -9040,14 +9063,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 @@ -9104,20 +9127,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. Supplemental Packages

    -

    The

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

    -

    Top

    9.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 @@ -9153,13 +9176,13 @@ example:  
    \printglossaries  
    \end{document}

    -

    -

    +

    +

    -

    Top

    9.2 Accessibility Support

    -

    The

    The glossaries-accsupp needs to be loaded before glossaries-extra or through the @@ -9173,7 +9196,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: @@ -9215,7 +9238,7 @@ class="cmss-10">glossaries-accsupp \newcommand*{\glsaccessname}[1]{\glsentryname{#1}}

    -

    otherwise it’s defined as: +

    otherwise it’s defined as: @@ -9229,20 +9252,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: @@ -9253,7 +9276,7 @@ class="cmss-10">glossaries-accsupp \newcommand*{\Glsaccessname}[1]{\Glsentryname{#1}}

    -

    With the

    With the glossaries-accsupp package this is defined as: @@ -9269,112 +9292,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 @@ -9557,11 +9580,11 @@ case.

    -

    -

    +

    Top

    10. Sample Files

    -

    The following sample files are provided with this package: +

    The following sample files are provided with this package:

    sample.tex
    glossaries-prefix

    -

    +

    Top

    -

    -

    Alternatively you can use the

    +

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

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

    or +

    or @@ -9839,13 +9862,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: @@ -9886,8 +9909,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 @@ -10005,17 +10028,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 automake option is used, but the document @@ -10161,29 +10184,51 @@ href="#glo:makeindex">makeindex according to the document settings.

    +makeglossaries-lite.lua
    A custom designed Lua script interface to xindy + and makeindex provided with the glossaries package. This is a cut-down + alternative to the Perl makeglossaries script. If you have Perl installed, + use the Perl script instead. Note that TeX Live creates a symbolic link + called makeglossaries-lite (without the .lua extension) to the actual + + + + makeglossaries-lite.lua script. +
    makeindex
    An indexing application.
    number list
    A list of entry locations (also called a location list). The number + id="dx1-33032">entry locations (also called a location list). The number list can be suppressed using the nonumberlist package option. - - - + id="dx1-33033"> package option.
    xindy
    An flexible indexing application with multilingual support written in Perl.
    @@ -10853,7 +10898,7 @@ class="cmti-10">353

    href="glossaries-extra-manual.html#dx1-33001" >354, 355, 356
    +href="glossaries-extra-manual.html#dx1-33032" >356
    etoolbox package  357, 417
    first use text  418, 419
    +href="glossaries-extra-manual.html#dx1-33035" >419
    fontenc package  420
    @@ -11929,531 +11974,546 @@ class="cmtt-10">makeglossaries  717, 718, 719, 720, 720
    +class="cmbx-10">721
    \makeglossaries  721
    +class="cmti-10">722
    makeindex  722, 723, 724, 725, 726, 727, 728, makeglossaries-lite.lua  723, 724
    +makeglossaries-lite.lua  725, 729
    +class="cmbx-10">726
    +makeindex  727, 728, 729, 730, 731, 732, 733, 734, 735
    memoir class  730
    +href="glossaries-extra-manual.html#dx1-3020" >736
    mfirstuc package  731, 732, 733
    +href="glossaries-extra-manual.html#dx1-3" >737, 738, 739

    N \newabbreviation  734
    +class="cmti-10">740
    \newabbreviationstyle  735
    +class="cmti-10">741
    \newacronym  736
    +class="cmti-10">742
    \newglossaryentry options
        category  737, 738, 739, 740, 741
    +href="glossaries-extra-manual.html#dx1-5003" >743, 744, 745, 746, 747
        desc  742, 743
    +href="glossaries-extra-manual.html#dx1-30038" >748, 749
        descplural  744, 745
    +href="glossaries-extra-manual.html#dx1-30042" >750, 751
        description  746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760
    +href="glossaries-extra-manual.html#dx1-19052" >752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766
        first  761, 762, 763, 764, 765, 766, 767, 768, 769, 770
    +href="glossaries-extra-manual.html#dx1-7013" >767, 768, 769, 770, 771, 772, 773, 774, 775, 776
        firstplural  771, 772, 773, 774, 775, 776
    +href="glossaries-extra-manual.html#dx1-7014" >777, 778, 779, 780, 781, 782
        loclist  777, 778
    +href="glossaries-extra-manual.html#dx1-4025" >783, 784
        long  779, 780, 781, 782, 783
    +href="glossaries-extra-manual.html#dx1-15044" >785, 786, 787, 788, 789
        longplural  784, 785, 786, 787
    +href="glossaries-extra-manual.html#dx1-15045" >790, 791, 792, 793
        name  788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810
    +href="glossaries-extra-manual.html#dx1-9002" >794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816
        parent  811
    +href="glossaries-extra-manual.html#dx1-14023" >817
        plural  812, 813, 814, 815
    +href="glossaries-extra-manual.html#dx1-7017" >818, 819, 820, 821
        see  816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828
    +href="glossaries-extra-manual.html#dx1-4058" >822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834
        short  829, 830, 831, 832, 833, 834, 835, 836, 837, 838
    +href="glossaries-extra-manual.html#dx1-7011" >835, 836, 837, 838, 839, 840, 841, 842, 843, 844
        shortplural  839, 840, 841, 842, 843, 844, 845, 846, 847, 848
    +href="glossaries-extra-manual.html#dx1-15006" >845, 846, 847, 848, 849, 850, 851, 852, 853, 854
        sort  849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860
    +href="glossaries-extra-manual.html#dx1-4045" >855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866
        symbol  861, 862
    +href="glossaries-extra-manual.html#dx1-30030" >867, 868
        symbolplural  863, 864
    +href="glossaries-extra-manual.html#dx1-30034" >869, 870
        text  865, 866, 867, 868, 869, 870, 871, 872
    +href="glossaries-extra-manual.html#dx1-7016" >871, 872, 873, 874, 875, 876, 877, 878
        type  873, 874
    +href="glossaries-extra-manual.html#dx1-10046" >879, 880
        user1  875, 876, 877
    +href="glossaries-extra-manual.html#dx1-19041" >881, 882, 883
    number list  878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899
    +href="glossaries-extra-manual.html#dx1-4024" >884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905

    P package options:
        abbreviations  900, 901, 902, 903, 904
    +href="glossaries-extra-manual.html#dx1-4061" >906, 907, 908, 909, 910
        accsupp  905, 906, 907
    +href="glossaries-extra-manual.html#dx1-4002" >911, 912, 913
    + + +     acronym  908
    +href="glossaries-extra-manual.html#dx1-4069" >914
        acronymlists  909
    - - - +href="glossaries-extra-manual.html#dx1-4073" >915
        automake  910
    +href="glossaries-extra-manual.html#dx1-5013" >916, 917
        docdef  911, 912, 913
    +href="glossaries-extra-manual.html#dx1-4029" >918, 919, 920, 921
            restricted  914
    +href="glossaries-extra-manual.html#dx1-4054" >922
            true  915, 916
    +href="glossaries-extra-manual.html#dx1-4053" >923, 924
        docdefs  917, 918
    +href="glossaries-extra-manual.html#dx1-27003" >925, 926
        hyperfirst
            false  919
    +href="glossaries-extra-manual.html#dx1-24030" >927
        index  920, 921
    +href="glossaries-extra-manual.html#dx1-5005" >928, 929
        indexcrossrefs  922, 923, 924
    +href="glossaries-extra-manual.html#dx1-4057" >930, 931, 932
        indexonlyfirst  925, 926, 927, 928
    +href="glossaries-extra-manual.html#dx1-6002" >933, 934, 935, 936
        nomain  929
    +href="glossaries-extra-manual.html#dx1-3031" >937
        nomissingglstext  930
    +href="glossaries-extra-manual.html#dx1-4056" >938
        nonumberlist  931, 932, 933, 934
    +href="glossaries-extra-manual.html#dx1-6035" >939, 940, 941, 942
        nopostdot  935, 936
    +href="glossaries-extra-manual.html#dx1-12018" >943, 944
            false  937, 938
    +href="glossaries-extra-manual.html#dx1-3004" >945, 946
            true  939
    +href="glossaries-extra-manual.html#dx1-3003" >947
        noredefwarn
            false  940
    +href="glossaries-extra-manual.html#dx1-3008" >948
            true  941
    +href="glossaries-extra-manual.html#dx1-3005" >949
        notree  942
    +href="glossaries-extra-manual.html#dx1-14012" >950
        numbers  943, 944, 945
    +href="glossaries-extra-manual.html#dx1-4077" >951, 952, 953
        record  946
    +href="glossaries-extra-manual.html#dx1-4016" >954
            alsoindex  947
    +href="glossaries-extra-manual.html#dx1-4021" >955
            off  948
    +href="glossaries-extra-manual.html#dx1-4017" >956
            only  949
    +href="glossaries-extra-manual.html#dx1-4020" >957
        seeautonumberlist  950
    +href="glossaries-extra-manual.html#dx1-6036" >958
        seenoindex  951
    +href="glossaries-extra-manual.html#dx1-6025" >959
            ignore  952
    +href="glossaries-extra-manual.html#dx1-6027" >960
        shortcuts  953, 954
    +href="glossaries-extra-manual.html#dx1-4079" >961, 962
            abbr  955, 956
    +href="glossaries-extra-manual.html#dx1-4083" >963, 964
            abbreviation  957
    +href="glossaries-extra-manual.html#dx1-18001" >965
            abbreviations  958
    +href="glossaries-extra-manual.html#dx1-4082" >966
            acro  959
    +href="glossaries-extra-manual.html#dx1-4081" >967
            acronyms  960
    +href="glossaries-extra-manual.html#dx1-4080" >968
            all  961
    +href="glossaries-extra-manual.html#dx1-4093" >969
            false  962
    +href="glossaries-extra-manual.html#dx1-4096" >970
            none  963
    +href="glossaries-extra-manual.html#dx1-4095" >971
            other  964
    +href="glossaries-extra-manual.html#dx1-4084" >972
            true  965
    +href="glossaries-extra-manual.html#dx1-4094" >973
        stylemods  966, 967, 968
    +href="glossaries-extra-manual.html#dx1-4011" >974, 975, 976
        symbols  969, 970, 971
    +href="glossaries-extra-manual.html#dx1-4074" >977, 978, 979
        toc
            false  972
    +href="glossaries-extra-manual.html#dx1-3002" >980
            true  973
    +href="glossaries-extra-manual.html#dx1-3001" >981
    + + +     translate
            babel  974
    - - - +href="glossaries-extra-manual.html#dx1-3010" >982
            true  975
    +href="glossaries-extra-manual.html#dx1-3012" >983
        undefaction  976, 977
    +href="glossaries-extra-manual.html#dx1-4013" >984, 985
            error  978, 979
    +href="glossaries-extra-manual.html#dx1-4014" >986, 987
            warn  980, 981, 982
    +href="glossaries-extra-manual.html#dx1-4015" >988, 989, 990
    page (counter)  983, 984
    +href="glossaries-extra-manual.html#dx1-25027" >991, 992
    polyglossia package  985
    +href="glossaries-extra-manual.html#dx1-32005" >993
    \printabbreviations  986
    +class="cmti-10">994
    \printglossary options
        title  987
    +href="glossaries-extra-manual.html#dx1-32006" >995
    \printunsrtglossaries  988
    +class="cmti-10">996
    \printunsrtglossary  989
    +class="cmti-10">997

    R relsize package  990
    +href="glossaries-extra-manual.html#dx1-19034" >998
    \RestoreAcronyms  991
    +class="cmti-10">999

    S \setabbreviationstyle  992
    +class="cmti-10">1000
    slantsc package  993
    +href="glossaries-extra-manual.html#dx1-23020" >1001

    T textcase package  994
    +href="glossaries-extra-manual.html#dx1-6" >1002
    tracklang package  995, 996
    +href="glossaries-extra-manual.html#dx1-2" >1003, 1004
    translator package  997
    +href="glossaries-extra-manual.html#dx1-3011" >1005

    X xfor package  998
    +href="glossaries-extra-manual.html#dx1-7" >1006
    \xglssetwidest  999
    +class="cmti-10">1007
    xindy  1000, 1001, 1002, 1003, 1004
    +href="glossaries-extra-manual.html#dx1-3022" >1008, 1009, 1010, 1011, 1012, 1013
    xkeyval package  1005
    +href="glossaries-extra-manual.html#dx1-5" >1014

    1.14.21 was originally intended as the last release of glossaries #1={\protect\ttfamily#1}|main}} \DeleteShortVerb{\|} \MakeShortVerb{"} - \title{glossaries-extra.sty v1.08: + \title{glossaries-extra.sty v1.09: an extension to the glossaries package} \author{Nicola L.C. Talbot\\[10pt] Dickimaw Books\\ \url{http://www.dickimaw-books.com/}} - \date{2016-12-13} + \date{2016-12-16} \maketitle \begin{abstract} @@ -751,6 +765,17 @@ It should then be possible to use \cs{printglossary} for those glossaries listed in \meta{list} and \cs{printnoidxglossary} for the other glossaries. +\begin{important} +If you use the optional argument \meta{list}, you can't define +entries in the document (even with the \pkgopt{docdef} option). +\end{important} + +You will need at least version 2.20 of \gls{makeglossaries} or at +least version 1.3 of \gls{makeglossaries-lite.lua} (both distributed +with \styfmt{glossaries} v4.27) to allow for this use of +\cs{makeglossaries}\oarg{list}. Alternatively, use the +\pkgopt{automake} option. + \section{Entry Indexing} \label{sec:wrglossary} 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 6e789c65092..86b783c81b2 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 8737e15799b..b3c8aee96b6 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 6abe4a1dea4..6d9b3188be8 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 0b4b52f9dd2..354581c7932 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-altmodifier.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-altmodifier.pdf index c18ae34dc48..5cb4a67e465 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 eb2c0431138..f7f8b27dedc 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 6247243ffd9..edd79f2b6db 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 8ad929ca5df..ef839009980 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 76b7e9ce212..38f90c8b5f8 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 4814d2d4154..ea1dec4aa1a 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 487f5c61eea..b42f6961d93 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 206a62db024..db32f8b7ab7 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 486a054d789..15ae544ea13 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 fc0b5e87029..4f1de14204e 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-footnote.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-footnote.pdf index fc0538e9840..1cdeec8784a 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 53b20e987f8..cc407b4cdcd 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 525dc077a42..8c3d59a9f82 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 da646d3e7bc..b50c9bcb229 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 7d55ae9f231..b49a5f5df75 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 new file mode 100644 index 00000000000..fcfb599623f Binary files /dev/null and b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.pdf differ diff --git a/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.tex b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.tex new file mode 100644 index 00000000000..a85c7c6b9b5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/glossaries-extra/sample-mixedsort.tex @@ -0,0 +1,35 @@ +\documentclass{article} + +\usepackage[symbols,automake]{glossaries-extra} +\usepackage{glossary-mcols} + +\makeglossaries[main] + +\newglossaryentry{duck}{name=duck,% + description={a waterbird with webbed feet}} + +\newglossaryentry{parrot}{name=parrot,% + description={mainly tropical bird with bright plumage}} + +\newglossaryentry{zebra}{name=zebra,% + description={black and white striped African wild horse}} + +\newglossaryentry{aardvark}{name=aardvark,% + description={African ant-eating mammal}} + +\glsxtrnewsymbol[description={zeta}]{zeta}{$\zeta$} +\glsxtrnewsymbol[description={beta}]{beta}{$\beta$} +\glsxtrnewsymbol[description={alpha}]{alpha}{$\alpha$} +\glsxtrnewsymbol[description={gamma}]{gamma}{$\gamma$} + +\begin{document} + +General terms: \gls{duck}, \gls{zebra}, \gls{aardvark}, +\gls{parrot}. + +Symbols: \gls{beta}, \gls{gamma}, \gls{alpha}, \gls{zeta}. + +\printglossary[style=mcolindexgroup] +\printnoidxglossary[type=symbols,sort=use,style=index] + +\end{document} 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 c6d4f59b7b5..b0670bbcf88 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 558a5ffe4b2..6781f65fd8c 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 95af40b6d92..9e1bb6b86d6 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 3383f207b5a..a4384aef4fa 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 49ff39b8f4f..f9763710db7 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 cf88ab4b1a1..99a1da1ba40 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 9ccba805f82..21fd2a9d229 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 db44dd090ba..1af41ac57e9 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 ed58282dd1b..5123d0f515c 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 88057133762..ae74e70577c 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 234c82bcd07..45192a95d9a 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 7c993362e4a..f604bccdf15 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.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-record.pdf index dcc2799ab6f..2d14d2f9447 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 1b707ebcddf..a771e658fbf 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-trans.pdf b/Master/texmf-dist/doc/latex/glossaries-extra/sample-trans.pdf index 67370e71324..8345f5e1987 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 86dbb3629d4..96af29d5b36 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 ed4851616f3..53c7f4b7b58 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 eed68303fb6..8497fd4c667 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 1457cb7202d..9fe44497574 100644 --- a/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.dtx +++ b/Master/texmf-dist/source/latex/glossaries-extra/glossaries-extra.dtx @@ -1,14 +1,14 @@ %\iffalse % glossaries-extra.dtx generated using makedtx version 1.1 (c) Nicola Talbot % Command line args: -% -section "chapter" % -src "glossaries-extra.sty\Z=>glossaries-extra.sty" % -src "glossaries-extra-stylemods.sty\Z=>glossaries-extra-stylemods.sty" -% -doc "glossaries-extra-codedoc.tex" % -codetitle "Main Package Code (\\styfmt{glossaries-extra.sty})" % -author "Nicola Talbot" +% -section "chapter" +% -doc "glossaries-extra-codedoc.tex" % glossaries-extra -% Created on 2016/12/13 13:52 +% Created on 2016/12/16 14:42 %\fi %\iffalse %<*package> @@ -118,7 +118,7 @@ governed by the \gloskey{first} and \gloskey{firstplural} keys of \setcounter{IndexColumns}{2} -\CheckSum{9923} +\CheckSum{10014} \newcommand*{\ifirstuse}{\iterm{first use}} \newcommand*{\firstuse}{\gls{firstuse}} @@ -154,13 +154,13 @@ styles (glossaries):>#1={\protect\ttfamily#1}|main}} \raggedright } -\title{glossaries-extra.sty v1.08: +\title{glossaries-extra.sty v1.09: documented code} \author{Nicola L.C. Talbot\\[10pt] Dickimaw Books\\ \url{http://www.dickimaw-books.com/}} -\date{2016-12-13} +\date{2016-12-16} \begin{document} \DocInput{glossaries-extra.dtx} @@ -205,7 +205,7 @@ Dickimaw Books\\ %\section{Package Initialisation and Options} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra}[2016/12/13 v1.08 (NLCT)] +\ProvidesPackage{glossaries-extra}[2016/12/16 v1.09 (NLCT)] % \end{macrocode} % Requires \sty{xkeyval} to define package options. % \begin{macrocode} @@ -1500,8 +1500,8 @@ Dickimaw Books\\ %\end{macro} % Disable commands after the glossary: % \begin{macrocode} - \let\@glsxtr@orgprintglossary\@printglossary \renewcommand\@printglossary[2]{% + \def\@glsxtr@printglossopts{##1}% \@glsxtr@orgprintglossary{##1}{##2}% \def\@glsxtr{\@glsxtr@disabledflycommand\glsxtr}% \def\@glsxtrpl{\@glsxtr@disabledflycommand\glsxtrpl}% @@ -5015,6 +5015,7 @@ Dickimaw Books\\ \string\@istfilename[1]{}} \protected@write\@auxout{}{\string\@istfilename{\istfilename}}% \protected@write\@auxout{}{\string\@glsorder{\glsorder}} + \protected@write\@auxout{}{\string\glsxtr@makeglossaries{#1}} \write\@auxout{\string\providecommand\string\@gls@reference[3]{}}% % \end{macrocode} % Iterate through each supplied glossary type and activate it. @@ -5035,7 +5036,7 @@ Dickimaw Books\\ % \begin{macrocode} \let\@makeglossary\relax \let\makeglossary\relax - \let\makeglossaries\relax + \renewcommand\makeglossaries[1][]{}% % \end{macrocode} % Disable all commands that have no effect after \cs{makeglossaries} % \begin{macrocode} @@ -5045,6 +5046,32 @@ Dickimaw Books\\ % \begin{macrocode} \let\gls@checkseeallowed\relax % \end{macrocode} +%Adjust \cs{@do@seeglossary} +% \begin{macrocode} + \let\@glsxtr@org@doseeglossary\@do@seeglossary + \renewcommand*{\@do@seeglossary}[2]{% + \edef\@gls@label{\glsdetoklabel{##1}}% + \edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% + \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% + {\@glsxtr@org@doseeglossary{##1}{##2}}% + {% + \protected@write\@auxout{}{% + \string\@gls@reference + {\gls@type}{\@gls@label}{\string\glsseeformat##2{}}% + }% + }% + }% +% \end{macrocode} +% Adjust \cs{@@do@@wrglossary} +% \begin{macrocode} + \let\@glsxtr@@do@@wrglossary\@@do@@wrglossary + \def\@@do@@wrglossary{% + \edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% + \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% + {\@glsxtr@@do@@wrglossary}% + {\gls@noidxglossary}% + }% +% \end{macrocode} % Suppress warning about no \cs{makeglossaries} % \begin{macrocode} \let\warn@nomakeglossaries\relax @@ -5055,6 +5082,25 @@ Dickimaw Books\\ any glossaries.)^^JThis document will not have a glossary}% }% % \end{macrocode} +% Only warn for glossaries not listed. +% \begin{macrocode} + \renewcommand{\@gls@noref@warn}[1]{% + \edef\@gls@type{##1}% + \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% + {% + \GlossariesExtraWarning{Can't use + \string\printnoidxglossary[type={\@gls@type}] + when `\@gls@type' is listed in the optional argument of + \string\makeglossaries}% + }% + {% + \GlossariesWarning{Empty glossary for + \string\printnoidxglossary[type={##1}]. + Rerun may be required (or you may have forgotten to use + commands like \string\gls)}% + }% + }% +% \end{macrocode} % Adjust display number list to check for type: % \begin{macrocode} \renewcommand*{\glsdisplaynumberlist}[1]{% @@ -5113,17 +5159,13 @@ Dickimaw Books\\ % \verb|#1| (glossary label is stored in \cs{@glo@type} but this % defaults to \cs{glsdefaulttype} so some expansion is required). % \begin{macrocode} + \let\@glo@assign@sortkey\@glsxtr@mixed@assign@sortkey \renewcommand*{\@printgloss@setsort}{% - \renewcommand*{\@glo@assign@sortkey}{% - \edef\@glo@type{\@glo@type}% - \expandafter\DTLifinlist\expandafter{\@glo@type}{\@glsxtr@reg@glosslist}% - {% - \@@glo@no@assign@sortkey - }% - {% - \@@glo@assign@sortkey - }% - }% +% \end{macrocode} +% Need to extract just the \gloskey[printglossary]{type} value. +% \begin{macrocode} + \expandafter\@glsxtr@gettype\expandafter,\@glsxtr@printglossopts,% + type=\glsdefaulttype,\@end@glsxtr@gettype \def\@glo@sorttype{\@glo@default@sorttype}% }% % \end{macrocode} @@ -5141,6 +5183,62 @@ Dickimaw Books\\ % \end{macrocode} %\end{macro} % +%The optional argument version of \cs{makeglossaries} needs an +%adjustment to \cs{@printglossary} to allow \cs{@glo@assign@sortkey} +%to pick up the glossary type. +% +%\begin{macro}{\@glsxtr@orgprintglossary} +%Save original definition (also needed for the on-the-fly macro). +% \begin{macrocode} +\let\@glsxtr@orgprintglossary\@printglossary +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\@printglossary} +%Redefine. +%\changes{1.09}{2016-12-16}{redefined to save options} +% \begin{macrocode} +\renewcommand{\@printglossary}[2]{% + \def\@glsxtr@printglossopts{#1}% + \@glsxtr@orgprintglossary{#1}{#2}% +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\glsxtr@makeglossaries} +%For the benefit of \app{makeglossaries} +%\changes{1.09}{2016-12-16}{new} +% \begin{macrocode} +\newcommand*{\glsxtr@makeglossaries}[1]{} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\@glsxtr@gettype} +%Get just the type. +%\changes{1.09}{2016-12-16}{new} +% \begin{macrocode} +\def\@glsxtr@gettype#1,type=#2,#3\@end@glsxtr@gettype{% + \def\@glo@type{#2}% +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\@glsxtr@mixed@assign@sortkey} +%Assign the sort key. +%\changes{1.09}{2016-12-16}{new} +% \begin{macrocode} +\newcommand\@glsxtr@mixed@assign@sortkey[1]{% + \edef\@glo@type{\@glo@type}% + \expandafter\DTLifinlist\expandafter{\@glo@type}{\@glsxtr@reg@glosslist}% + {% + \@glo@no@assign@sortkey{#1}% + }% + {% + \@@glo@assign@sortkey{#1}% + }% +}% +% \end{macrocode} +%\end{macro} % Display number list for the regular version: %\begin{macro}{\@glsxtr@idx@displaynumberlist} %\changes{1.0}{2016-01-24}{new} @@ -12661,7 +12759,7 @@ Dickimaw Books\\ % First identify package: % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries-extra-stylemods}[2016/12/13 v1.08 (NLCT)] +\ProvidesPackage{glossaries-extra-stylemods}[2016/12/16 v1.09 (NLCT)] % \end{macrocode} % Provide package options to automatically load required predefined % styles. The simplest method is to just test for the existence of 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 293c09c34c3..e033af42b11 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.1 2016/12/13 13:52 +% glossaries-extra.ins generated using makedtx version 1.1 2016/12/16 14:42 \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 1473e5a9780..69c44bef957 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}[2016/12/13 v1.08 (NLCT)] +\ProvidesPackage{glossaries-extra-stylemods}[2016/12/16 v1.09 (NLCT)] \newcommand*{\@glsxtr@loadstyles}{} \DeclareOption*{% \IfFileExists{glossary-\CurrentOption.sty} 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 1982328daed..97992cb9046 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}[2016/12/13 v1.08 (NLCT)] +\ProvidesPackage{glossaries-extra}[2016/12/16 v1.09 (NLCT)] \RequirePackage{xkeyval} \RequirePackage{etoolbox} \@ifpackageloaded{glossaries} @@ -650,8 +650,8 @@ \GlossariesExtraWarning{The options `\@glsxtr@optlist' have been ignored for entry `##2' as it has already been defined}% } - \let\@glsxtr@orgprintglossary\@printglossary \renewcommand\@printglossary[2]{% + \def\@glsxtr@printglossopts{##1}% \@glsxtr@orgprintglossary{##1}{##2}% \def\@glsxtr{\@glsxtr@disabledflycommand\glsxtr}% \def\@glsxtrpl{\@glsxtr@disabledflycommand\glsxtrpl}% @@ -2462,6 +2462,7 @@ \string\@istfilename[1]{}} \protected@write\@auxout{}{\string\@istfilename{\istfilename}}% \protected@write\@auxout{}{\string\@glsorder{\glsorder}} + \protected@write\@auxout{}{\string\glsxtr@makeglossaries{#1}} \write\@auxout{\string\providecommand\string\@gls@reference[3]{}}% \@for\@glo@type:=#1\do{% \ifdefempty{\@glo@type}{}{\@makeglossary{\@glo@type}}% @@ -2473,9 +2474,29 @@ \string\newglossary\space commands}}% \let\@makeglossary\relax \let\makeglossary\relax - \let\makeglossaries\relax + \renewcommand\makeglossaries[1][]{}% \@disable@onlypremakeg \let\gls@checkseeallowed\relax + \let\@glsxtr@org@doseeglossary\@do@seeglossary + \renewcommand*{\@do@seeglossary}[2]{% + \edef\@gls@label{\glsdetoklabel{##1}}% + \edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% + \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% + {\@glsxtr@org@doseeglossary{##1}{##2}}% + {% + \protected@write\@auxout{}{% + \string\@gls@reference + {\gls@type}{\@gls@label}{\string\glsseeformat##2{}}% + }% + }% + }% + \let\@glsxtr@@do@@wrglossary\@@do@@wrglossary + \def\@@do@@wrglossary{% + \edef\@gls@type{\csname glo@\@gls@label @type\endcsname}% + \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% + {\@glsxtr@@do@@wrglossary}% + {\gls@noidxglossary}% + }% \let\warn@nomakeglossaries\relax \def\warn@noprintglossary{% \GlossariesWarningNoLine{No \string\printglossary\space @@ -2483,6 +2504,22 @@ found.^^J(Remove \string\makeglossaries\space if you don't want any glossaries.)^^JThis document will not have a glossary}% }% + \renewcommand{\@gls@noref@warn}[1]{% + \edef\@gls@type{##1}% + \expandafter\DTLifinlist\expandafter{\@gls@type}{\@glsxtr@reg@glosslist}% + {% + \GlossariesExtraWarning{Can't use + \string\printnoidxglossary[type={\@gls@type}] + when `\@gls@type' is listed in the optional argument of + \string\makeglossaries}% + }% + {% + \GlossariesWarning{Empty glossary for + \string\printnoidxglossary[type={##1}]. + Rerun may be required (or you may have forgotten to use + commands like \string\gls)}% + }% + }% \renewcommand*{\glsdisplaynumberlist}[1]{% \expandafter\DTLifinlist\expandafter{##1}{\@glsxtr@reg@glosslist}% {\@glsxtr@idx@displaynumberlist{##1}}% @@ -2521,17 +2558,10 @@ preamble or don't use the optional argument of \string\makeglossaries}% }% + \let\@glo@assign@sortkey\@glsxtr@mixed@assign@sortkey \renewcommand*{\@printgloss@setsort}{% - \renewcommand*{\@glo@assign@sortkey}{% - \edef\@glo@type{\@glo@type}% - \expandafter\DTLifinlist\expandafter{\@glo@type}{\@glsxtr@reg@glosslist}% - {% - \@@glo@no@assign@sortkey - }% - {% - \@@glo@assign@sortkey - }% - }% + \expandafter\@glsxtr@gettype\expandafter,\@glsxtr@printglossopts,% + type=\glsdefaulttype,\@end@glsxtr@gettype \def\@glo@sorttype{\@glo@default@sorttype}% }% \ifglsautomake @@ -2543,6 +2573,25 @@ \fi }% } +\let\@glsxtr@orgprintglossary\@printglossary +\renewcommand{\@printglossary}[2]{% + \def\@glsxtr@printglossopts{#1}% + \@glsxtr@orgprintglossary{#1}{#2}% +} +\newcommand*{\glsxtr@makeglossaries}[1]{} +\def\@glsxtr@gettype#1,type=#2,#3\@end@glsxtr@gettype{% + \def\@glo@type{#2}% +} +\newcommand\@glsxtr@mixed@assign@sortkey[1]{% + \edef\@glo@type{\@glo@type}% + \expandafter\DTLifinlist\expandafter{\@glo@type}{\@glsxtr@reg@glosslist}% + {% + \@glo@no@assign@sortkey{#1}% + }% + {% + \@@glo@assign@sortkey{#1}% + }% +}% \let\@glsxtr@idx@displaynumberlist\glsdisplaynumberlist \newcommand*{\@glsxtr@noidx@displaynumberlist}[1]{% \letcs{\@gls@loclist}{glo@\glsdetoklabel{#1}@loclist}% diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index 10cedf1dd28..1d6bc10094d 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -1109,6 +1109,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`); 'translator', "die 'skipping, now part of beamer'", # 'tree-dvips', "die 'skipping, noinfo license, latex 2.09'", 'treesvr', "die 'skipping, await request, 1995'", + 'trig', "die 'skipping, core LaTeX'", 'tugboat-toc', "die 'skipping, nonfree, CTAN enough'", 'turkish', "die 'skipping, await request, 1989'", 'turkishintro',"die 'skipping, nosource'", -- cgit v1.2.3