summaryrefslogtreecommitdiff
path: root/Build/source/texk/gregorio/gregorio-4.0.0-beta2/doc/Command_Index_internal.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/gregorio/gregorio-4.0.0-beta2/doc/Command_Index_internal.tex')
-rw-r--r--Build/source/texk/gregorio/gregorio-4.0.0-beta2/doc/Command_Index_internal.tex1587
1 files changed, 1587 insertions, 0 deletions
diff --git a/Build/source/texk/gregorio/gregorio-4.0.0-beta2/doc/Command_Index_internal.tex b/Build/source/texk/gregorio/gregorio-4.0.0-beta2/doc/Command_Index_internal.tex
new file mode 100644
index 00000000000..5cc1f31924c
--- /dev/null
+++ b/Build/source/texk/gregorio/gregorio-4.0.0-beta2/doc/Command_Index_internal.tex
@@ -0,0 +1,1587 @@
+% !TEX root = GregorioRef.tex
+% !TEX program = LuaLaTeX+se
+\section{Gregorio\TeX{} Controls}
+
+These functions are the ones used by Gregorio\TeX{} internally as it
+process the commands listed above. They should not appear in any user
+document and are listed here for programmer documentation purposes
+only.
+
+\macroname{\textbackslash gre@error}{\#1}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Prints an error to the \TeX\ output log.
+
+\begin{argtable}
+ \#1 & string & error message\\
+\end{argtable}
+
+
+\macroname{\textbackslash gre@warning}{\#1}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Prints a warning to the \TeX\ output log.
+
+\begin{argtable}
+ \#1 & string & warning message\\
+\end{argtable}
+
+\macroname{\textbackslash gre@metapost}{\#1}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Executes \MP{} commands using luamplib.
+
+\begin{argtable}
+ \#1 & \MP{} commands & The \MP{} commands to execute.
+\end{argtable}
+
+\macroname{\textbackslash gre@deprecated}{\#1\#2}{gregoriotex-main.tex}
+Macro that handles deprecation messages. By default, deprecated macros
+are allowed and a warning is printed. If the package option
+\texttt{deprecated=false} is set, then deprecated macros raise a
+package error, halting \TeX.
+
+\begin{argtable}
+ \#1 & string & name of the deprecated macro\\
+ \#2 & string & name of the correct macro to use\\
+\end{argtable}
+
+\macroname{\textbackslash gre@obsolete}{\#1\#2}{gregoriotex-main.tex}
+Macro that handles obsolescence errors.
+
+\begin{argtable}
+ \#1 & string & name of the obsolete macro\\
+ \#2 & string & name of the correct macro to use\\
+\end{argtable}
+
+\macroname{\textbackslash gre@loadgregoriofont}{}{gregoriotex-main.tex}
+Loads the chosen font for the neumes at the correct size.
+
+\macroname{\textbackslash gre@calculate@constantglyphraise}{}{gregoriotex-spaces.tex}
+Macro to calculate \verb=\gre@constantglyphraise=
+
+\macroname{\textbackslash gre@addtranslationspace}{}{gregoriotex-spaces.tex}
+Macro to tell Gregorio to set space for the translation.
+
+\macroname{\textbackslash gre@removetranslationspace}{}{gregoriotexspaces.tex}
+Macro to tell Gregorio to remove the space allocated to the translation.
+
+\macroname{\textbackslash gre@calculate@additionalspaces}{\#1\#2\#3\#4}{gregoriotex-spaces.tex}
+Macro which calculates \verb=\gre@additionalbottomspace= and\\
+\verb=\gre@additionaltopspace=
+
+\begin{argtable}
+ \#1 & integer & the height number of the top pitch, including signs\\
+ \#2 & integer & the height number of the bottom pitch, including signs\\
+ \#3 & 0 & there is no translation line\\
+ & 1 & there is a translation line\\
+ \#4 & 0 & there is no above lines text\\
+ & 1 & there is above lines text
+ \end{argtable}
+
+\macroname{\textbackslash gre@calculate@textaligncenter}{\#1\#2\#3}{gregoriotex-spaces.tex}
+Macro for calculating \verb=\gre@textaligncenter=.
+
+\begin{argtable}
+ \#1 & string & The first part of the syllable (any preceding consonants in Latin).\\
+ \#2 & string & The middle part of the syllable (the vowel in Latin, the whole syllable in English).\\
+ \#3 & 0 & Calculation is being performed for the current syllable.\\
+ & 1 & Calculation is being performed for the next syllable.\\
+\end{argtable}
+
+\macroname{\textbackslash gre@calculate@annotationtrueraise}{}{gregoriotex-spaces.tex}
+Macro to calculate \verb=\gre@dimen@annotationtrueraise=.
+
+\macroname{\textbackslash gre@calculate@textlower}{}{gregoriotex-spaces.tex}
+Calculates the default value of \texttt{textlower}. Default is \texttt{spacebeneathtext}.
+
+\macroname{\textbackslash gre@calculate@linewidth}{}{gregoriotex-spaces.tex}
+Calculates the default line width. Default is the width of the printable space (\verb=\hsize=).
+
+\macroname{\textbackslash gre@calculate@stafflinewidth}{}{gregoriotex-spaces.tex}
+Calculates the default width of the staff lines. Default is \texttt{linewidth}.
+
+\macroname{\textbackslash gre@calculate@stafflineheight}{}{gregoriotex-spaces.tex}
+Calculates the height (thickness) of the staff lines. Dependent on \texttt{stafflineheightfactor} and \texttt{gre@factor}.
+
+\macroname{\textbackslash gre@calculate@interstafflinespace}{}{gregoriotex-spaces.tex}
+Calculates the distance between the staff lines. Dependent on \texttt{stafflineheight} and \texttt{gre@factor}
+
+\macroname{\textbackslash gre@calculate@stafflinediff}{}{gregoriotex-spaces.tex}
+Calculates a correction factor for when the staff lines are not their default thickness. Dependent on \texttt{stafflineheight} and \texttt{gre@factor}.
+
+\macroname{\textbackslash gre@calculate@staffheight}{}{gregoriotex-spaces.tex}
+Calculates the total height of the staff. Dependent on \texttt{stafflineheight} and \texttt{interstafflinespace}.
+
+\macroname{\textbackslash gre@calculate@constantglyphraise}{}{gregoriotex-spaces.tex}
+Calculates the baseline correction for the glyphs. Dependent on \texttt{gre@factor}, \texttt{additionalbottomspace}, \texttt{spacebeneathtext}, \texttt{spacelinestext}, \texttt{interstafflinespace}, \texttt{stafflineheight}, \texttt{currenttranslationheight}, and \texttt{stafflinediff}.
+
+\macroname{\textbackslash gre@computespaces}{}{gregoriotex-spaces.tex}
+Aggregates all of the global distance calculations and calls them in the order needed to respect dependencies.
+
+\macroname{\textbackslash gre@calculate@glyphraisevalue}{\#1\#2}{gregoriotex-spaces.tex}
+Calculates the raise values for a glyph (glyphraisevalue and addedraisevalue) based on where it is to be placed and what kind of a glyph it is. This is a time of use calculation.
+
+\begin{argtable}
+ \#1 & integer & The number for where the glyph is located. \texttt{a} in gabc is 1, \texttt{b} is 2, \etc\\
+ \#2 & 0 & no modification\\
+ & 1 & puts the value on the interline just above if it is on a line\\
+ & 2 & puts the value on the interline just beneath if it is on a line\\
+ & 3 & case of the vertical episemus, which is not placed at the same place if the corresponding note is on a line or not\\
+ & 4 & case of the punctum mora, for the same reason\\
+ & 5 & case of the horizontal episemus under a note, that must be placed a bit lower if the note is on a line\\
+ & 6 & case of the signs above (accentus, \etc)\\
+ & 8 & case of the punctum mora of the first note of a podatus or the 2nd note of a porrectus, \etc\\
+ & 9 & case of the horizontal episemus, that must be placed a bit lower if the note is on a line\\
+ & 10 & case of the low choral sign\\
+ & 11 & case of the high choral sign\\
+ & 12 & case of the low choral sign which is lower than the note\\
+ & 13 & case of the brace above the bars
+\end{argtable}
+
+\macroname{\textbackslash gre@stafflinefactor}{}{gregoriotex-spaces.tex}
+A number indicating the thickness of the staff lines.
+
+\macroname{\textbackslash gre@scale@stafflinefactor}{}{gregoriotex-spaces.tex}
+Flag indicating whether the stafflinefactor should scale with changes of grefactor (1), or not (0).
+
+\macroname{\textbackslash gre@calculate@textaligncenter}{\#1\#2\#3}{gregoriotex-spaces.tex}
+Macro to calculate the distance from the beginning of the text of a syllable to its alignment point (the center of the vowel for Latin centering, the center of the syllable for English centering). This is a time of use calculation.
+
+\begin{argtable}
+ \#1 & string & the first part of the syllable\\
+ \#2 & string & the middle part of the syllable\\
+ \#3 & 0 & perform this calculation for the current syllable\\
+ & 1 & perform this calculation for the next syllable
+\end{argtable}
+
+\macroname{\textbackslash gre@calculate@enddifference}{\#1\#2\#3\#4\#5}{gregoriotex-spaces.tex}
+Calculates the difference between the end of the notes and the end of the syllable text. Also stores the value for the previous syllable if needed. This is a time of use calculation.
+
+\begin{argtable}
+ \#1 & length & the total width of the notes\\
+ \#2 & length & the total width of the syllable text\\
+ \#3 & length & the alignment distance for the text (\texttt{textaligncenter})\\
+ \#4 & length & the alignment distance for the notes (\texttt{notesaligncenter})\\
+ \#5 & 0 & do not save the value for the previous syllable before calculating the new value\\
+ & 1 & save the value for the previous syllable before calculating the new value
+\end{argtable}
+
+\macroname{\textbackslash gre@changeonedimenfactor}{\#1\#2\#3}{gregoriotex-spaces.tex}
+Change the scale of a single distance from one factor to another.
+
+\begin{argtable}
+ \#1 & string & name of the distance to be scaled. See \nameref{distances}.\\
+ \#2 & integer & the factor the distance is currently in\\
+ \#3 & integer & the factor the distance is to be put into\\
+\end{argtable}
+
+\macroname{\textbackslash gre@changedimenfactor}{\#1\#2}{gregoriotex-spaces.tex}
+Rescales all the distances (and stafflinefactor) which are supposed to scale with a change in factor.
+
+\begin{argtable}
+ \#1 & integer & the factor the distance is currently in\\
+ \#2 & integer & the factor the distance is to be put into\\
+\end{argtable}
+
+\macroname{\textbackslash gre@calculate@nextbegindifference}{\#1\#2\#3\#4}{gregoriotex-spaces.tex}
+Macro to calculate \texttt{nextbegindifference}.
+
+\begin{argtable}
+ \#1 & string & the first letters of the next syllable\\
+ \#2 & string & the middle letters of the next syllable (the vowel in Latin, the whole syllable in English)\\
+ \#3 & string & the end letters of the next syllable\\
+ \#4 & $0 <$ integer $< 19$ & the type of notes alignment. See \nameref{notesalign}.\\
+ & $20 <$ integer $< 39$ & Same as below 20 except there is a flat before the notes. Subtract 20 to get the type of notes alignment.\\
+ & $40 <$ integer $< 59$ & Same as below 20 except there is a natural before the notes. Subtract 40 to get the type of notes alignment.
+\end{argtable}
+
+\macroname{\textbackslash gre@makein}{\#1}{gregoriotex-spaces.tex}
+Strips the decimals and units from a distance.
+
+\begin{argtable}
+ \#1 & distance & should be in the form ``[0-9]+.[0-9]+pt''. (\ie the result of applying \verb=\the= to a distance register)
+\end{argtable}
+
+\macroname{\textbackslash gre@makenum}{\#1}{gregoriotex-spaces.tex}
+Strips the units from a distance.
+
+\begin{argtable}
+ \#1 & distance & should be in the form ``[0-9]+.[0-9]+pt''. (\ie the result of applying \verb=\the= to a distance register)
+\end{argtable}
+
+\macroname{\textbackslash gre@unitfactor}{}{gregoriotex-spaces.tex}
+Temporary count used by \verb=\gre@convertto=.
+
+\macroname{\textbackslash gre@basefactor}{}{gregoriotex-spaces.tex}
+Temporary count used by \verb=\gre@convertto=.
+
+\macroname{\textbackslash gre@count@temp@**}{}{gregoriotex-spaces.tex}
+Temporary count used in calculations. There are currently three of these.
+
+\macroname{\textbackslash gre@convertto}{\#1\#2}{gregoriotex-spaces.tex}
+Macro which converts a distance into a particular set of units. Result is placed in \verb=\gre@converted= as a string.
+
+\begin{argtable}
+ \#1 & string & two letter abbreviation for the units. Should recognize all legal TeX units.\\
+ \#2 & distance & Distance to be converted.
+\end{argtable}
+
+\macroname{\textbackslash gre@converted}{}{gregoriotex-spaces.tex}
+Macro holding result of last call to \verb=\gre@convertto=.
+
+\macroname{\textbackslash gre@consistentunits}{\#1\#2}{gregoriotex-spaces.tex}
+This function takes a distance and formats it as a string so that its units conform to the pattern set by a string representation of a distance. Result is placed in \verb=\gre@stringdist=.
+
+\begin{argtable}
+ \#1 & string & the standard whose format is to be matched.\\
+ \#2 & distance & the distance to be adjusted.
+\end{argtable}
+
+\macroname{\textbackslash gre@stringdist}{}{gregoriotex-spaces.tex}
+Macro holding result of last call to \verb=\gre@consistentunits=.
+
+\macroname{\textbackslash gre@gregorioscore}{\#1}{gregoriotex-main.tex}
+Macro that handles \verb=\gregorioscore= calls when they do not have an
+optional argument.
+
+\begin{argtable}
+ \#1 & string & Relative or absolute path to the score.\\
+\end{argtable}
+
+\macroname{\textbackslash gre@gregorioscore@option}{[\#1]\#2}{gregoriotex-main.tex}
+Macro that handles \verb=\gregorioscore= calls when they have an optional
+argument.
+
+\begin{argtable}
+ \#1 & \texttt{n} & \#2 will be included as is. \\
+ & \texttt{a} & Gregoriotex will automatically compile gabc files if necessary.\\
+ & \texttt{f} & Forces gregoriotex to compile the gabc file.\\
+ \#2 & string & Relative or absolute path to the score.\\
+\end{argtable}
+
+\macroname{\textbackslash gre@gabcsnippet}{\#1}{gregoriotex-main.tex}
+Macro that handles \verb=\gabcsnippet= calls when they do not have an
+optional argument.
+
+\begin{argtable}
+ \#1 & string & Snippet of gabc code.\\
+\end{argtable}
+
+\macroname{\textbackslash gre@gabcsnippet@option}{[\#1]\#2}{gregoriotex-main.tex}
+Macro that handles \verb=\gabcsnippet= calls when they have an optional
+argument.
+
+\begin{argtable}
+ \#1 & int & Value of initial style to be passed to gregorio \\
+ \#2 & string & Snippet of gabc code.\\
+\end{argtable}
+
+\macroname{\textbackslash gre@writemode}{\#1}{gregoriotex-main.tex}
+Macro that writes its argument with \verb=\greannotation=. The
+argument typically is given to this macro by \verb=\GreMode= in the
+gtex file.
+
+\begin{argtable}
+ \#1 & string & Text to place above the initial of a score.\\
+\end{argtable}
+
+\macroname{\textbackslash gre@brace@common}{\#1\#2\#3\#4\#5\#6\#7}{gregoriotex-signs.tex}
+Common macro used internally to render braces.
+
+\begin{argtable}
+ \#1 & length & The width of the brace.\\
+ \#2 & length & A vertical shift.\\
+ \#3 & length & A horizontal shift.\\
+ \#4 & 0 & Don't shift before starting the brace.\\
+ & 1 & Shift back a punctum's width before starting the brace.\\
+ \#5 & 0 & No accentus above the brace.\\
+ & 1 & Typeset an accentus above the brace.\\
+ \#6 & integer & The height number for the brace.\\
+ \#7 & csname & The control sequence name representing the brace.
+\end{argtable}
+
+\macroname{\textbackslash grebracemetapostpreamble}{\#1}{gregoriotex-signs.tex}
+Returns the \MP{} preamble for braces. The control sequence name does
+not have the \texttt{@} symbol because this macro is used within \MP{}.
+
+\begin{argtable}
+ \#1 & string & the width of the brace; if \texttt{*}, use the bar brace width.
+\end{argtable}
+
+\macroname{\textbackslash gre@draw@curlybrace}{\#1}{gregoriotex-signs.tex}
+Draws a curly over-brace using \MP{}.
+
+\begin{argtable}
+ \#1 & length & the width of the brace.
+\end{argtable}
+
+\macroname{\textbackslash gre@draw@brace}{\#1}{gregoriotex-signs.tex}
+Draws a round over-brace using \MP{}.
+
+\begin{argtable}
+ \#1 & string & the width of the brace; if \texttt{*}, use the bar brace width.
+\end{argtable}
+
+\macroname{\textbackslash gre@draw@underbrace}{\#1}{gregoriotex-signs.tex}
+Draws a round under-brace using \MP{}.
+
+\begin{argtable}
+ \#1 & length & the width of the brace.
+\end{argtable}
+
+\macroname{\textbackslash gre@draw@roundbrace}{\#1}{gregoriotex-signs.tex}
+Draws a round over- or under-brace using \MP{}.
+
+\begin{argtable}
+ \#1 & length & the width of the brace.\\
+ \#2 & number & the height of the bounding box in em-relative units.\\
+ \#3 & \MP{} commands & \MP{} commands to draw the brace outline.
+\end{argtable}
+
+\macroname{\textbackslash gre@iflatex}{\#1}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Evaluates to \verb=#1= if running under \LaTeX{}.
+
+\begin{argtable}
+ \#1 & \TeX{} code & the \TeX{} code to use if running under \LaTeX{}.
+\end{argtable}
+
+\macroname{\textbackslash gre@latex@barredsymbol}{\#1\#2\#3\#4}{gregoriotex-signs.tex}
+Internal method used by \verb=\grelatexsimpledefarredsymbol= to simplify
+the cascading of conditionals used to implement that macro.
+
+\bigskip\textbf{Only available in \LaTeX.}
+
+\begin{argtable}
+ \#1 & string & the value of \verb=\f@series/\f@shape= to match.\\
+ \#2 & \TeX{} code & the \TeX{} for the base symbol (\ie, \texttt{A}, \texttt{R}, or \texttt{V}).\\
+ \#3 & string & the control sequence name created by \verb=\gredefsizedsymbol= to use for the bar.\\
+ \#4 & dimension & the amount to shift the bar to the left from the end of the base symbol.
+\end{argtable}
+
+\macroname{\textbackslash gre@additionalbottomcustoslineend}{}{gregoriotex-signs.tex}
+Macro to place a bottom custos with an additional line (positions \texttt{a} and \texttt{b}) at the end of a line.
+
+\macroname{\textbackslash gre@additionalbottomcustoslinemiddle}{}{gregoriotex-signs.tex}
+Macro to place a bottom custos with an additional line (positions \texttt{a} and \texttt{b}) in the middle of a line.
+
+\macroname{\textbackslash gre@additionaltopcustoslineend}{}{gregoriotex-signs.tex}
+Macro to place a top custos with an additional line (positions \texttt{l} and \texttt{m}) at the end of a line.
+
+\macroname{\textbackslash gre@additionaltopcustoslinemiddle}{}{gregoriotex-signs.tex}
+Macro to place a top custos with an additional line (positions \texttt{l} and \texttt{m}) in the middle of a line.
+
+\macroname{\textbackslash gre@pickcustos}{\#1}{gregoriotex-signs.tex}
+Macro to pick the appropriate custos character.
+
+\begin{argtable}
+ \#1 & integer & height of the custos character to be placed\\
+\end{argtable}
+
+\macroname{\textbackslash gre@addspaceabove}{}{gregoriotex-main.tex}
+Macro to increase the space above the lines to account for above lines text.
+
+\macroname{\textbackslash gre@removespaceabove}{}{gregoriotex-main.tex}
+Macro to decrease the space above the lines as there is no longer any above lines text.
+
+\macroname{\textbackslash gre@alteration}{\#1\#2\#3\#4}{gregoriotex-signs.tex}
+Macro to typeset an alteration.
+
+\begin{argtable}
+ \#1 & integer & height of the alteration\\
+ \#2 & character alias & the alteration\\
+ \#3 & character alias & the hole of the alteration\\
+ \#4 & 1 & the alteration is a flat for a key change\\
+ & 0 & all other cases\\
+\end{argtable}
+
+\macroname{\textbackslash gre@calculate@clefnum}{\#1\#2}{gregoriotex-signs.tex}
+Macro calculating the \verb=\gre@clefnum= from the letter and number.
+
+\begin{argtable}
+ \#1 & charcter & type of clef (\texttt{c} or \texttt{f})\\
+ \#2 & integer & line number\\
+\end{argtable}
+
+\macroname{\textbackslash gre@clefnum}{}{gregoriotex-signs.tex}
+Count holding the current clef number.
+
+\macroname{\textbackslash gre@clefflat}{}{gregoriotex-signs.tex}
+Macro to hold the height of the current flat for the clef (\texttt{a} if no flat).
+
+\macroname{\textbackslash gre@updatelinesclef}{}{gregoriotex-signs.tex}
+Macro redrawing a key from \verb=\gre@clefnum=, useful for vertical space changes.
+
+\macroname{\textbackslash gre@currenttextabovelines}{}{gregoriotex-main.tex}
+Macro for storing the text which needs to be placed above the lines.
+
+\macroname{\textbackslash gre@typesettextabovelines}{\#1}{gregoriotex-main.tex}
+Macro for typesetting the text above the lines.
+
+\macroname{\textbackslash gre@dotranslationcenterend}{}{gregoriotex-main.tex}
+Macro to typeset a centered translation.
+
+\macroname{\textbackslash gre@drawfirstlines}{}{gregoriotex-main.tex}
+Macro to draw the first set of lines in a score (when shortened by an initial).
+
+\macroname{\textbackslash gre@generatelines}{}{gregoriotex-main.tex}
+Macro to (re)populate the box containing the lines.
+
+\macroname{\textbackslash gre@updatelinewidth}{}{gregoriotex-main.tex}
+Macro to shorten the lines to account for the presence of the initial.
+
+\macroname{\textbackslash gre@knownline}{}{gregoriotex-main.tex}
+A count which keeps track of which line of the score we're on.
+
+\macroname{\textbackslash gre@lastoflinecount}{}{gregoriotex-main.tex}
+Count to track where on the line we are. Values are 0 (we are not near the end of a line), 1 (we're at the last syllable of the line), and 2 (we just set the last syllable of the line and so are at the first syllable of a new line).
+
+\macroname{\textbackslash gre@savedlastoflinecount}{}{gregoriotex-main.tex}
+A spot to save the \verb=\gre@lastoflinecount= so we can change it temporarily and revert to the saved value later.
+
+\macroname{\textbackslash gre@newlinecommon}{\#1}{gregoriotex-main.tex}
+The macro which needs to be called each time a new lines is started.
+
+\begin{argtable}
+ \#1 & 0 & Justifying the line being ended\\
+ & 1 & Do not justify the line being ended\\
+\end{argtable}
+
+\macroname{\textbackslash gre@endafterbar}{\#1}{gregoriotex-main.tex}
+Macro to call after ending a bar.
+
+\begin{argtable}
+ \#1 & 0 & We are at the end of a line\\
+ & 1 & We not at the end of a line\\
+\end{argtable}
+
+\macroname{\textbackslash gre@endofsyllable}{\#1\#2\#3}{gregoriotex-syllable.tex}
+Macro called at end of a syllable, adds a penalty and a space.
+
+\begin{argtable}
+ \#1 & 0 & to only add the penalty\\
+ & 1 & otherwise\\
+ \#2 & 0 & if end of syllable\\
+ & 1 & if end of word\\
+ \#3 & 1 & if next syllable is a bar\\
+ & 0 & otherwise\\
+\end{argtable}
+
+\macroname{\textbackslash gre@exhyphencharsave}{}{gregoriotex-main.tex}
+Macro for saving the ex hyphen character so that it can be restored at the end of the score.
+
+\macroname{\textbackslash gre@factor}{}{gregoriotex-main.tex}
+Count which stores the current staff size.
+
+Default: 17 (approximately the size found in graduals)
+
+\macroname{\textbackslash gre@fillhole}{\#1}{gregoriotex-signs.tex}
+Macro to fill the hole in a glyph so that staff lines do not show through a hole in it.
+
+\begin{argtable}
+ \#1 & Gregorio\TeX\ char & character to use to fill the hole\\
+\end{argtable}
+
+\macroname{\textbackslash gre@calculate@notesaligncenter}{\#1}{gregoriotex-syllable.tex}
+Macro to find the alignment center for a group of notes. The value is the distance from the left edge of the group to the alignment point and is stored in \verb=\gre@dimen@notesaligncenter=.
+
+\begin{argtable}
+ \#1 & Note alignment type & See \ref{notesalign}\\
+\end{argtable}
+
+\macroname{\textbackslash gre@calculate@nextnotesaligncenter}{\#1}{gregoriotex-syllable.tex}
+Same as previous, but for the next syllable.
+
+\begin{argtable}
+ \#1 & Note alignment type & See \ref{notesalign}\\
+\end{argtable}
+
+\macroname{\textbackslash gre@calculate@simplenotesaligncenter}{\#1\#2}{gregoriotex-syllable.tex}
+Workhorse function behind \verb=\gre@calculate@notesaligncenter= and \verb=\gre@calculate@nextnotesaligncenter=.
+
+\begin{argtable}
+ \#1 & Note alignment type & See \ref{notesalign}\\
+ \#2 & 0 & this is for the current syllable\\
+ & 1 & this is for the next syllable\\
+\end{argtable}
+
+\macroname{\textbackslash gre@gregoriofontname}{}{gregoriotex-main.tex}
+Macro which stores the name of the currently selected font for the neumes.
+
+\macroname{\textbackslash gre@handleclivisspecialalignment}{\#1\#2\#3}{gregoriotex-syllable.tex}
+Macro for aligning clivis syllables according to the flag \verb=\gre@clivisalignment=.
+
+\begin{argtable}
+ \#1 & Gregorio\TeX\ glyph & Glyph to use when aligning clivis on its center\\
+ \#2 & Gregorio\TeX\ glyph & Glyph to use when aligning clivis on the center of the first punctum\\
+ \#3 & 0 & this is for the current syllable\\
+ & 1 & this is for the next syllable\\
+\end{argtable}
+
+\macroname{\textbackslash gre@hepisorline}{\#1\#2\#3\#4\#5}{gregoriotex-signs.tex}
+Macro to typeset a horizontal line (either an additional staff line or an episemus).
+
+\begin{argtable}
+ \#1 & character & The letter of the height of the episemus (not the height of the note it corresponds to).\\
+ \#2 & 0 & go back to the beginning of the previous glyph; this starts the episemus at the beginning of the previous glyph\\
+ & 1 & stay at the end of the glyph; doesn't make much sense to use this\\
+ & 2 & go back the width of \#1; this starts the episemus at the glyph from the end that starts at \#1's width from the end\\
+ & 3 & go back to the beginning of the previous glyph and then forward the width of \#1; this starts the episemus at the glyph from the start that starts just after \#1's width from the start\\
+ \#3 & integer &the ambitus for a two note episemus at the diagonal stroke of a porrectus, porrectus flexus, orculus resupinus, or torculus resupinus flexus\\
+ \#4 & 0 & an horizontal episemus\\
+ & 1 & an horizontal episemus under a note\\
+ & 3 & a line at the bottom\\
+ & 2 & a line at the top\\
+ \#5 & f & a normal episemus\\
+ & l & a small episemus aligned left\\
+ & c & a small episemus aligned center\\
+ & r & for a small episemus aligned right\\
+\end{argtable}
+
+\macroname{\textbackslash gre@hepisorlineaux}{\#1\#2\#3\#4}{gregoriotex-signs.tex}
+Macro that will help in the typesetting of a horizontal episemus and additional lines.
+
+\begin{argtable}
+ \#1 & Gregorio\TeX\ glyph & an offset glyph (see \#3, below)\\
+ \#2 & Gregorio\TeX\ glyph & the episemus glyph\\
+ \#3 & 0 & go back to the beginning of the previous glyph; this starts the episemus at the beginning of the previous glyph\\
+ & 1 & stay at the end of the glyph; doesn't make much sense to use this\\
+ & 2 & go back the width of \#1; this starts the episemus at the glyph from the end that starts at \#1's width from the end\\
+ & 3 & go back to the beginning of the previous glyph and then forward the width of \#1; this starts the episemus at the glyph from the start that starts just after \#1's width from the start\\
+ \#4 & 0 & an horizontal episemus\\
+ & 1 & an horizontal episemus under a note\\
+ & 3 & a line at the bottom\\
+ & 2 & a line at the top\\
+\end{argtable}
+
+\macroname{\textbackslash gre@vepisemusorrare}{\#1\#2\#3\#4\#5}{gregoriotex-signs.tex}
+Macro to typeset a vertical episemus or a rare accent (like accentus, circulus, etc.). This function must be called after a call to \verb=\GreGlyph=.
+
+\begin{argtable}
+ \#1 & character & the letter of the height of the episemus (not the height of the note it corresponds to.\\
+ \#2 & integer & See \nameref{EpisemusSpecial}\\
+ \#3 & Gregorio\TeX\ glyph & the sign glyph\\
+ \#4 & 1 & vertical episemus\\
+ & 2 & rare sign\\
+ & 3 & choral sign\\
+ & 4 & brace above the bar\\
+ \#5 & string & the choral sign, if relevant\\
+\end{argtable}
+
+\macroname{\textbackslash gre@vepisemusorrareaux}{\#1\#2\#3\#4\#5\#6\#7}{gregoriotex-signs.tex}
+Macro to help typesetting vertical episemus.
+
+\begin{argtable}
+ \#1 & Gregorio\TeX\ glyph & is an offset glyph (see \#3 below)\\
+ \#2 & Gregorio\TeX glyph & the glyph upon which the sign is to be centered\\
+ \#3 & 0 & go back to the beginning of the previous glyph and then forward half the width of \#2; this puts the sign at the beginning of the previous glyph, whose first note is the size of \#2\\
+ & 1 & go back half the width of \#2; this puts the sign at the end of the previous glyph, whose last note is the size of \#2\\
+ & 2 & go back the width of \#1 and then forward half the width of \#2; this puts the sign at the glyph from the end that starts at \#1's width from the end\\
+ & 3 & go back to the beginning of the previous glyph and then forward the width of \#1 and then back half the width of \#2; this puts the sign at the glyph from the start that ends at \#1's width from the start\\
+ \#4 & dimension & a shift that we want to get applied, useful for punctum inclinatum for example\\
+ \#5 & integer & is the glyph number\\
+ \#6 & 1 & vertical episemus\\
+ & 2 & rare sign\\
+ & 3 & choral sign\\
+ & 4 & brace above the bar\\
+ \#7 & string & the choral sign if relevant\\
+\end{argtable}
+
+\macroname{\textbackslash gre@newglyphcommon}{}{gregoriotex-syllable.tex}
+Macro called before each glyph.
+
+\macroname{\textbackslash gre@normalinitial}{}{gregoriotex-main.tex}
+Macro called at the end of the score to ensure that a big initial setting doesn't carry into the next score.
+
+\macroname{\textbackslash greoldcatcode}{}{gregoriotex.tex}
+Macro to store the catcode for ``\@'' so that we can use said symbol in function names under Plain\TeX\ and then restore the original catcode after the package is done loading.
+
+\macroname{\textbackslash gre@setstylefont}{}{gregoriotex-main.tex}
+Macro for opening up greextra font.
+
+\macroname{\textbackslash gre@syllablenotes}{\#1}{gregoriotex-syllable.tex}
+Macro for populating \verb=\gre@box@syllablenotes=.
+
+\begin{argtable}
+ \#1 & string & The contents to be placed in the box\\
+\end{argtable}
+
+\macroname{\textbackslash gre@symbolfontsize}{}{gregoriotex-symbols.tex}
+The font size at which symbols are to be loaded.
+
+\macroname{\textbackslash gre@textnormal}{\#1}{gregoriotex-syllable.tex}
+Macro which applies the default text format.
+
+\macroname{\textbackslash gre@typekey}{\#1\#2\#3\#4\#5}{gregoriotex-signs.tex}
+Macro which typesets the key.
+
+\begin{argtable}
+ \#1 & character & the type of the key: c or f\\
+ \#2 & integer & the line of the key (1 is the lowest)\\
+ \#3 & 0 & no need to use small key characters (inside a line)\\
+ & 1 & we must use small key characters (inside a line)\\
+ \#4 & 0 & no extra space is needed after the key\\
+ & 1 & we must type a space after the key\\
+ \#5 & integer & if 3, it means that we must not put a flat after the key, otherwise it's the height of the flat\\
+\end{argtable}
+
+\macroname{\textbackslash gre@updateleftbox}{}{gregoriotex-main.tex}
+Macro to update the box printed a the left end of every line (the one which holds the staff lines).
+
+\macroname{\textbackslash gre@usestylecommon}{}{gregoriotex-signs.tex}
+Macro which specifies the alternate glyphs which are common to all of the styles.
+
+\macroname{\textbackslash gre@widthof}{\#1}{gregoriotex-main.tex}
+Macro for calculating the width of its argument and storing it in \verb=\gre@dimen@temp@three=.
+
+\macroname{\textbackslash gre@writebar}{\#1\#2\#3}{gregoriotex-signs.tex}
+Macro to write a bar.
+
+\begin{argtable}
+ \#1 & 0 & virgula\\
+ & 1 & minima\\
+ & 2 & minor\\
+ & 3 & major\\
+ & 4 & finalis\\
+ & 5 & the last finalis\\
+ \#2 & 0 & in a syllable containing only this bar\\
+ & 1 & in a syllable containing other notes\\
+ \#3 & \TeX\ code & macros that may happen before the skip after the bar (typically GreVEpisemus)\\
+\end{argtable}
+
+\macroname{\textbackslash gre@@arg}{}{gregoriotex-syllable.tex}
+A dummy macro which is used to store a macro which takes an argument so that it can be used in a \verb=\ifx= comparison. The value of the argument is provided at the time this macro is created.
+
+\macroname{\textbackslash gre@nothing}{}{gregoriotex-main.tex}
+A dummy macro which has not contents. Used for \verb=\ifx= comparisons.
+
+\macroname{\textbackslash gre@annotation}{[\#1]\#2}{gregoriotex-main.tex}
+Workhorse function behind \verb=\greannotation=.
+
+\begin{argtable}
+ \#1 & \texttt{c} & center align the new line with the existing annotation content\\
+ & \texttt{l} & left align the new line with the existing annotation content\\
+ & \texttt{r} & right align the new line with the existing annotation content\\
+ \#2 & string & the new annotation content\\
+\end{argtable}
+
+\macroname{\textbackslash gre@atletter}{}{gregoriotex-main.tex}
+A Lua\TeX\ catcode table which makes sure that Lua\TeX\ treats `@' corectly.
+
+\macroname{\textbackslash gre@baseunit}{}{gregoriotex-spaces.tex}
+The units attached to base dimension in a string distance. These units are extracted as part of coercing one distance to have the same units as another (\verb=\gre@consistentunits=).
+
+\macroname{\textbackslash gre@stretchunit}{}{gregoriotex-spaces.tex}
+The units attached to stretch dimension in a string distance. These units are extracted as part of coercing one distance to have the same units as another (\verb=\gre@consistentunits=).
+
+\macroname{\textbackslash gre@shrinkunit}{}{gregoriotex-spaces.tex}
+The units attached to shrink dimension in a string distance. These units are extracted as part of coercing one distance to have the same units as another (\verb=\gre@consistentunits=).
+
+\macroname{\textbackslash gre@bug}{\#1}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Macro for raising a bug error when some calculation goes awry and comes up with a non-sensical result. Generally will be found in Lua code, not \TeX\ code.
+
+\macroname{\textbackslash gre@changestyle}{\#1\#2[\#3]}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Workhorse function behind \verb=\grechangestyle=. Necessary because the internals of the definition are slightly different in \LaTeX\ and Plain\TeX.
+
+\macroname{\textbackslash gre@compute@bolshift}{\#1\#2}{gregoriotex-spaces.tex}
+Macro used in \verb=\GreSyllable=. Sets \verb=\gre@skip@bolshift= to the left kern that should appear at the beginning of a line in case of a forced linebreak. The goal of this left kern is to have all lines aligned on notes.
+
+\begin{argtable}
+ \#1 & dimension & \verb=\gre@dimen@begindifference= of the first syllable of the line\\
+ \#2 & 0 & No need to worry about a Lua\TeX\ bug\\
+ & 1 & Apply correction for Lua\TeX\ bug\\
+\end{argtable}
+
+\macroname{\textbackslash gre@compute@eolshift}{\#1}{gregoriotex-spaces.tex}
+Macro used in \verb=\GreSyllable=. Sets \verb=\gre@skip@eolshift= to the left kern that
+should appear before an end of line. The improvement is tiny: when
+text go further than notes in the last syllable of a line, the idea
+is to allow text to go a bit further right, under the custos.
+\verb=\gre@skip@eolshift= should be called at the end of the last syllable of the
+line, just before the linebreak penalty, so that LaTeX believes the
+line is a bit shorter, and expands it more.
+
+\begin{argtable}
+ \#1 & dimension & The \verb=\gre@dimen@enddifference= of the corresponding syllable\\
+\end{argtable}
+
+\macroname{\textbackslash gre@compute@syllablefinalskip}{\#1\#2}{gregoriotex-spaces.tex}
+Macro computing the skip at the end of the syllable.
+
+\begin{argtable}
+ \#1 & 0 & if end of syllable\\
+ & 1 & if end of word\\
+ \#2 & 0 & if next syllable is normal\\
+ & 1 & if it's a bar\\
+\end{argtable}
+
+\macroname{\textbackslash gre@convert}{}{gregoriotex-spaces.tex}
+Macro to hold the original distance which is to be scaled by \verb=\gre@changeonedimenfactor=
+
+\macroname{\textbackslash gre@debug}{}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Macro to hold the list of debug messages which should be designated as printing.
+
+\macroname{\textbackslash gre@debugmsg}{\#1\#2}{gregoriotex-main.tex}
+Macro to print debugging messages.
+
+\begin{argtable}
+ \#1 & string & The category of the message (used in conjunction with \verb=\gre@debug= to determine whether to print the message or not\\
+ \#2 & string & The debug message\\
+\end{argtable}
+
+\macroname{\textbackslash gre@declarefileversion}{\#1\#2}{gregoriotex-main.tex}
+Macro which checks for version consistency between Gregorio\TeX\ files.
+
+\begin{argtable}
+ \#1 & string & name of the current file\\
+ \#2 & string & version of the current file\\
+\end{argtable}
+
+\macroname{\textbackslash gre@def@char@he}{\#1\#2}{gregoriotex-chars.tex}
+Macro for defining the various types of horizontal episema.
+
+\begin{argtable}
+ \#1 & string & name of the horizontal episemus to be defined\\
+ \#2 & string & Camel case name of horizontal episemus to be defined\\
+\end{argtable}
+
+\macroname{\textbackslash gre@def@char@he@porr}{\#1\#2}{gregoriotex-chars.tex}
+Macro for defining the various types of horizontal episema porrectus.
+
+\begin{argtable}
+ \#1 & string & name of the horizontal episemus porrectus to be defined\\
+ \#2 & string & Camel case name of horizontal episemus porrectus to be defined\\
+\end{argtable}
+
+\macroname{\textbackslash gre@char@cavum}{\#1\#2\#3\#4\#5\#6\#7\#8}{gregoriotex-signs.tex}
+Macro to typeset a "cavum" character.
+
+\begin{argtable}
+ \#1 & length & Argument \#2 from \verb=\GreGlyph=. Height to raise the glyph.\\
+ \#2 & length & Argument \#3 from \verb=\GreGlyph=. Height of the next note.\\
+ \#3 & integer & Argument \#4 from \verb=\GreGlyph=. The type of glyph.\\
+ \#4 & \TeX\ code & Macros executed before the punctum cavum is written.\\
+ \#5 & character & Argument \#5 from \verb=\GreGlyph=. The signs to typeset before the glyph.\\
+ \#6 & string & the line, byte offset, and column address for textedit links when point-and-click is enabled.\\
+ \#7 & control sequence & The control sequence for the glyph.\\
+ \#8 & control sequence & The control sequence for the hole glyph.
+\end{argtable}
+
+\macroname{\textbackslash gre@get@spaceskip}{\#1}{gregoriotex-signs.tex}
+Loads \verb=\gre@skip@temp@four= with the appropriate rubber length given the
+desired case.
+
+\begin{argtable}
+ \#1 & 0 & Default space.\\
+ & 1 & Zero-width space.\\
+ & 2 & Space between flat or natural and a note.\\
+ & 3 & Space between two puncta inclinata.\\
+ & 4 & Space between bivirga or trivirga.\\
+ & 5 & space between bistropha or tristropha.\\
+ & 6 & Space after a punctum mora XXX: not used yet, not so sure it is a good idea\ldots\\
+ & 7 & Space between a punctum inclinatum and a punctum inclinatum debilis.\\
+ & 8 & Space between two puncta inclinata debilis.\\
+ & 9 & Space before a punctum (or something else) and a punctum inclinatum.\\
+ & 10 & Space between puncta inclinata (also debilis for now), larger ambitus (range=3rd).\\
+ & 11 & Space between puncta inclinata (also debilis for now), larger ambitus (range=4th or more).\\
+\end{argtable}
+
+\macroname{\textbackslash gre@nabcfontname}{}{gregoriotex-main.tex}
+Macro which stores the name of the currently selected font for \texttt{nabc}.
+
+\macroname{\textbackslash gre@nabcfontsize}{}{gregoriotex-main.tex}
+Macro which stores the size of the currently selected font for \texttt{nabc}.
+
+\macroname{\textbackslash gre@endsyllablepart}{}{gregoriotex-syllable.tex}
+Macro which stores the end part of the current syllable (that which comes after the alignment part).
+
+\macroname{\textbackslash gre@firstsyllablepart}{}{gregoriotex-syllable.tex}
+Macro which stores the first part of the current syllable (that which comes before the alignment part).
+
+\macroname{\textbackslash gre@middlesyllablepart}{}{gregoriotex-syllable.tex}
+Macro which stores the middle part of the current syllable (the part which aligns with the notes).
+
+\macroname{\textbackslash gre@nextendsyllablepart}{}{gregoriotex-syllable.tex}
+Macro which stores the end part of the next syllable (that which comes after the alignment part).
+
+\macroname{\textbackslash gre@nextfirstsyllablepart}{}{gregoriotex-syllable.tex}
+Macro which stores the first part of the next syllable (that which comes before the alignment part).
+
+\macroname{\textbackslash gre@nextmiddlesyllablepart}{}{gregoriotex-syllable.tex}
+Macro which stores the middle part of the next syllable (the part which aligns with the notes).
+
+\macroname{\textbackslash gre@fixedtextformat}{\#1}{gregoriotex-syllable.tex}
+A macro which applies formatting that needs to apply to the whole syllable (rather than the parts individually) for the current syllable. Necessary to preserve ligatures across parts within a syllable.
+
+\begin{argtable}
+ \#1 & string & The syllable (usually built as \verb=\gre@firstsyllablepart\gre@middlesyllablepart\gre@endsyllablepart=\\
+\end{argtable}
+
+\macroname{\textbackslash gre@fixednexttextformat}{\#1}{gregoriotex-syllable.tex}
+A macro which applies formatting that needs to apply to the whole syllable (rather than the parts individually) for the next syllable. Necessary to preserve ligatures across parts within a syllable.
+
+\begin{argtable}
+ \#1 & string & The syllable (usually built as \verb=\gre@nextfirstsyllablepart\gre@nextmiddlesyllablepart\gre@nextendsyllablepart=\\
+\end{argtable}
+
+\macroname{\textbackslash gre@gabcname}{}{gregoriotex-main.tex}
+Macro which holds the point-and-click file name.
+
+\macroname{\textbackslash gre@gregoriotexluaversion}{}{gregoriotex-main.tex}
+Macro to hold the version number of \emph{gregoriotex.lua} so that it can be checked for consistency.
+
+\macroname{\textbackslash gre@gregorioversion}{}{gregoriotex-main.tex}
+Macro to hold the version number of Gregorio\TeX\ so that it can be checked for consistency.
+
+\macroname{\textbackslash gre@leftfill}{}{gregoriotex-main.tex}
+Macro set to \verb=\hfil= or \verb=\relax= depending on alignment choices.
+
+\macroname{\textbackslash gre@rightfill}{}{gregoriotex-main.tex}
+Macro set to \verb=\hfil= or \verb=\relax= depending on alignment choices.
+
+\macroname{\textbackslash gre@mark@abovelinestext}{}{gregoriotex-main.tex}
+Macro to set the point-and-click position for above lines text.
+
+\macroname{\textbackslash gre@mark@translation}{}{gregoriotex-main.tex}
+Macro to set the point-and-click position for translations.
+
+\macroname{\textbackslash gre@pitch@[a-p]}{}{gregoriotex-main.tex}
+Macros which map gabc pitch letters (the final part of the macro name) to the numerical value that Gregorio\TeX\ uses in processing note placement.
+
+\macroname{\textbackslash gre@pitch@adjust@top}{}{gregoriotex-main.tex}
+If any note appears above this pitch, the space above the lines must be adjusted to account for it.
+
+\macroname{\textbackslash gre@pitch@adjust@bottom}{}{gregoriotex-main.tex}
+If any note appears below this pitch, the space below the lines must be adjusted to account for it.
+
+\macroname{\textbackslash gre@pointandclick}{\#1\#2}{gregoriotex-main.tex}
+Macro to generate the point-and-click links.
+
+\begin{argtable}
+ \#1 & \TeX\ code & the entity which is to contain the link\\
+ \#2 & link target & line:char:column for the link\\
+\end{argtable}
+
+\macroname{\textbackslash gre@prefix}{}{gregoriotex-spaces.tex}
+Either ``skip'' or ``dimen'' according to the distance being set or changed at the given moment.
+
+\macroname{\textbackslash gre@rubberpermit}{\#1}{gregoriotex-spaces.tex}
+Determines whether the given distance is allowed to take a rubber length.
+
+\begin{argtable}
+ \#1 & string & the name of the distance to check\\
+\end{argtable}
+
+\macroname{\textbackslash gre@setgregoriofont}{[\#1]\#2}{gregoriotex-main.tex}
+Workhorse function behind \verb=\gresetgregoriofont=.
+
+\begin{argtable}
+ \#1 & \textit{(omitted)} & Use the normal font and rule set (default).\\
+ & op & Use the alternate Dominican font/rule set.\\
+ \#2 & greciliae & Use the Greciliae font (default).\\
+ & gregorio & Use the Gregorio font.\\
+ & parmesan & Use the Parmesan font.\\
+\end{argtable}
+
+\macroname{\textbackslash gre@syllable@end}{\#1\#2\#3}{gregoriotex-syllable.tex}
+Macro to make a few checks and call the right macros between \verb=\endbeforebar, \endofword, \endofsyllable=.
+
+\begin{argtable}
+ \#1 & & next syllable type (\#7 of \verb=\GreSyllable=)\\
+ \#2 & string & next syllable text\\
+ \#3 & 0 & this syllable is not the end of a word\\
+ & 1 & this syllable is the end of a word\\
+\end{argtable}
+
+\macroname{\textbackslash gre@typeout}{\#1}{gregoriotex.sty \textup{and} gregoriotex.tex}
+Macro which points to \verb=\typeout= in \LaTeX\ or \verb=\message= in Plain\TeX.
+
+\macroname{\textbackslash gre@unsetfixedtextformat}{}{gregoriotex-syllable.tex}
+Macro which changes \verb=\gre@fixedtextformat= back to normal text.
+
+\macroname{\textbackslash gre@unsetfixednexttextformat}{}{gregoriotex-syllable.tex}
+Macro which changes \verb=\gre@fixednexttextformat= back to normal text.
+
+\macroname{\textbackslash gregoriotex@symbols@loaded}{}{gregoriotex-symbols.tex}
+Empty macro which is used to determine if the symbols have been loaded and prevent loading them again if they have.
+
+\macroname{\textbackslash gre@hskip}{}{gregoriotex-signs.tex}
+Alias for \verb=\hskip= or \verb=\kern=. We use this rather than those functions directly so that the same element can appear in discretionaries where \verb=\kern= is allowed but \verb=\hskip= is not by simply changing the assignment of this macro when we enter one.
+
+\macroname{\textbackslash gre@localleftbox}{}{gregoriotex-main.tex}
+Alias for \verb=\luatexlocalleftbox=.
+
+\macroname{\textbackslash gre@localrightbox}{}{gregoriotex-main.tex}
+Alias for \verb=\luatexlocalrightbox=.
+
+\macroname{\textbackslash gre@resizebox}{}{gregoriotex-main.tex}
+Alias for \verb=\resizebox=.
+
+\subsection{Auxiliary File}
+Gregorio\TeX\ creates its own auxiliary file (extension \texttt{gaux}) which it uses to store information between successive typesetting runs. This allows for such features as the dynamic interline spacing. The following functions are used to interact with that auxiliary file.
+
+\macroname{\textbackslash gre@gaux}{}{gregoriotex-main.tex}
+The handle for the auxiliary file.
+
+\macroname{\textbackslash gre@open@gaux}{}{gregoriotex-main.tex}
+Macro for opening the auxiliary file.
+
+\macroname{\textbackslash gre@close@gaux}{}{gregoriotex-main.tex}
+Macro for closing the auxiliary file.
+
+\macroname{\textbackslash gre@write@gaux}{\#1}{gregoriotex-main.tex}
+Macro for writing the auxiliary file.
+
+\begin{argtable}
+ \#1 & string & contents to be written to the auxiliary file\\
+\end{argtable}
+
+
+\subsection{Fonts}
+Gregorio\TeX\ loads a number of fonts which are referred to by the following macros.
+
+\macroname{\textbackslash gre@font@music}{}{gregoriotex-main.tex}
+The font for the neumes.
+
+\macroname{\textbackslash gre@font@style}{}{gregoriotex-main.tex}
+The font for some of the extra characters, such as the bar for barred letters.
+
+\macroname{\textbackslash gre@font@nabc}{}{gregoriotex-nabc.tex}
+The font for ancient notation.
+
+\macroname{\textbackslash gre@font@biginitial}{}{gregoriotex.tex}
+The font for the default big initial format in Plain\TeX.
+
+\macroname{\textbackslash gre@font@initial}{}{gregoriotex.tex}
+The font for the default initial format in Plain\TeX.
+
+
+\subsection{Character Reference Aliases}
+To make referencing and changing them easier, Gregorio\TeX\ stores reference information for certain characters using the following macros.
+
+\macroname{\textbackslash gre@fontchar@abovebarbrace}{}{gregoriotex-chars.tex}
+The above bar brace.
+
+\macroname{\textbackslash gre@fontchar@flat}{}{gregoriotex-chars.tex}
+The flat character.
+
+\macroname{\textbackslash gre@fontchar@flathole}{}{gregoriotex-chars.tex}
+The flat hole character (\ie, the character needed to prevent lines from showing through the center of the flat).
+
+\macroname{\textbackslash gre@fontchar@natural}{}{gregoriotex-chars.tex}
+The natural character.
+
+\macroname{\textbackslash gre@fontchar@naturalhole}{}{gregoriotex-chars.tex}
+The natural hole character (\ie, the character needed to prevent lines from showing through the center of the natural).
+
+\macroname{\textbackslash gre@fontchar@sharp}{}{gregoriotex-chars.tex}
+The sharp character.
+
+\macroname{\textbackslash gre@fontchar@sharphole}{}{gregoriotex-chars.tex}
+The sharp hole character (\ie, the character needed to prevent lines from showing through the center of the sharp).
+
+\macroname{\textbackslash gre@fontchar@punctumcavum}{}{gregoriotex-signs.tex}
+The punctum cavum character.
+
+\macroname{\textbackslash gre@fontchar@punctumcavumhole}{}{gregoriotex-signs.tex}
+The punctum cavum hole character (\ie, the character needed to prevent lines from showing through the center of the punctum cavum).
+
+\macroname{\textbackslash gre@fontchar@lineapunctumcavum}{}{gregoriotex-signs.tex}
+The linea punctum cavum character.
+
+\macroname{\textbackslash gre@fontchar@lineapunctumcavumhole}{}{gregoriotex-signs.tex}
+The linea punctum cavum hole character (\ie, the character needed to prevent lines from showing through the center of the linea punctum cavum).
+
+\macroname{\textbackslash gre@fontchar@incclef}{}{gregoriotex-chars.tex}
+The \texttt{c}-clef which appears in the middle of a line.
+
+\macroname{\textbackslash gre@fontchar@infclef}{}{gregoriotex-chars.tex}
+The \texttt{f}-clef which appears in the middle of a line.
+
+\macroname{\textbackslash gre@fontchar@cclef}{}{gregoriotex-chars.tex}
+The \texttt{c}-clef which appears at the beginning of a line.
+
+\macroname{\textbackslash gre@fontchar@fclef}{}{gregoriotex-chars.tex}
+The \texttt{f}-clef which appears at the beginning of a line.
+
+\macroname{\textbackslash gre@fontchar@punctum}{}{gregoriotex-chars.tex}
+The punctum character.
+
+\macroname{\textbackslash gre@fontchar@punctummora}{}{gregoriotex-chars.tex}
+The punctum mora character.
+
+\macroname{\textbackslash gre@fontchar@underbrace}{}{gregoriotex-signs.tex}
+The under brace character.
+
+\macroname{\textbackslash gre@fontchar@verticalepisemus}{}{gregoriotex-chars.tex}
+The vertical episemus character.
+
+\macroname{\textbackslash gre@fontchar@brace}{}{gregoriotex-signs.tex}
+The (rounded) brace character.
+
+\macroname{\textbackslash gre@fontchar@curlybrace}{}{gregoriotex-signs.tex}
+The curly brace character.
+
+\macroname{\textbackslash gre@fontchar@custosbottomlong}{}{gregoriotex-chars.tex}
+The custos character with a long upwards directed vigra.
+
+\macroname{\textbackslash gre@fontchar@custosbottommiddle}{}{gregoriotex-chars.tex}
+The custos character with a middle upwards directed vigra.
+
+\macroname{\textbackslash gre@fontchar@custosbottomshort}{}{gregoriotex-chars.tex}
+The custos character with a short upwards directed vigra.
+
+\macroname{\textbackslash gre@fontchar@custostoplong}{}{gregoriotex-chars.tex}
+The custos character with a long downwards directed vigra.
+
+\macroname{\textbackslash gre@fontchar@custostopmiddle}{}{gregoriotex-chars.tex}
+The custos character with a middle downwards directed vigra.
+
+\macroname{\textbackslash gre@fontchar@custostopshort}{}{gregoriotex-chars.tex}
+The custos character with a short downwards directed vigra.
+
+\macroname{\textbackslash gre@fontchar@divisiofinalis}{}{gregoriotex-signs.tex}
+The divisio finalis.
+
+\macroname{\textbackslash gre@fontchar@divisiomaior}{}{gregoriotex-signs.tex}
+The divisio maior.
+
+\macroname{\textbackslash gre@char@normalhyphen}{}{gregoriotex-main.tex}
+A normal hyphen in the text font.
+
+\macroname{\textbackslash gre@char@fuse@debilis}{}{gregoriotex-chars.tex}
+A fused character consisting of a leading punctum initio debilis (of ambitus one) and a regular punctum.
+
+\macroname{\textbackslash gre@char@fuse@oriscus@one}{}{gregoriotex-chars.tex}
+A fused character consisting of a leading oriscus (of ambitus one) and a regular punctum.
+
+\macroname{\textbackslash gre@char@fuse@oriscus@two}{}{gregoriotex-chars.tex}
+A fused character consisting of a leading oriscus (of ambitus two) and a regular punctum.
+
+\macroname{\textbackslash gre@char@fuse@punctum@one}{}{gregoriotex-chars.tex}
+A fused character consisting of a leading punctum (of ambitus one) and a regular punctum.
+
+\macroname{\textbackslash gre@char@fuse@punctum@two}{}{gregoriotex-chars.tex}
+A fused character consisting of a leading punctum (of ambitus two) and a regular punctum.
+
+\macroname{\textbackslash gre@char@fuse@quilisma@one}{}{gregoriotex-chars.tex}
+A fused character consisting of a leading quilisma (of ambitus one) and a regular punctum.
+
+\macroname{\textbackslash gre@char@fuse@quilisma@two}{}{gregoriotex-chars.tex}
+A fused character consisting of a leading quilisma (of ambitus two) and a regular punctum.
+
+\macroname{\textbackslash gre@char@he@...}{\#1}{gregoriotex-chars.tex}
+A class of macros for the horizontal episema which populates the \verb=\gre@box@hep= box.
+
+
+
+\subsection{Flags}
+
+Flags are either boolean (defined with \verb=\newif=), Lua\TeX\ attributes, or counts (defined with \verb=\newcount=). They store settings and/or the current state of something so that Gregorio\TeX\ can typeset things in the desired manner.
+
+All distances in \nameref{distances} have a flag associated with them, of the form \verb=\gre@scale@*=. This flag
+indicates if the distance should scale when the staff size changes (1)
+or not (0).
+
+\macroname{\textbackslash ifgre@checklength}{}{gregoriotex-spaces.tex}
+Boolean used in \verb=\gresetdim= to indicate if we are attempting to set a rubber length.
+
+\macroname{\textbackslash ifgre@rubber}{}{gregoriotex-spaces.tex}
+Boolean used in \verb=\gre@changeonedimenfactor= to indicate if we are dealing with one of the distances which can accept a rubber length.
+
+\macroname{\textbackslash ifgre@stretch}{}{gregoriotex-spaces.tex}
+Boolean used in \verb=\gre@changeonedimenfactor= as we test for the presence of a stretch.
+
+\macroname{\textbackslash ifgre@shrink}{}{gregoriotex-spaces.tex}
+Boolean used in \verb=\gre@changeonedimenfactor= as we test for the presence of a shrink.
+
+\macroname{\textbackslash ifgre@vowelcentering}{}{gregoriotex-syllable.tex}
+Boolean used to specify whether the center of the vowel or the center of the syllable is used to align the lyrics with their neumes.
+
+\macroname{\textbackslash ifgre@translationcentering}{}{gregoriotex-main.tex}
+Boolean used to specify whether the translation text should be centered below its respective syllable.
+
+\macroname{\textbackslash ifgre@showlines}{}{gregoriotex-main.tex}
+Boolean used to specify whether the staff lines should be shown or not.
+
+\macroname{\textbackslash ifgre@hidepclines}{}{gregoriotex-signs.tex}
+Boolean used to specify whether the staff lines behind a punctum cavum should be hidden.
+
+\macroname{\textbackslash ifgre@hidealtlines}{}{gregoriotex-signs.tex}
+Boolean used to specify whether the staff lines behind an alteration should be hidden.
+
+\macroname{\textbackslash ifgre@hepisemusbridge}{}{gregoriotex-signs.tex}
+Boolean used to specify whether adjacent horizontal episema should be joined together.
+
+\macroname{\textbackslash ifgre@drawbraces}{}{gregoriotex-signs.tex}
+Boolean used to specify whether braces should be drawn by \MP{} as
+opposed to rendered via the score font.
+
+\macroname{\textbackslash gre@biginitial}{}{gregoriotex-main.tex}
+Count to track whether the initial is big (2-lines) or normal (1-line).
+
+\macroname{\textbackslash ifgre@boxing}{}{gregoriotex-syllable.tex}
+Boolean to track whether we're placing the contents of syllable notes into their box or actually printing that box (helps prevent spurious spaces from occurring when the box is being filled but not printed).
+
+\macroname{\textbackslash ifgre@mustdotranslationcenterend}{}{gregoriotex-main.tex}
+Boolean to track whether we must do translation centering.
+
+\macroname{\textbackslash ifgre@endofscore}{}{gregoriotex-syllable.tex}
+Boolean to mark the last syllable of the score.
+
+\macroname{\textbackslash ifgre@firstglyph}{}{gregoriotex-syllable.tex}
+Boolean that tells us if the current glyph is the first glyph or not.
+
+\macroname{\textbackslash gre@attr@dash}{}{gregoriotex-main.tex}
+A Lua\TeX\ attribute which indicates whether a syllable takes a dash if it ends a line.
+
+\macroname{\textbackslash gre@attr@center}{}{gregoriotex-main.tex}
+A Lua\TeX\ attribute which indicates the type of translation centering.
+
+\macroname{\textbackslash gre@attr@glyph@id}{}{gregoriotex-main.tex}
+A Lua\TeX\ attribute which identifies the glyph we are at. Used for dynamic line spacing.
+
+\macroname{\textbackslash gre@attr@glyph@top}{}{gregoriotex-main.tex}
+A Lua\TeX\ attribute which identifies the high point of the glyph. Used for dynamic line spacing.
+
+\macroname{\textbackslash gre@attr@glyph@bottom}{}{gregoriotex-main.tex}
+A Lua\TeX\ attribute which identifies the low point of the glyph. Used for dynamic line spacing.
+
+\macroname{\textbackslash gre@clivisalignment}{}{gregoriotex-syllable.tex}
+Count to indicate how the clivis is to be aligned with its respective syllable text. Values: 0) always align clivis on its center; 1) align clivis on first punctum; 2) align clivis on its center, except if notes would go left of text or consonants after vowels are larger than \verb=\gre@dimen@clivisalignmentmin=.
+
+\macroname{\textbackslash gre@insidediscretionary}{}{gregoriotex-signs.tex}
+Macro which indicates whether we are currently inside a discretionary (1) or not (0). Cannot be converted to a \TeX\ boolean because it's value needs to be passed to Lua.
+
+\macroname{\textbackslash ifgre@isonaline}{}{gregoriotex-syllable.tex}
+Boolean which indicates whether the current note is on a line or not (used to adjust the height of some symbols so they won't print on a line).
+
+\macroname{\textbackslash ifgre@lastispunctum}{}{gregoriotex-syllable.tex}
+Boolean which indicates if the most recent note was a punctum mora.
+
+\macroname{\textbackslash ifgre@lastispunctumsave}{}{gregoriotex-signs.tex}
+Boolean for storing \verb=\ifgre@lastispunctum= so that it can be restored later.
+
+\macroname{\textbackslash gre@nlbstate}{}{gregoriotex-main.tex}
+Macro which indicates if we are in a no line break area due to translation centering (1), an explicit no line break designation in the gabc (2), or not at all (0).
+
+\macroname{\textbackslash gre@nlbinitialstate}{}{gregoriotex-main.tex}
+Macro to store \verb=\gre@nlbstate= as we initialize or end a no line break area so that we can manipulate said flag as part of the process.
+
+\macroname{\textbackslash ifgre@usestylefont}{}{gregoriotex-main.tex}
+Boolean which specifies whether the style font should be loaded or not.
+
+\macroname{\textbackslash ifgre@keeprightbox}{}{gregoriotex-signs.tex}
+Boolean which specifies if we have to keep the localrightbox until the end.
+
+\macroname{\textbackslash gre@compilegabc}{}{gregoriotex-main.tex}
+Macro which specifies the default compilation behavior: never compile (0), auto compile (1), or always compile (2).
+
+\macroname{\textbackslash ifgre@nabcfontloaded}{}{gregoriotex-nabc.tex}
+Boolean which indicates whether the \texttt{nabc} font has been loaded.
+
+\macroname{\textbackslash gre@generate@pointandclick}{}{gregoriotex-syllable.tex}
+Count which indicates whether the point-and-click functionality should be implemented (1) or not (0). Not a boolean because it needs to be readable by Lua.
+
+\macroname{\textbackslash gre@variableheightexpansion}{}{gregoriotex-main.tex}
+Count to indicated if the spacing between lines should be variable (1) or fixed (0). Not a boolean because it needs to be readable by Lua.
+
+\macroname{\textbackslash ifgre@blockeolcustos}{}{gregoriotex-main.tex}
+Boolean which indicates whether the custos at the end of the line should be blocked.
+
+\macroname{\textbackslash ifgre@breakintranslation}{}{gregoriotex-main.tex}
+Boolean which indicates if line breaks are allowed inside a translation.
+
+\macroname{\textbackslash ifgre@bolshiftsenabled}{}{gregoriotex-main.tex}
+Boolean which indicates if the left shift for the first syllables of lines is enabled.
+
+\macroname{\textbackslash ifgre@eolshiftsenabled}{}{gregoriotex-main.tex}
+Boolean which indicates if the left shift for the last syllables of lines is enabled.
+
+\macroname{\textbackslash ifgre@euouae@implies@nlba}{}{gregoriotex-main.tex}
+Boolean which indicates if line breaks are prohibited in an \texttt{euouae} area.
+
+\macroname{\textbackslash ifgre@in@euouae}{}{gregoriotex-main.tex}
+Boolean which indicates that we are in an \texttt{euouae} area.
+
+\macroname{\textbackslash ifgre@justifylastline}{}{gregoriotex-main.tex}
+Boolean which indicates that the last line of the score should be justified.
+
+\macroname{\textbackslash ifgre@showclef}{}{gregoriotex-main.tex}
+Boolean which indicates that the clef should be visible.
+
+
+
+
+\subsection{Boxes}
+
+Boxes are used to store elements of the score before they are printed for the purposes of reusing them and/or measuring them in order to determine their appropriate placement.
+
+\macroname{\textbackslash gre@box@hep}{}{gregoriotex-chars.tex}
+Box for horizontal episemi.
+
+\macroname{\textbackslash gre@box@temp@width}{}{gregoriotex-main.tex}
+Box for holding an element in order to determine its width.
+
+\macroname{\textbackslash gre@box@initial}{}{gregoriotex-main.tex}
+Box which holds the initial of the score.
+
+\macroname{\textbackslash gre@box@annotation}{}{gregoriotex-main.tex}
+Box holding the annotation which goes above the initial.
+
+\macroname{\textbackslash gre@box@annotation@add}{}{gregoriotex-main.tex}
+Box used for the new line to be added to the annotation.
+
+\macroname{\textbackslash gre@box@annotation@old}{}{gregoriotex-main.tex}
+Box used for the existing lines in the annotation when a new line is being added.
+
+\macroname{\textbackslash gre@box@lines}{}{gregoriotex-main.tex}
+Box holding the staff lines.
+
+\macroname{\textbackslash gre@box@temp@sign}{}{gregoriotex-signs.tex}
+Box to hold a sign so we can measure it for placement.
+
+\macroname{\textbackslash gre@box@syllablenotes}{}{gregoriotex-syllable.tex}
+Box holding the notes associated with a syllable.
+
+\macroname{\textbackslash gre@box@syllabletext}{}{gregoriotex-syllable.tex}
+Box holding the text associated with a syllable.
+
+\macroname{\textbackslash gre@box@hep}{}{gregoriotex-chars.tex}
+Box holding the horizontal episemus.
+
+
+\subsection{Distances}
+All of the distances listed in \nameref{distances} have an internal
+associated with them, of the form of \verb=\gre@*@*=, which stores the value of the distance (in
+string representation). The first wildcard is either \texttt{skip} or \texttt{dimen} according to the distance type, while the second is the name of the distance.
+
+These additional distances are calculated by Gregorio based on the values for the user customizable distances and what may be going on in the score at the time of their use.
+
+\macroname{\textbackslash gre@dimen@clefwidth}{}{gregoriotex-spaces.tex}
+Width of the clef.
+
+\macroname{\textbackslash gre@dimen@constantglyphraise}{}{gregoriotex-spaces.tex}
+Dimension representing the space between the 0 of the gregorian fonts and the effective 0 of the TeX score.
+
+\macroname{\textbackslash gre@dimen@currenttranslationheight}{}{gregoriotex-spaces.tex}
+Dimension representing the space for the translation beneath the text.
+
+\macroname{\textbackslash gre@dimen@stafflinewidth}{}{gregoriotex-spaces.tex}
+Dimension representing the width of a line of staff. Can vary, for
+example, at the first line.
+
+\macroname{\textbackslash gre@dimen@linewidth}{}{gregoriotex-spaces.tex}
+Dimension representing the width of the score (including initial).
+
+\macroname{\textbackslash gre@dimen@additionalbottomspace}{}{gregoriotex-spaces.tex}
+Dimension representing extra space below the staff needed for low notes.
+
+\macroname{\textbackslash gre@dimen@additionaltopspace}{}{gregoriotex-spaces.tex}
+Dimension representing extra space above the staff needed for high notes.
+
+\macroname{\textbackslash gre@dimen@textlower}{}{gregoriotex-spaces.tex}
+Dimension representing the height of the separation between the 0th
+line (which is invisible except for notes in the a or b position) and
+the bottom of the text.
+
+\macroname{\textbackslash gre@dimen@textaligncenter}{}{gregoriotex-spaces.tex}
+Dimension representing the width from the beginning of the letters in
+a syllable to the middle of the middle letters. Used for lining up
+neumes and syllables.
+
+\macroname{\textbackslash gre@dimen@additionalleftspace}{}{gregoriotex-spaces.tex}
+Dimension representing the additional space that has to be added to
+the localleftbox for a big initial (one taking two lines).
+
+\macroname{\textbackslash gre@dimen@initialwidth}{}{gregoriotex-spaces.tex}
+Dimension representing the width of the initial (and the space after).
+
+\macroname{\textbackslash gre@dimen@currentabovelinestextheight}{}{gregoriotex-spaces.tex}
+Dimension representing the space allocated above the lines for text.
+
+\macroname{\textbackslash gre@dimen@staffheight}{}{gregoriotex-spaces.tex}
+The total height of the staff including the width of the lines and the spaces between them.
+
+\macroname{\textbackslash gre@dimen@stafflinediff}{}{gregoriotex-spaces.tex}
+Distance representing the difference between the actual size of the staff lines and the ``standard'' size.
+
+\macroname{\textbackslash gre@dimen@stafflineheight}{}{gregoriotex-spaces.tex}
+The height of the staff line.
+
+\macroname{\textbackslash gre@dimen@interstafflinespace}{}{gregoriotex-spaces.tex}
+The space between the lines.
+
+\macroname{\textbackslash gre@dimen@glyphraisevalue}{}{gregoriotex-spaces.tex}
+The value that a particular glyph must be raised to be set in the correct position.
+
+\macroname{\textbackslash gre@dimen@addedraisevalue}{}{gregoriotex-spaces.tex}
+The additional raise needed for the vertical episema and the puncta.
+
+\macroname{\textbackslash gre@dimen@enddifference}{}{gregoriotex-spaces.tex}
+Distance from the end of the notes to the end of the text for the previous syllable. Positive values when notes go further than text, negative in the other case.
+
+\macroname{\textbackslash gre@dimen@previousenddifference}{}{gregoriotex-spaces.tex}
+Stored value of enddifference prior to the current one.
+
+\macroname{\textbackslash gre@skip@nextbegindifference}{}{gregoriotex-spaces.tex}
+The difference between the start of the notes and the start of the text for the next syllable. Positive when when text begins first, negative in other case.
+
+\macroname{\textbackslash gre@dimen@begindifference}{}{gregoriotex-spaces.tex}
+The difference between the start of the notes and the start of the text for the current syllable. Positive when when text begins first, negative in other case.
+
+\macroname{\textbackslash gre@dimen@lastglyphwidth}{}{gregoriotex-spaces.tex}
+The width of the last glyph.
+
+\macroname{\textbackslash gre@dimen@notesaligncenter}{}{gregoriotex-spaces.tex}
+Distance from beginning of notes to their point of alignment.
+
+\macroname{\textbackslash gre@dimen@temp@**}{}{gregoriotex-spaces.tex}
+Temporary dimensions used in calculations. There are currently five of these.
+
+\macroname{\textbackslash gre@skip@temp@**}{}{gregoriotex-spaces.tex}
+Temporary skips used in calculations. There are currently four of these.
+
+\macroname{\textbackslash gre@unit}{}{gregoriotex-spaces.tex}
+Temporary dimension used by \verb=\gre@convertto=.
+
+\macroname{\textbackslash gre@base}{}{gregoriotex-spaces.tex}
+Temporary dimension used by \verb=\gre@convertto=.
+
+\macroname{\textbackslash gre@maxlen}{}{gregoriotex-spaces.tex}
+Distance holding the maximum legal length in TeX.
+
+\macroname{\textbackslash gre@dimen@savedglyphraise}{}{gregoriotex-signs.tex}
+Macro to hold the value of the glyph raise so that it can be restored after some calculations which may change it are performed.
+
+\macroname{\textbackslash gre@skip@eolshift}{}{gregoriotex-spaces.tex}
+The left kern that should appear before an end of line.
+
+\macroname{\textbackslash gre@dimen@bolshift}{}{gregoriotex-spaces.tex}
+The left kern that should appear at the beginning of line in case of a forced line break.
+
+\macroname{\textbackslash gre@dimen@annotationtrueraise}{}{gregoriotex-spaces.tex}
+The distance from the baseline of the initial to the baseline of the annotation.
+
+\macroname{\textbackslash gre@minTextDistance}{}{gregoriotex-spaces.tex}
+Minimum distance between text (meaningful alias for \verb=\gre@skip@temp@one= inside \verb=\gre@compute@syllablefinalskip=).
+
+\macroname{\textbackslash gre@minNotesDistance}{}{gregoriotex-spaces.tex}
+Minimum distance between notes (meaningful alias for \verb=\gre@skip@temp@two= inside \verb=\gre@compute@syllablefinalskip=).
+
+\macroname{\textbackslash gre@curTextDistance}{}{gregoriotex-spaces.tex}
+Current distance between text (meaningful alias for \verb=\gre@dimen@temp@three= inside \verb=\gre@compute@syllablefinalskip=).
+
+\macroname{\textbackslash gre@curNotesDistance}{}{gregoriotex-spaces.tex}
+Current distance between notes (meaningful alias for \verb=\gre@dimen@temp@four= inside \verb=\gre@compute@syllablefinalskip=).
+
+\macroname{\textbackslash gre@minShiftText}{}{gregoriotex-spaces.tex}
+Minimum shift required for the text (meaningful alias for \verb=\gre@skip@temp@three= inside \verb=\gre@compute@syllablefinalskip=).
+
+\macroname{\textbackslash gre@minShiftNotes}{}{gregoriotex-spaces.tex}
+Minimum shift required for the notes (meaningful alias for \verb=\gre@skip@temp@four= inside \verb=\gre@compute@syllablefinalskip=).
+
+\macroname{\textbackslash gre@save@parfillskip}{}{gregoriotex-main.tex}
+Macro to store \verb=\parfillskip= value so that we can restore it at the end of the score (needed to force the last line of a score to be justified).
+
+\macroname{\textbackslash gre@scaledist}{}{gregoriotex-spaces.tex}
+Working alias for \verb=\gre@skip@temp@one= or \verb=\gre@dimen@temp@one=, as appropriate, used when rescaling a distance due to a change in \verb=\gre@factor=.
+
+\macroname{\textbackslash gre@skip@syllablefinalskip}{}{gregoriotex-spaces.tex}
+The final distance to skip at the end of a syllable.
+
+
+\subsection{Penalties}
+These are the macros that Gregorio\TeX\ uses to manipulate the penalties in order to control line and page breaks within a score without affect the surrounding text.
+
+\macroname{\textbackslash gre@penalty}{\#1}{gregoriotex-signs.tex}
+Top level function that aliases \verb=\gre@truepenalty= or \verb=\gre@falsepenalty= according to whether penalties should be in play or not.
+
+\begin{argtable}
+ \#1 & integer & The penalty to be applied or gobbled\\
+\end{argtable}
+
+\macroname{\textbackslash gre@truepenalty}{\#1}{gregoriotex-signs.tex}
+Alias for \verb=\penalty=.
+
+\begin{argtable}
+ \#1 & integer & The penalty to be applied\\
+\end{argtable}
+
+\macroname{\textbackslash gre@falsepenalty}{\#1}{gregoriotex-signs.tex}
+Macro to gobble (suppress) its argument.
+
+\begin{argtable}
+ \#1 & integer & The penalty to be gobbled\\
+\end{argtable}
+
+\macroname{\textbackslash gre@cancelpenalties}{}{gregoriotex-spaces.tex}
+Macro called at the beginning of the score to swap text penalties for score penalties.
+
+\macroname{\textbackslash gre@restorepenalties}{}{gregoriotex-spaces.tex}
+Macro called at the end of the score to restore the text penalties.
+
+\macroname{\textbackslash gre@dofinetuning}{}{gregoriotex-spaces.tex}
+Macro called at the beginning of the score to swap text penalties for score penalties.
+
+\macroname{\textbackslash gre@endfinetuning}{}{gregoriotex-spaces.tex}
+Macro called at the end of the score to restore the text penalties.
+
+\macroname{\textbackslash gre@brokenpenaltysave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the broken penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@clubpenaltysave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the club penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@widowpenaltysave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the widow penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@emergencystretchsave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the emergency stretch so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@endafterbarpenaltysave}{}{gregoriotex-main.tex}
+A place to save the current value of the end after bar penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@endafterbaraltpenaltysave}{}{gregoriotex-main.tex}
+A place to save the current value of the alternate end after bar penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@endofelementpenaltysave}{}{gregoriotex-main.tex}
+A place to save the current value of the end of element penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@endofsyllablepenaltysave}{}{gregoriotex-main.tex}
+A place to save the current value of the end of syllable penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@endofwordpenaltysave}{}{gregoriotex-main.tex}
+A place to save the current value of the end of word penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@exhyphenpenaltysave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the ex hyphen penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@hyphenpenaltysave}{}{gregoriotex-main.tex \textup{and} gregoriotex-spaces.tex}
+A place to save the current value of the hyphen penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@nobreakpenaltysave}{}{gregoriotex-main.tex}
+A place to save the current value of the no break penalty so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@doublehyphendemeritssave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the double hyphen demerits so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@finalhyphendemeritssave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the final hyphen demerits so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@loosenesssave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the looseness so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@tolerancesave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the tolerance so that we can change it temporarily and then restore it later.
+
+\macroname{\textbackslash gre@pretolerancesave}{}{gregoriotex-spaces.tex}
+A place to save the current value of the pretolerance so that we can change it temporarily and then restore it later.
+
+
+
+\subsection{\LaTeX/Plain\TeX\ compatibility}
+While every effort has been made to use only primitives which are compatible with both \LaTeX\ and Plain\TeX, it is sometimes necessary to use primitives which are defined for one but not the other (usually its \LaTeX\ that has what we need built in). In these cases we have to provide an equivalent macro to the \TeX\ version which is lacking.
+
+\macroname{\textbackslash MessageBreak}{}{gregoriotex.tex}
+Creates a line break in typeout, warning, bug, and error messages. Copied from \LaTeX\ source.
+
+\macroname{\textbackslash protect}{}{gregoriotex.tex}
+Prints the name of the macro, rather than its contents in typeout, warning, bug, and error messages. Copied from \LaTeX\ source.
+
+\macroname{\textbackslash f@size}{}{gregoriotex.tex}
+Macro which stores the current font size.
+
+
+\section{Special arguments}
+
+These arguments are used by multiple functions and take a lot of space
+to describe so we describe them once here and refer to this section
+rather than have multiple definitions.
+
+\subsection{Note Alignment Type}\label{notesalign}
+\rowcolors{1}{lightgray}{lightgray}
+\begin{tabular}{cp{10.5cm plus .5cm}}
+ \multicolumn{2}{c}{Integer with the following possibilities:} \\
+ \hline
+ 0 & one-note glyph or more than two notes glyph except porrectus : here we must put the aligncenter in the middle of the first note\\
+ 1 & two notes glyph (podatus is considered as a one-note glyph) : here we put the aligncenter in the middle of the glyph\\
+ 2 & porrectus : has a special align center\\
+ 3 & initio-debilis : same as 1 but the first note is much smaller\\
+ 4 & case of a glyph starting with a quilisma\\
+ 5 & case of a glyph starting with an oriscus\\
+ 6 & case of a punctum inclinatum\\
+ 7 & case of a stropha\\
+ 8 & flexus with an ambitus of one\\
+ 9 & flexus deminutus\\
+ 10 & virgula\\
+ 11 & divisio minima, minor and maior\\
+ 12 & divisio finalis
+ \end{tabular}
+
+\subsection{Episemus Special}\label{EpisemusSpecial}
+\definecolor{shadecolor}{named}{lightgray}%
+\begin{shaded*}%
+\vspace{-1.4\baselineskip}
+\begin{center}String with the following possibilities:\end{center}
+\vspace{-0.8\baselineskip}
+\hrule
+\vspace{-0.8\baselineskip}
+\begin{description}
+ \item[FinalPunctum] Last note, which is a standard punctum (works with pes).
+ \item[FinalDeminutus] Same, but the last note is a deminutus.
+ \item[PenultBeforePunctumWide] The note before the last note, which is a standard punctum.
+ \item[PenultBeforeDeminutus] Idem, but the note is the note preceding a deminutus.
+ \item[AntepenultBeforePunctum] The note before the note before the last note (for porrectus flexus).
+ \item[AntepenultBeforeDeminutus] Idem, but when the two last notes are a deminutus.
+ \item[InitialPunctum] The first note, if it is a standard punctum.
+ \item[InitioDebilis] The first note, if it is an initio debilis.
+ \item[PorrNonAuctusInitialWide] first note of a non-auctus porrectus with a second ambitus of at least two.
+ \item[PorrNonAuctusInitialOne] first note of a non-auctus porrectus with a second ambitus of one
+ \item[PorrAuctusInitialAny] first note of an auctus porrectus, regardless of second ambitus
+ \item[FinalInclinatum] punctum inclinatum as last note
+ \item[FinalInclinatumDeminutus] punctum inclinatum deminutus as last note
+ \item[FinalStropha] stropha as last note
+ \item[FinalQuilisma] quilisma as last note
+ \item[FinalOriscus] oriscus as last note
+ \item[PenultBeforePunctumOne] second-to-last note, with a second ambitus of one, when last note is a standard punctum (like the second note of ghg)
+ \item[FinalUpperPunctum] "upper smaller punctum" as last note (concerning simple podatus, podatus, and torculus resupinus)
+ \item[InitialOriscus] oriscus as first note, disconnected from next note
+ \item[InitialQuilisma] quilisma as first note, disconnected from next note
+ \item[TorcResNonAuctusSecondWideWide] second note of a non-auctus torculus resupinus starting with a punctum, with a first and second ambitus of at least two
+ \item[TorcResNonAuctusSecondOneWide] second note of a non-auctus torculus resupinus starting with a punctum, with a first ambitus of one and a second ambitus of at least two
+ \item[TorcResDebilisNonAuctusSecondAnyWide] second note of a non-auctus torculus resupinus initio debilis with any first ambitus and a second ambitus of at least two
+ \item[FinalLineaPunctum] linea punctum (cavum) as last note
+ \item[BarStandard] standard bar
+ \item[BarVirgula] virgula
+ \item[BarDivisioFinalis] divisio finalis
+ \item[TorcResQuilismaNonAuctusSecondWideWide] second note of a non-auctus torculus resupinus starting with a quilisma, with a first and second ambitus of at least two
+ \item[TorcResOriscusNonAuctusSecondWideWide] second note of a non-auctus torculus resupinus starting with an oriscus, with a first and second ambitus of at least two
+ \item[TorcResQuilismaNonAuctusSecondOneWide] second note of a non-auctus torculus resupinus starting with a quilisma, with a first ambitus of one and and second ambitus of at least two
+ \item[TorcResOriscusNonAuctusSecondOneWide] second note of a non-auctus torculus resupinus starting with an oriscus, with a first ambitus of one and and second ambitus of at least two
+ \item[TorcResNonAuctusSecondWideOne] second note of a non-auctus torculus resupinus starting with a punctum, with a first ambitus of at least two and a second ambitus of one
+ \item[TorcResDebilisNonAuctusSecondAnyOne] second note of a non-auctus torculus resupinus initio debilis with any first ambitus and a second ambitus of one
+ \item[TorcResQuilismaNonAuctusSecondWideOne] second note of a non-auctus torculus resupinus starting with a quilisma, with a first ambitus of at least two and a second ambitus of one
+ \item[TorcResOriscusNonAuctusSecondWideOne] second note of a non-auctus torculus resupinus starting with an oriscus, with a first ambitus of at least two and a second ambitus of one
+ \item[TorcResNonAuctusSecondOneOne] second note of a non-auctus torculus resupinus starting with a punctum, with a first and second ambitus of one
+ \item[TorcResQuilismaNonAuctusSecondOneOne] second note of a non-auctus torculus resupinus starting with a quilisma, with a first and second ambitus of one
+ \item[TorcResOriscusNonAuctusSecondOneOne] second note of a non-auctus torculus resupinus starting with an oriscus, with a first and second ambitus of one
+ \item[TorcResAuctusSecondWideAny] second note of an auctus torculus resupinus starting with a punctum, with a first ambitus of at least two and any second ambitus
+ \item[TorcResDebilisAuctusSecondAnyAny] second note of an auctus torculus resupinus initio debilis with any first and second ambitus
+ \item[TorcResQuilismaAuctusSecondWideAny] second note of an auctus torculus resupinus starting with a quilisma, with a first ambitus of at least two and any second ambitus
+ \item[TorcResOriscusAuctusSecondWideAny] second note of an auctus torculus resupinus starting with an oriscus, with a first ambitus of at least two and any second ambitus
+ \item[TorcResAuctusSecondOneAny] second note of an auctus torculus resupinus starting with a punctum, with a first ambitus of one and any second ambitus
+ \item[TorcResQuilismaAuctusSecondOneAny] second note of an auctus torculus resupinus starting with a quilisma, with a first ambitus of one and any second ambitus
+ \item[TorcResOriscusAuctusSecondOneAny] second note of an auctus torculus resupinus starting with an oriscus, with a first ambitus of one and any second ambitus
+ \item[ConnectedPenultBeforePunctumWide] second-to-last note connected to prior note, with a second ambitus of at least two, when last note is a standard punctum (like the second note of \textit{gig})
+ \item[ConnectedPenultBeforePunctumOne] second-to-last note connected to prior note, with a second ambitus of one, when last note is a standard punctum (like the second note of \textit{gih})
+ \item[InitialConnectedPunctum] standard punctum as first note, connected to next higher note
+ \item[InitialConnectedVirga] "virga" as first note, connected to next lower note
+ \item[InitialConnectedQuilisma] quilisma as first note, connected to next higher note
+ \item[InitialConnectedOriscus] oriscus as first note, connected to next higher note
+ \item[FinalConnectedPunctum] punctum as last note, connected to prior higher note
+ \item[FinalConnectedAuctus] auctus as last note, connected to prior lower note
+ \item[FinalVirgaAuctus] virga aucta as last note
+ \item[FinalConnectedVirga] "virga" as last note, connected to prior lower note
+ \item[InitialVirga] "virga" as first note, disconnected from next note
+\end{description}
+\end{shaded*}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "GregorioRef"
+%%% End: