diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/glossaries/samples/samplexdy.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/glossaries/samples/samplexdy.tex | 189 |
1 files changed, 114 insertions, 75 deletions
diff --git a/Master/texmf-dist/doc/latex/glossaries/samples/samplexdy.tex b/Master/texmf-dist/doc/latex/glossaries/samples/samplexdy.tex index 2c7182eec36..808a1ac5ee3 100644 --- a/Master/texmf-dist/doc/latex/glossaries/samples/samplexdy.tex +++ b/Master/texmf-dist/doc/latex/glossaries/samples/samplexdy.tex @@ -1,93 +1,129 @@ - % This file is public domain. - % - % This is a sample document illustrating how to use the - % glossaries package with xindy. To create the document: - % - % latex samplexdy - % makeglossaries samplexdy - % latex samplexdy - % - % If you don't have Perl installed, then use one of the - % following instead of makeglossaries: - % - % If you want to have a separate "Mc" letter group do: - % - % xindy -I xindy -M samplexdy-mc -t samplexdy.glg -o samplexdy.gls samplexdy.glo - % - % Otherwise do: - % - % xindy -L english -C utf8 -I xindy -M samplexdy -t samplexdy.glg -o samplexdy.gls samplexdy.glo - % - % If you want to use arara, you need the following directives: - % arara: pdflatex: { synctex: on } - % arara: makeglossaries - % arara: pdflatex: { synctex: on } +% This file is public domain. +% +% This is a sample document illustrating how to use the +% glossaries package with xindy. To create the document: +% +% latex samplexdy +% makeglossaries samplexdy +% latex samplexdy +% +% If you don't have Perl installed, then use one of the +% following instead of makeglossaries: +% +% If you want to have a separate "Mc" letter group do: +% +% xindy -I xindy -M samplexdy-mc -t samplexdy.glg -o samplexdy.gls samplexdy.glo +% +% Otherwise do: +% +% xindy -L english -C utf8 -I xindy -M samplexdy -t samplexdy.glg -o samplexdy.gls samplexdy.glo +% +% If you want to use arara, you need the following directives: +% arara: pdflatex: { synctex: on } +% arara: makeglossaries +% arara: pdflatex: { synctex: on } \documentclass{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} -\usepackage{fmtcount} +\usepackage[notext,notextcomp]{stix} \usepackage[colorlinks,plainpages]{hyperref} \usepackage[xindy,style=altlistgroup]{glossaries} - % Define a new command to do bold italic: +% Define a new command to do bold italic: \newcommand*{\hyperbfit}[1]{\textit{\hyperbf{#1}}} - % Need to add this to the list of attributes in order - % to use it with xindy: - % (This command will have no effect if \noist is used) +% Need to add this to the list of attributes in order +% to use it with xindy: +% (This command will have no effect if \noist is used) \GlsAddXdyAttribute{hyperbfit} - % Redefine the page numbers so that they appear as a word: - - \renewcommand*{\thepage}{\texorpdfstring{\Numberstring{page}}{\arabic{page}}} +% Redefine the page numbers to a custom format (requires stix +% package for the dice commands): + +% \tallynum{n} displays a die or dice where the dots add up to n +\newrobustcmd{\tallynum}[1]{% + \ifnum\number#1<7 + $\csname dice\romannumeral#1\endcsname$% + \else + $\dicevi$% + \expandafter\tallynum\expandafter{\numexpr#1-6}% + \fi +} - % Need to add this to the list of location styles. - % \Numberstring{page} gets expanded to - % \protect \Numberstringnum {<n>} (where <n> is the page number) - % so need to define the location in that format: - % (This command will have no effect if \noist is used) +% \tally{counter} expands to \tallynum{n} where n is the counter +% value. In order to work with glossaries and xindy this requires +% a very specific format. (See the glossaries user manual for more +% details.) + +\newcommand{\tally}[1]{\tallynum{\arabic{page}}} + +% Now redefine \thepage +% (\texorpdfstring is used in case the page number ends up in a PDF +% bookmark, although this is unlikely) +\renewcommand*{\thepage}{\texorpdfstring{\tally{page}}{\arabic{page}}} + +% Need to add this to the list of location styles. +% This requires knowing how \thepage expands when written to a file. +% You can check by inspecting the ':locref' attributes in the .glo +% file. In this case, \thepage expands to \tallynum {n} +% (the space is significant) where n is an arabic number. +% (This command will have no effect if \noist is used) + +\GlsAddXdyLocation{tally}{% tally location format + :sep "\string\tallynum\space\glsopenbrace" % -> \tallynum { + "arabic-numbers" % -> arabic number (0, 1, 2, etc) + :sep "\glsclosebrace" % -> } +} -\GlsAddXdyLocation{Numberstring}{:sep "\string\protect\space - \string\Numberstringnum\space\glsopenbrace" - "arabic-numbers" :sep "\glsclosebrace"} +% If the definition of \tally changes so that it expands to +% something slightly different then the above will have to be +% changed accordingly. - % (Need to redefine \glsXpageXhyperbfit and - % \glsXpageXglsnumberformat after \makeglossaries to get the - % hyperlinks working correctly.) +% (Need to redefine \glsXpageXhyperbfit and +% \glsXpageXglsnumberformat after \makeglossaries to get the +% hyperlinks working correctly.) - % To have Mc as a separate group uncomment the following three - % lines: +% To have Mc as a separate group uncomment the following three +% lines: - %\setStyleFile{samplexdy-mc} % note no extension - %\noist - %\GlsSetXdyLanguage{} +%\setStyleFile{samplexdy-mc} % note no extension +%\noist +%\GlsSetXdyLanguage{} - % The above three lines specify to use samplexdy-mc.xdy (supplied - % with this file) and don't overwrite it. The language is - % unset using \GlsSetXdyLanguage{} as all the language - % dependent information is contained in samplexdy-mc.xdy - % Note that using \noist means that commands like - % \GlsAddXdyAttribute and \GlsAddXdyLocation will no longer have - % an effect. +% The above three lines specify to use samplexdy-mc.xdy (supplied +% with this file) and don't overwrite it. The language is +% unset using \GlsSetXdyLanguage{} as all the language +% dependent information is contained in samplexdy-mc.xdy +% Note that using \noist means that commands like +% \GlsAddXdyAttribute and \GlsAddXdyLocation will no longer have +% an effect. - % Write the style file (if \noist isn't used) - % and activate glossary entries +% Write the style file (if \noist isn't used) +% and activate glossary entries \makeglossaries - % Each page location will be specified in the form: - % - % "\glsXpageXglsnumberformat{}{\protect \Numberstringnum "\marg{n}"}" - % or - % "\glsXpageXhyperbfit{}{\protect \Numberstringnum "\marg{n}"}" - % - % Redefine to allow hyperlinks: +% Each page location will be specified in the form: +% +% "\glsXpageXglsnumberformat{}{\tallynum {" number "}}" +% or +% "\glsXpageXhyperbfit{}{\tallynum {" number "}}" +% +% Knowing this, we can redefine \glsXpageXglsnumberformat +% and \glsXpageXhyperbfit to grab the number part to work out the +% location's numeric value. If the definition of \tally changes +% so that it expands to something slightly different then this +% code will no longer work. +% +% Redefine to allow hyperlinks: \renewcommand{\glsXpageXglsnumberformat}[2]{% + % remember that #2 is in the form \tallynum {n} + % so this does \linkpagenumber\tallynum{n} \linkpagenumber#2% } @@ -95,13 +131,15 @@ \textbf{\em\linkpagenumber#2}% } -\newcommand{\linkpagenumber}[3]{\hyperlink{page.#3}{#1#2{#3}}} +% Syntax: \linkpagenumber\tallynum{page number} +% This creates hyperlink to the given page. +\newcommand{\linkpagenumber}[2]{\hyperlink{page.#2}{#1{#2}}} - % Define glossary entries - % \glshyperlink is used instead of \gls to prevent the glossary - % page numbers also appear in the locations, however I need - % to ensure that the referenced entries are added to the - % glossary via commands that use \glslink, \glsadd or \glssee +% Define glossary entries +% \glshyperlink is used instead of \gls to prevent the glossary +% page numbers also appear in the locations, however I need +% to ensure that the referenced entries are added to the +% glossary via commands that use \glslink, \glsadd or \glssee \newglossaryentry{mcadam}{name={McAdam, John Loudon}, first={John Loudon McAdam},text={McAdam}, @@ -142,14 +180,14 @@ description={A nonparametric test introduced by \newglossaryentry{mach}{name={Mach, Ernst}, first={Ernst Mach},text={Mach}, - % if using samplexdy-mc.xdy, the following line is needed - % to prevent this entry being put in the "Mc" group +% if using samplexdy-mc.xdy, the following line is needed +% to prevent this entry being put in the "Mc" group sort={mach, Ernst}, description={Czech/Austrian physicist and philosopher}} \newglossaryentry{machnumber}{name={Mach number}, - % if using samplexdy-mc.xdy, the following line is needed - % to prevent this entry being put in the "Mc" group +% if using samplexdy-mc.xdy, the following line is needed +% to prevent this entry being put in the "Mc" group sort={mach number}, description={Ratio of the speed of a body in a fluid to the speed of sound in that fluid named after \gls{mach}}} @@ -223,7 +261,8 @@ several pages. This paragraph has been shoved to the bottom of the page using a rule. This paragraph spans a page break for testing purposes to ensure the glossary entry in this paragraph has the correct location. Here's -the glossary entry: \gls{gaussianfn}. +the glossary entry: \gls{gaussianfn}. Check that the location is +correct. This page talks about \glspl[format=hyperbfit]{gaussianint}. Since it's the principle definition, the user-defined hyperbfit format is |