diff options
author | Karl Berry <karl@freefriends.org> | 2007-05-31 18:45:07 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-05-31 18:45:07 +0000 |
commit | e331ca373677d1db698ac67106adfcf83d6c28c0 (patch) | |
tree | 5e6c9ea041e4eeab7502073e285d0765ed97d13a /Master/texmf-dist/source/latex | |
parent | 713ffc22df0c37adf8b286626efa889c648b4e94 (diff) |
glossaries update (25may07)
git-svn-id: svn://tug.org/texlive/trunk@4389 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r-- | Master/texmf-dist/source/latex/glossaries/glossaries.dtx | 586 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/glossaries/glossaries.ins | 2 |
2 files changed, 569 insertions, 19 deletions
diff --git a/Master/texmf-dist/source/latex/glossaries/glossaries.dtx b/Master/texmf-dist/source/latex/glossaries/glossaries.dtx index c1f5e081b92..641f6653224 100644 --- a/Master/texmf-dist/source/latex/glossaries/glossaries.dtx +++ b/Master/texmf-dist/source/latex/glossaries/glossaries.dtx @@ -7,7 +7,7 @@ % -author "Nicola Talbot" % -dir "source" % glossaries -% Created on 2007/5/16 17:33 +% Created on 2007/5/25 16:12 %\fi %\iffalse %<*package> @@ -36,6 +36,7 @@ %<*driver> \documentclass[a4paper]{ltxdoc} \usepackage{ifthen} +\usepackage{alltt} \usepackage[colorlinks, bookmarks, hyperindex=false, @@ -57,7 +58,7 @@ \makeatother \RecordChanges \PageIndex -\CheckSum{2769} +\CheckSum{2807} \CodelineNumbered @@ -88,7 +89,7 @@ %\MakeShortVerb{"} %\DeleteShortVerb{\|} % -% \title{glossaries.sty v 1.0: \LaTeXe\ Package to Assist Generating Glossaries} +% \title{glossaries.sty v 1.02: \LaTeXe\ Package to Assist Generating Glossaries} % \author{Nicola L.C. Talbot\\[10pt] %School of Computing Sciences\\ %University of East Anglia\\ @@ -96,7 +97,7 @@ %NR4 7TJ. United Kingdom.\\ %\url{http://theoval.cmp.uea.ac.uk/~nlct/}} % -% \date{16th May 2007} +% \date{25th May 2007} % \maketitle %\tableofcontents % @@ -136,11 +137,21 @@ %There is a batch file called \texttt{makeglossaries.bat} which %does this for Windows users. % +%This documentation is structured as follows: \autoref{sec:quick} +%is for people who want a few quick pointers of how to get started, +%without having to read through lengthy descriptions, +%\autoref{sec:overview} gives an overview of available commands +%and their syntax, \autoref{sec:code} contains the documented +%source code for those who want to know more about how the +%package works, and how to do more complicated things, such as +%changing the way glossary entries appear. +% %\section{A Quick Guide For The Impatient} +%\label{sec:quick} % -%This section is for people who don't have the time or patience to -%read the manual. If you want more detail, you will have to -%read the rest of the manual. +%This section is for people who want a few quick pointers +%of how to get started, without having to read through +%lengthy descriptions. % %\begin{enumerate} %\item Load \styname{glossaries} \emph{after} \styname{hyperref}: @@ -402,7 +413,39 @@ % %\item Entries can be added to the glossary without producing %any text using \icmdname{glsadd}\marg{label} or -%\icmdname{glsaddall}. +%\icmdname{glsaddall}. These commands also taken an optional +%argument where you can specify the format. For example +%\begin{verbatim} +%\glsadd[format=hyperbf]{singmtx} +%\end{verbatim} +%will add a line to the +%glossary file for the specified term, but will not produce +%any text where the command occurs. +% +%\item A number range can be entered using "format=(" and "format=)" +%to mark the beginning and ending of the range\footnote{This is new +%to version 1.01}. For example: +%\begin{verbatim} +%\glsadd[format=(]{singmtx} +%This is a very long section all about \glspl{singmtx}. +% +%% lots of text omitted +% +%\glsadd[format=)]{singmtx} +%\end{verbatim} +%This is equivalent to \appname{makeindex}'s "|(" and "|)" formats. +% +%\item You can combine the range markers with a formatting command +%(again without the preceding backslash.) For example: +%\begin{verbatim} +%This is the start of a very long section all +%about \glspl[format=(hyperbf]{singmtx}. +% +%% lots of text omitted +% +%This is the end a very long section all about +%\glspl[format=)hyperbf]{singmtx}. +%\end{verbatim} % %\item Only those terms that have actually been used in the %document will be placed in the glossary. If you have defined @@ -481,6 +524,477 @@ % %\end{enumerate} % +%\section{Overview}\label{sec:overview} +% \changes{1.02}{2007 May 25}{added overview section} +% +%\subsection{Package Options} +% +%The \styname{glossaries} package options are as follows: +%\begin{description} +%\item[\pkgopt{toc}] Add the glossaries to the table of contents +%\item[\pkgopt{section}] This is a key=value option. Its value should +%be the name of a sectional unit (e.g.\ "chapter"). This will make +%the glossaries appear in the named sectional unit, otherwise the +%each glossary will appear in an unnumber chapter, if chapters +%exists, otherwise in an unnumbered section. Example: +%\begin{verbatim} +%\usepackage[section=subsection]{glossaries} +%\end{verbatim} +%You can omit the value if you want to use sections, i.e.\ +%\begin{verbatim} +%\usepackage[section]{glossaries} +%\end{verbatim} +%is equivalent to +%\begin{verbatim} +%\usepackage[section=section]{glossaries} +%\end{verbatim} +% +%\item[\pkgopt{style}] This is a key=value option. Its value should +%be the name of the glossary style to use. +% +%\item[\pkgopt{nonumberlist}] This option will suppress the +%associated number lists in the glossaries (see also +%\autoref{sec:numberlists}.) +% +%\item[\pkgopt{acronym}] Make a separate glossary for acronyms. +% +%\item[\pkgopt{counter}] This is a key=value option. The value should +%be the name of the default counter to use in the number lists. +% +%\item[\pkgopt{sanitize}] This is a key=value option whose value +%is a key=value list. By default, the \styname{glossaries} package +%sanitizes the values of the \gloskey{name}, \gloskey{description} +%and \gloskey{symbol} keys used when defining a new glossary +%entry. This means that you don't need to worry about using fragile +%commands when defining new glossary entries, but this may lead +%to unexpected results if you try to display these values within +%the document text. This sanitization can be switched off using +%the \pkgopt{sanitize} package option. (See \autoref{sec:pkgopt} +%and \autoref{sec:newentry} for further details.) +% +%\end{description} +% +%\subsection{Defining Glossary Entries} +%\label{sec:newglosentry} +% +%All glossary entries that are used in a document must be defined in +%the preamble. Only those entries that occur in the document +%(using any of the commands described in \autoref{sec:glslink} and +%\autoref{sec:glsadd}) will appear in the glossary. Each time an entry +%is used in this way, a line is added to an associated glossary (.glo) +%file, which then needs to be converted into a corresponding .gls file +%which contains the typeset glossary. The Perl script +%\appname{makeglossaries} can be used to call \appname{makeindex} +%using a customised style file for each of the glossaries that are +%defined in the document. +% +%\DescribeMacro{\makeglossaries} +%The command \cmdname{makeglossaries} must be placed in the preamble, +%in order to create the customised \appname{makeindex} style file, +%and to ensure that glossary entries are written to the appropriate +%output file. +% +%\DescribeMacro{\newglossaryentry} +%New glossary entries are defined using the command:\\[10pt] +%\cmdname{newglossaryentry}\marg{label}\marg{key-val list}\\[10pt] +%The first argument, \meta{label}, must be a unique label with which to +%identify this entry. The second argument, \meta{key-val list}, +%is a key=value list that supplies the relevant information about this +%entry. There are two required fields: \gloskey{name} and +%\gloskey{description}. Available fields are listed below: +% +%\begin{description} +%\item[{\gloskey{name}}] The name of the entry (as it will appear in the +%glossary.) +%\item[{\gloskey{description}}] A brief description of this term (to +%appear in the glossary.) +%\item[{\gloskey{text}}] How this entry will appear in the document text +%when using \icmdname{gls} (or one of its +%uppercase variants.) If this field is omitted, the value of the +%\gloskey{name} key is used. +%\item[{\gloskey{first}}] How the entry will appear in the document text +%the first time it is used with \icmdname{gls} +%(or one of its uppercase variants.) If this field is omitted, +%the value of the \gloskey{text} key is used. +%\item[{\gloskey{plural}}] How the entry will appear in the document text +%when using \icmdname{glspl} (or one of its uppercase variants.) +%If this field is omitted, the value is obtained by appending an +%``s'' to the value of the \gloskey{text} field. +%\item[{\gloskey{firstplural}}] How the entry will appear in the document +%text the first time it is used with \icmdname{glspl} (or one of +%its uppercase variants.) If this field is omitted, the value is +%obtained by appending an ``s'' to the value of the \gloskey{first} +%field. +%\item[{\gloskey{symbol}}] This field is provided to allow the user to +%specify an associated symbol, but most glossary styles ignore +%this value. If omitted, the value is set to \cmdname{relax}. +%\item[{\gloskey{sort}}] This value indicates how \appname{makeindex} should +%sort this entry. If omitted, the value of the \gloskey{name} field +%is used. This value is equivalent to \appname{makeindex}'s ``actual'' +%character (which is usually the at-sign @.) +%\item[{\gloskey{type}}] This is the glossary type to which this entry +%belongs. If omitted, the default glossary is assumed. +%\end{description} +% +%\DescribeMacro{\loadglsentries} +%You can store all your glossary entry definitions in another +%file, and use:\\[10pt] +%\cmdname{loadglsentries}\oarg{type}\marg{filename}\\[10pt] +%where \meta{filename} is the name of the file containing all the +%\cmdname{newglossaryentry} commands. The optional argument +%\meta{type} is the name of the glossary to which those entries +%should belong, for those entries where the \gloskey{type} key has +%been omitted. Note that only those entries that have been used +%in the text will appear in the relevant glossaries. +% +%\subsection{Number lists} +%\label{sec:numberlists} +% +%Each entry in the glossary has an associated number list. By default, +%these numbers refer to the pages on which that entry has been used +%(using any of the commands described in \autoref{sec:glslink} +%and \autoref{sec:glsadd}.) The number list can be suppressed using +%the \pkgopt{nonumberlist} package option, or an alternative counter +%can be set as the default using the \pkgopt{counter} package option. +% +%\subsection{Links to Glossary Entries} +%\label{sec:glslink} +% +%Once you have defined a glossary entry using +%\icmdname{newglossaryentry}, you can refer to that entry in the +%document using one of the commands listed in this section. +% +%\DescribeMacro{\glslink} +%The command:\\[10pt] +%\cmdname{glslink}\oarg{options}\marg{label}\marg{text}\\[10pt] +%will place \meta{text} in the document at that point, and add +%a line into the associated glossary file for the glossary entry +%given by \meta{label}. If hyperlinks are supported, \meta{text} +%will be a hyperlink to the relevant line in the glossary. The +%optional argument \meta{options} must be a key=value list which +%can take any of the following keys: +% +%\begin{description} +%\item[{\gloskey[glslink]{format}}] This specifies how to format +%the associated number for this entry in the glossary. This value +%is equivalent to the \appname{makeindex} encap value, and (as with +%\cmdname{index}) the value needs to be the name of a +%command \emph{without} the initial backslash. As with +%\cmdname{index}, the characters "(" and ")" can also be used to +%specify the beginning and ending of a number range. +% +%The \styname{glossaries} package provides the following number +%formats: +%\begin{center} +%\begin{tabular}{@{\sffamily}lp{0.8\linewidth}} +%hyperrm & The number is a serif hyperlink to the relevant part of the +%document\\ +%hypersf & The number is a sans-serif hyperlink to the relevant part +%of the document\\ +%hypertt & The number is a monospaced hyperlink to the relevant part +%of the document\\ +%hyperbf & The number is a bold hyperlink to the relevant part of the +%document\\ +%hypermd & The number is a medium weight hyperlink to the relevant +%part of the document\\ +%hyperit & The number is an italic hyperlink to the relevant +%part of the document\\ +%hypersl & The number is a slanted hyperlink to the relevant +%part of the document\\ +%hyperup & The number is an upright hyperlink to the relevant +%part of the document\\ +%hypersc & The number is a small caps hyperlink to the relevant +%part of the document\\ +%hyperemph & The number is an emphasized hyperlink to the relevant +%part of the document\\ +%\end{tabular} +%\end{center} +%Note that if the \cmdname{hyperlink} command hasn't been defined, +%the "hyper"\meta{xx} formats are equivalent to the +%analogous \cmdname{text}\meta{xx} font commands. If you want to +%make a new format, you will need to define a command which takes +%one argument, for example, if you want the associated number in +%the glossary to be in a bold sans-serif font, you can define a +%command called, say, \cmdname{hyperbsf}: +%\begin{verbatim} +%\newcommand{\hyperbsf}[1]{\textbf{\hypersf{#1}}} +%\end{verbatim} +%and then use "hyperbsf" as the value for the \gloskey{format} key. +%(See also \autoref{sec:printglos}.) +% +%\item[{\gloskey[glslink]{counter}}] This specifies which counter +%to use for the associated number for this glossary entry. (See also +%\autoref{sec:numberlists}.) +% +%\item[{\gloskey[glslink]{hyper}}] This is a boolean key which can +%be used to enable/disable the hyperlink to the relevant entry +%in the glossary. (Note that setting "hyper=true" will have no +%effect if \cmdname{hyperlink} has not been defined.) The default +%value is "hyper=true". +% +%\end{description} +%\DescribeMacro{\glslink*} +%There is also a starred version:\\[10pt] +%\cmdname{glslink*}\oarg{options}\marg{label}\marg{text}\\[10pt] +%which is equivalent to \cmdname{glslink}, except it sets +%"hyper=false". +% +%\DescribeMacro{\gls} +%The command:\\[10pt] +%\cmdname{gls}\oarg{options}\marg{label}\oarg{insert}\\[10pt] +%is the same as \cmdname{glslink}, except that the link text +%is determined from the values of the \gloskey{text} and +%\gloskey{first} keys supplied when the entry was defined using +%\icmdname{newglossaryentry}. There are two uppercase variants:\\[10pt] +%\DescribeMacro{\Gls} +%\cmdname{Gls}\oarg{options}\marg{label}\oarg{insert}\\[10pt] +%and +%\DescribeMacro{\GLS} +%\cmdname{GLS}\oarg{options}\marg{label}\oarg{insert}\\[10pt] +%which make the first letter of the link, or all the link text, +%uppercase, respectively. +% +%The final optional argument \meta{insert}, allows you to insert +%some additional text into the link text. By default, this will +%append \meta{insert} at the end of the link text. The first optional +%argument, \meta{options}, is the same as the optional argument to +%\icmdname{glslink}. +% +%There are also analogous plural forms:\\[10pt] +%\DescribeMacro{\glspl} +%\cmdname{glspl}\oarg{options}\marg{label}\oarg{insert}\\[10pt] +%\DescribeMacro{\Glspl} +%\cmdname{Glspl}\oarg{options}\marg{label}\oarg{insert}\\[10pt] +%\DescribeMacro{\GLSpl} +%\cmdname{GLSpl}\oarg{options}\marg{label}\oarg{insert}\\[10pt] +%These determine the link text from the \gloskey{plural} and +%\gloskey{firstplural} keys supplied when the entry was first +%defined. +% +%\subsection{Adding an entry to the glossary without generating text} +%\label{sec:glsadd} +% +%\DescribeMacro{\glsadd} +%It is also possible to add a line in the glossary file without +%generating any text at that point in the document.\\[10pt] +%\cmdname{glsadd}\oarg{options}\marg{label}\\[10pt] +%This is similar to \icmdname{glslink}, only it doesn't produce +%any text (so therefore, there is no \gloskey[glslink]{hyper} key +%available in \meta{options}.) +% +%\DescribeMacro{\glsaddall} +%To add a line for all entries that have been defined, use:\\[10pt] +%\cmdname{glsaddall}\oarg{glossary list}\\[10pt] +%If there are multiple glossaries, you can specify to add only +%those entries which belong to the glossaries listed in +%\meta{glossary list} (which must be a comma separated list of +%glossary names.) +% +%\subsection{Displaying a glossary} +% +%\DescribeMacro{\printglossaries} +%The command \cmdname{printglossaries} will display all the +%defined glossaries. Note that no glossaries will appear until +%you have either used the Perl script \appname{makeglossaries} +%or have directly used \appname{makeindex}. If the glossary still +%does not appear, after you re-\LaTeX\ your document, then check +%the \appname{makeindex} log files to see if there is a problem. +% +%\DescribeMacro{\printglossary} +%An individual glossary is displayed using:\\[10pt] +%\cmdname{printglossary}\oarg{options}\\[10pt] +%where \meta{options} is a key-val list of options. The following +%keys are available: +%\begin{description} +%\item[{\gloskey[printglossary]{type}}] The value of this key +%specifies which glossary to print. If omitted, the default +%glossary is assumed. +% +%\item[{\gloskey[printglossary]{title}}] This is the glossary's +%title (overriding the title specified when the glossary was +%defined.) +% +%\item[{\gloskey[printglossary]{toctitle}}] This is the title +%to use for the table of contents (if the \pkgopt{toc} package +%option has been used.) +% +%\item[{\gloskey[printglossary]{style}}] This specifies which +%glossary style to use for this glossary. +%\end{description} +% +%\subsection{Defining New Glossaries} +% +%\DescribeMacro{\newglossary} +%A new glossary can be defined using:\\[10pt] +%\cmdname{newglossary}\oarg{log-ext}\marg{name}\marg{in-ext}\marg{out-ext}\marg{title}\oarg{counter}\\[10pt] +%where \meta{name} is label to assign to this glossary. (Note that +%the default glossary is labelled "main" and if you use the +%\pkgopt{acronym} package option, there will also be a glossary +%called "acronym".) The arguments \meta{in-ext} and \meta{out-ext} +%specify the extensions to give to the input and output files +%for that glossary, \meta{title} is the default title for this +%new glossary and the final optional argument \meta{counter} specifies +%which counter to use for the associated number lists (see also +%\autoref{sec:numberlists}.) The first optional argument specifies +%the extension for the \appname{makeindex} transcript file (this +%information is only used by \appname{makeglossaries} which picks +%up the information from the auxiliary file.) +% +%\subsection{Acronyms} +% +%\DescribeMacro{\newacronym} +%As you may have noticed in \autoref{sec:newglosentry}, when you +%specify a new entry, you can specify alternate text to use when +%the term is first used in the document, this provides a useful +%means to define acronyms. The \styname{glossaries} package defines +%the command:\\[10pt] +%\cmdname{newacronym}\oarg{key-val list}\marg{label}\marg{abbrv}\marg{long}\\[10pt] +%This is equivalent to:\vskip5pt +%\begin{ttfamily}\obeylines +%\cmdname{newglossaryentry}\textrm{\marg{label}}\{type=\cmdname{acronymtype}, +%name=\textrm{\marg{abbrv}}, +%description=\textrm{\marg{long}}, +%text=\textrm{\marg{abbrv}}, +%first=\{\textrm{\meta{long}} (\textrm{\meta{abbrv}})\}, +%plural=\{\textrm{\meta{abbrv}}s\}, +%firstplural=\{\textrm{\meta{long}}s (\textrm{\meta{abbrv}}s)\}, +%\textrm{\meta{key-val list}}\} +%\end{ttfamily} +%\vskip5pt +%The command \cmdname{acronymtype} is the name of the glossary +%in which the acronyms should appear. If the \pkgopt{acronym} +%package option has been used, this will be "acronym", otherwise +%it will be "main". The acronyms can then be used in exactly +%the same way as any other glossary entry. +% +%\subsection{Glossary Styles} +%The \styname{glossaries} package comes with some pre-defined +%glossary styles. These are as follows: +%\begin{description} +%\item[list] The \glostyle{list} style uses the \envname{description} +%environment. The entry name is placed in the optional argument +%of the \cmdname{item} command (so it will appear in bold by +%default). The description follows, and then the associated number +%list for that entry. +% +%\item[listgroup] The \glostyle{listgroup} style is like +%\glostyle{list}, but the glossary groups have headings. +% +%\item[listhypergroup] The \glostyle{listhypergroup} style is like +%\glostyle{listgroup}, but has a set of links to the glossary +%groups. +% +%\item[altlist] The \glostyle{altlist} style is like \glostyle{list} +%but the description is placed on the following line. +% +%\item[altlistgroup] The \glostyle{altlistgroup} style is like +%\glostyle{altlist}, but the glossary groups have headings. +% +%\item[altlisthypergroup] The \glostyle{altlisthypergroup} style is like +%\glostyle{altlistgroup}, but has a set of links to the glossary +%groups. +% +%\item[long] The \glostyle{long} style uses the \envname{longtable} +%environment. It has two columns, the first column contains the +%entry's name, the second column contains the description followed +%by the number list. +% +%\item[longborder] The \glostyle{longborder} style is like +%\glostyle{long}, but has horizontal and vertical lines around it. +% +%\item[longheader] The \glostyle{longheader} style is like +%\glostyle{long}, but has a header row. +% +%\item[longheaderborder] The \glostyle{longheaderborder} style is +%like \glostyle{longheader}, but has horizontal and vertical lines +%around it. +% +%\item[long3col] The \glostyle{long3col} style is like +%\glostyle{long} but has three columns. The first column contains +%the entry's name, the second column contains the description +%and the third column contains the number list. +% +%\item[long3colborder] The \glostyle{long3colborder} style is like +%the \glostyle{long3col} style but has horizontal and vertical +%lines around it. +% +%\item[long3colheader] The \glostyle{long3colheader} style is like +%\glostyle{long3col}, but has a header row. +% +%\item[long3colheaderborder] The \glostyle{long3colheaderborder} style is +%like \glostyle{long3colheader}, but has horizontal and vertical lines +%around it. +% +%\item[long4col] The \glostyle{long4col} style is like +%\glostyle{long3col} but has an additional column in which the +%entry's associated symbol appears. +% +%\item[long4colborder] The \glostyle{long4colborder} style is like +%the \glostyle{long4col} style but has horizontal and vertical +%lines around it. +% +%\item[long4colheader] The \glostyle{long4colheader} style is like +%\glostyle{long4col}, but has a header row. +% +%\item[long4colheaderborder] The \glostyle{long4colheaderborder} style is +%like \glostyle{long4colheader}, but has horizontal and vertical lines +%around it. +% +%\item[super] The \glostyle{super} style uses the \envname{supertabular} +%environment. It has two columns, the first column contains the +%entry's name, the second column contains the description followed +%by the number list. +% +%\item[superborder] The \glostyle{superborder} style is like +%\glostyle{super}, but has horizontal and vertical lines around it. +% +%\item[superheader] The \glostyle{superheader} style is like +%\glostyle{super}, but has a header row. +% +%\item[superheaderborder] The \glostyle{superheaderborder} style is +%like \glostyle{superheader}, but has horizontal and vertical lines +%around it. +% +%\item[super3col] The \glostyle{super3col} style is like +%\glostyle{super} but has three columns. The first column contains +%the entry's name, the second column contains the description +%and the third column contains the number list. +% +%\item[super3colborder] The \glostyle{super3colborder} style is like +%the \glostyle{super3col} style but has horizontal and vertical +%lines around it. +% +%\item[super3colheader] The \glostyle{super3colheader} style is like +%\glostyle{super3col}, but has a header row. +% +%\item[super3colheaderborder] The \glostyle{super3colheaderborder} style is +%like \glostyle{super3colheader}, but has horizontal and vertical lines +%around it. +% +%\item[super4col] The \glostyle{super4col} style is like +%\glostyle{super3col} but has an additional column in which the +%entry's associated symbol appears. +% +%\item[super4colborder] The \glostyle{super4colborder} style is like +%the \glostyle{super4col} style but has horizontal and vertical +%lines around it. +% +%\item[super4colheader] The \glostyle{super4colheader} style is like +%\glostyle{super4col}, but has a header row. +% +%\item[super4colheaderborder] The \glostyle{super4colheaderborder} style is +%like \glostyle{super4colheader}, but has horizontal and vertical lines +%around it. +% +%\end{description} +% +%The glossary style can be set using the \pkgopt{style} package option, +%or using the \gloskey[printglossary]{style} key in the optional +%argument to \icmdname{printglossary}, or using the command:\\[10pt] +%\cmdname{glossarystyle}\marg{style-name}\\[10pt] +%For further details on creating or modifying glossary styles see +%\autoref{sec:printglos} and \autoref{sec:styles}. +% % \StopEventually{\phantomsection\addcontentsline{toc}{section}{Index}\PrintIndex} % % @@ -492,10 +1006,11 @@ %<*glossaries.sty> % \end{macrocode} %\fi +%\label{sec:code} % \subsection{Package Definition} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{glossaries}[2007/05/16 v1.0 (NLCT)] +\ProvidesPackage{glossaries}[2007/05/25 v1.02 (NLCT)] % \end{macrocode} % Required packages: % \begin{macrocode} @@ -1592,15 +2107,51 @@ counter as its value}}{% \@gls@checkmkidxchars\@glo@desc \protected@edef\@glo@symbol{\csname glo@#2@symbol\endcsname}% \@gls@checkmkidxchars\@glo@symbol -\protected@edef\@glo@numfmt{setentrycounter{\@gls@counter}% -\expandafter\string\csname\@glsnumberformat\endcsname}% -\@gls@checkmkidxchars\@glo@numfmt +\@set@glo@numformat\@glo@numfmt\@gls@counter\@glsnumberformat \glossary[\csname glo@#2@type\endcsname]{% \@glo@sort\@gls@actualchar \string\glossaryentryfield{#2}{\@glo@name}{\@glo@desc }{\@glo@symbol}\@gls@encapchar\@glo@numfmt}% }} % \end{macrocode} +%\changes{1.01}{2007 May 17}{Added range facility in format key}% +% Set the formatting information in the format required by +% \appname{makeindex}: +% \begin{macrocode} +\def\@set@glo@numformat#1#2#3{% +\expandafter\@glo@check@mkidxrangechar#3\@nil +\protected@edef#1{\@glo@prefix setentrycounter{#2}% +\expandafter\string\csname\@glo@suffix\endcsname}% +\@gls@checkmkidxchars#1} +% \end{macrocode} +% Check to see if the given string starts with a ( or ). If it +% does set \cmdname{@glo@prefix} to the starting character, +% and \cmdname{@glo@suffix} to the rest (or "glsnumberformat" +% if there is nothing else), +% otherwise set \cmdname{@glo@prefix} to nothing and +% \cmdname{@glo@suffix} to all of it. +% \begin{macrocode} +\def\@glo@check@mkidxrangechar#1#2\@nil{% +\if#1(\relax + \def\@glo@prefix{(}% + \if\relax#2\relax + \def\@glo@suffix{glsnumberformat}% + \else + \def\@glo@suffix{#2}% + \fi +\else + \if#1)\relax + \def\@glo@prefix{)}% + \if\relax#2\relax + \def\@glo@suffix{glsnumberformat}% + \else + \def\@glo@suffix{#2}% + \fi + \else + \def\@glo@prefix{}\def\@glo@suffix{#1#2}% + \fi +\fi} +% \end{macrocode} % Catch \appname{makeindex} special characters\mkidxspch: % \begin{macrocode} \newcommand{\@gls@checkmkidxchars}[1]{% @@ -2277,9 +2828,7 @@ counter as its value}}{% \@gls@checkmkidxchars\@glo@desc \protected@edef\@glo@symbol{\csname glo@#2@symbol\endcsname}% \@gls@checkmkidxchars\@glo@symbol -\protected@edef\@glo@numfmt{setentrycounter{\@glo@counter}% -\expandafter\string\csname\@glo@format\endcsname}% -\@gls@checkmkidxchars\@glo@numfmt +\@set@glo@numformat\@glo@numfmt\@glo@counter\@glo@format \glossary[\csname glo@#2@type\endcsname]{% \@glo@sort\@gls@actualchar\string\glossaryentryfield {#2}{\@glo@name}{\@glo@desc}{\@glo@symbol}\@gls@encapchar @@ -2333,6 +2882,7 @@ counter as its value}}{% % have temporarily disabled the comment character, I can't split % the lines. If you want to see the code in full, have a look at % \texttt{glossaries.sty}. +%\changes{1.01}{2007 May 17}{Added spaces after 'delimN and 'delimR in ist file}% % \begin{macrocode} \newwrite\istfile \bgroup @@ -2359,10 +2909,10 @@ counter as its value}}{% \write\istfile{postamble "\string\n\string\\end{theglossary}\string\n\string\\glossarypostamble\string\n"} \write\istfile{group_skip "\string\\glsgroupskip\string\n"} \write\istfile{item_0 "\string\n"} -\write\istfile{delim_0 "\{\string\\glossaryentrynumbers\{\string\\relax"} +\write\istfile{delim_0 "\{\string\\glossaryentrynumbers\{\string\\relax "} \write\istfile{delim_t "\}\}"} -\write\istfile{delim_n "\string\\delimN"} -\write\istfile{delim_r "\string\\delimR"} +\write\istfile{delim_n "\string\\delimN "} +\write\istfile{delim_r "\string\\delimR "} \write\istfile{headings_flag 1} \write\istfile{heading_prefix "\string\\glsgroupheading\{"} \write\istfile{heading_suffix "\}"} diff --git a/Master/texmf-dist/source/latex/glossaries/glossaries.ins b/Master/texmf-dist/source/latex/glossaries/glossaries.ins index 7af4cbdb771..8130433bd88 100644 --- a/Master/texmf-dist/source/latex/glossaries/glossaries.ins +++ b/Master/texmf-dist/source/latex/glossaries/glossaries.ins @@ -1,4 +1,4 @@ -% glossaries.ins generated using makedtx version 0.91b 2007/5/16 17:33 +% glossaries.ins generated using makedtx version 0.91b 2007/5/25 16:12 \input docstrip \preamble |