Skip to content

Commit

Permalink
Merge branch 'ctan' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
rpspringuel committed Feb 7, 2021
2 parents e977ca7 + a69608f commit c9df01b
Show file tree
Hide file tree
Showing 17 changed files with 304 additions and 285 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,19 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/).
- Added additional message to verbose output of command-line tool to prevent confusion when a custom Latin vowel convention is found that the internal Latin rules will be used. See [#1470](https://github.com/gregorio-project/gregorio/issues/1470).

## [Unreleased][CTAN]
### Changed
- The space between a non-punctum inclinatum and the upright punctum inclinatum is renamed to uprightpunctuminclinatumshift. This helps to better distinguish it from punctuminclinatumunisonshift (the space between two consecutive ascending or descending puncta inclinata on the same line). See [#1507](https://github.com/gregorio-project/gregorio/issues/1507).

### Fixed
- Staff line thickness is now set in gsp-default.tex. This corrects a problem with the staff lines changing thickness when the default spacing configuration is loaded while the staff size is something other than the default (17). See [#1461](https://github.com/gregorio-project/gregorio/issues/1461).
- Corrected interaction issues between text styles and ligatures. The LaTeX commands like `\textit` insert italics correction, preventing ligatures being formed between their arguments if two occur sequentially. On the other hand the switches like `\itshape` do not. Since gregorio breaks up syllables around the vowel and then applies the formating commands to each part, this behavior showed up. We switch to using the switches to avoid this (except for underlining, for which a switch does not exist). We also fix this for color tags by loading `luacolor` which changes how the `\color` tag is implemented to allow ligatures to span groups. See [#1444](https://github.com/gregorio-project/gregorio/issues/1444).
- A reuse of a save register led to the `\hyphenpenalty` not being restored correctly at the end of the score. All save registers are now clearly identified by when they are used so as to make it harder to accidentally use the wrong one. See [posts on mailing list](https://groups.google.com/g/gregorio-users/c/u3LmnGYnhwU).
- Fixed an overly specific find/replace in snippets that that led to `\par` being able to slip into the snippet file under certain circumstances (and there by causing compilation to fail). See [#1497](https://github.com/gregorio-project/gregorio/issues/1497).
- Updated to use iftex package (the sucessor to ifluatex). See [#1481](https://github.com/gregorio-project/gregorio/issues/1481).

### Added
- GregorioTeX will now look in additional places for scores using. Users can specify paths to look in using `\gresetgregpath`. If scores are not found in the current working directory or the list of provided paths, we fall back on kpse to try and find them. See [#1395](https://github.com/gregorio-project/gregorio/issues/1395).
- Added the ability to toggle the visibility of the translation and above lines text. See [user request on mailing list](https://groups.google.com/g/gregorio-users/c/J-V0dkBMevY).


## [5.2.1] - 2019-04-06
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Create a [LaTeX](http://en.wikipedia.org/wiki/LaTeX) file that will produce the

Compile the LaTeX file with LuaLaTeX, you get your score in PDF! You can change the LaTeX file to include other scores, create booklets, books, etc.

You can also try it online [here](http://dev.illuminarepublications.com/gregorio/).
You can also try it online [here](http://dev.illuminarepublications.com/).

## Installation

Expand Down
18 changes: 17 additions & 1 deletion doc/Command_Index_User.tex
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ \subsubsection{Including scores}
compile the gabc file into a gtex file. This is similar to
\texttt{[a]} except the gabc is compiled every time.

\macroname{\textbackslash gregetgregpath}{\{\#1\}}{gregoriotex-main.tex}
\macroname{\textbackslash gresetgregpath}{\{\#1\}}{gregoriotex-main.tex}
Set a list of additional directories which should be searched for scores. Directories may be absolute or relative, but must end with a slash (\verb=/=) and enclosed in braces (\verb={}=), even if there is only one additional directory. For example, to look in a directory called “Scores” which is alongside the main project directory, one could use the following:

\begin{latexcode}
Expand Down Expand Up @@ -920,6 +920,22 @@ \subsubsection{Text Elements}
& \texttt{invisible} & Lyrics are not visible.\\
\end{argtable}

\macroname{\textbackslash gresettranslation}{\{\#1\}}{gregoriotex-main.tex}
Sets the visibility of the translations.

\begin{argtable}
\#1 & \texttt{visible} & Translations are visible (default).\\
& \texttt{invisible} & Translations are not visible.\\
\end{argtable}

\macroname{\textbackslash gresetabovelinestext}{\{\#1\}}{gregoriotex-main.tex}
Sets the visibility of the above lines text.

\begin{argtable}
\#1 & \texttt{visible} & Above lines text are visible (default).\\
& \texttt{invisible} & Above lines text are not visible.\\
\end{argtable}


\subsubsection{Text Alignment}
Gregorio\TeX\ allows you to manipulate the global alignment behavior of some text elements using the following commands.
Expand Down
8 changes: 7 additions & 1 deletion doc/Command_Index_gregorio.tex
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ \section{Gregorio Controls}
& \texttt{1} & The notes around the bar are far, \verb=@short= versions of spaces will be used.\\
\end{argtable}

\macroname{\textbackslash GreDivisioMinimaHigh}{\#1\#2\#3}{gregoriotex-signs.tex}
\macroname{\textbackslash GreDivisioMinimisHigh}{\#1\#2\#3}{gregoriotex-signs.tex}
Macro to typeset a divisio ``minimis'' (eighth bar) on the ledger line above the staff.

\begin{argtable}
Expand Down Expand Up @@ -682,6 +682,12 @@ \section{Gregorio Controls}
\macroname{\textbackslash GreInDivisioMinimaParenHigh}{\#1\#2\#3}{gregoriotex-signs.tex}
Same as \verb=\GreDivisioMinimaParenHigh= except inside a syllable.

\macroname{\textbackslash GreInDivisioMinimis}{\#1\#2\#3}{gregoriotex-signs.tex}
Same as \verb=\GreDivisioMinimis= except inside a syllable.

\macroname{\textbackslash GreInDivisioMinimisHigh}{\#1\#2\#3}{gregoriotex-signs.tex}
Same as \verb=\GreDivisioMinimisHigh= except inside a syllable.

\macroname{\textbackslash GreInDivisioMinor}{\#1\#2}{gregoriotex-signs.tex}
Same as \verb=\GreDivisioMinor= except inside a syllable.

Expand Down
95 changes: 13 additions & 82 deletions doc/Command_Index_internal.tex
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ \section{Gregorio\TeX{} Controls}
document and are listed here for programmer documentation purposes
only.

Sometimes it is necessary to temporarily change some register or macro for the purpose of some particular operation and then restore it to its previous value. In those case we define a \verb=\gre@saved@<moment>...= register or macro associated with it (\eg \verb=\gre@dimen@constantglyphraise= is saved just before a discretionary to \verb=\gre@saved@prediscretionary@dimen@constantglyphraise= and restored from it afterwards). These registers/macros are not listed in this documentation.

\macroname{\textbackslash gre@error}{\#1}{gregoriotex.sty \textup{and} gregoriotex.tex}
Prints an error to the \TeX\ output log.

Expand Down Expand Up @@ -564,9 +566,6 @@ \section{Gregorio\TeX{} Controls}
\macroname{\textbackslash gre@lastoflinecount}{}{gregoriotex-main.tex}
Count to track where on the line we are. Values are \texttt{0} (we are not near the end of a line), \texttt{1} (we’re at the last syllable of the line), and \texttt{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\#2}{gregoriotex-main.tex}
The macro which needs to be called each time a new lines is started.
Expand Down Expand Up @@ -615,9 +614,6 @@ \section{Gregorio\TeX{} Controls}
\macroname{\textbackslash gre@opening@syllabletext}{}{gregoriotex-syllable.tex}
Macro that stores the computed \TeX\ code for rendering the text of the first syllable.
\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.
Expand Down Expand Up @@ -1054,6 +1050,10 @@ \section{Gregorio\TeX{} Controls}
& \texttt{20} & Space between a punctum inclinatum and a ``no-bar'' glyph two pitches above. \\
& \texttt{21} & Space between a punctum inclinatum and a ``no-bar'' glyph three or four pitches above \\
& \texttt{22} & Half-space. \\
& \texttt{23} & Space between two puncta inclinata on a unison. \\
& \texttt{24} & Space before a right-leaning puncta inclinatum when the pitch is ascending (up to 4 pitches away). \\
& \texttt{25} & Space before a left-leaning puncta inclinatum when the pitch is descending (up to 4 pitches away). \\
& \texttt{26} & Space after after a non-punctum inclinatum and before the upright punctum inclinatum. \\
\end{argtable}
\macroname{\textbackslash gre@nabcfontname}{}{gregoriotex-main.tex}
Expand Down Expand Up @@ -1105,19 +1105,6 @@ \section{Gregorio\TeX{} Controls}
\#2 & \TeX\ code & Code to perform when \emph{not} rewriting the syllable\\
\end{argtable}
\macroname{\textbackslash gre@save@endsyllablepart}{}{gregoriotex-syllable.tex}
Control sequence aliased to the carry-over syllable part to be moved to the next syllable.
\macroname{\textbackslash gre@save@fixedtextformat}{\#1}{gregoriotex-syllable.tex}
Control sequence aliased to the fixed text format for the carry-over syllable part to be moved to the next syllable.
\begin{argtable}
\#1 & string & The carry-over syllable part, as with \verb=\gre@fixednexttextformat=\\
\end{argtable}
\macroname{\textbackslash gre@save@pointandclick}{}{gregoriotex-syllable.tex}
Control sequence aliased to the line:char:column of the point-and-click link for the carry-over syllable part to be moved to the next syllable\\
\macroname{\textbackslash gre@push@endsyllable}{\#1}{gregoriotex-syllable.tex}
Sets the save aliases to push the end-syllable part of the current syllable to the next syllable if necessary.
Expand Down Expand Up @@ -1222,7 +1209,7 @@ \section{Gregorio\TeX{} Controls}
\macroname{\textbackslash gre@pitch@clefbottom}{}{gregoriotex-spaces.tex}
The pitch of the lowest point of the current clef.
\macroname{\textbackslash gre@saveclefextrema}{\#1\#2}{gregoriotex-signs.tex}
\macroname{\textbackslash gre@save@clefextrema}{\#1\#2}{gregoriotex-signs.tex}
Computes the pitches of the lowest and highest points of a clef and saves them
into \verb=\gre@pitch@cleftop= and \verb=\gre@pitch@clefbottom=.
Expand Down Expand Up @@ -1398,9 +1385,6 @@ \section{Gregorio\TeX{} Controls}
\macroname{\textbackslash gre@newlinecommondelayed}{}{gregoriotex-syllable.tex}
Macro used in place of \verb=\gre@newlinecommon= when the line break must be delayed.
\macroname{\textbackslash gre@newlinecommonsaved}{}{gregoriotex-syllable.tex}
Macro for storing original behavior of \verb=\gre@newlinecommon= so that it can be restored after the delayed line break takes effect.
\macroname{\textbackslash gre@punctum@mora}{\#1\#2\#3\#4}{gregoriotex-signs.tex}
Macro to typeset a punctum mora.
Expand Down Expand Up @@ -1959,9 +1943,6 @@ \subsection{Flags}
\macroname{\textbackslash ifgre@disablevepisema}{}{gregoriotex-signs.tex}
Boolean to disable the printing of vertical episemata.
\macroname{\textbackslash ifgre@lastendswithmorasave}{}{gregoriotex-syllable.tex}
Boolean for saving \verb=\ifgre@lastendswithmora= for later restoration.
\macroname{\textbackslash gre@lasteuouaeindex}{}{gregoriotex-main.tex}
Count which keeps track of the most recent euouae area.
Expand Down Expand Up @@ -2004,6 +1985,12 @@ \subsection{Flags}
\macroname{\textbackslash ifgre@showlyrics}{}{gregoriotex-syllable.tex}
Boolean indicating whether the lyrics should be shown.
\macroname{\textbackslash ifgre@showtranslation}{}{gregoriotex-main.tex}
Boolean indicating whether the translation should be shown.
\macroname{\textbackslash ifgre@showabovelinestext}{}{gregoriotex-main.tex}
Boolean indicating whether the above lines text should be shown.
\macroname{\textbackslash gre@initiallines}{}{gregoriotex-syllable.tex}
Number of lines the initial takes up. Currently limited to 0, 1, or 2. Not currently a count, but will be changed to one in 5.0.
Expand Down Expand Up @@ -2094,10 +2081,6 @@ \subsection{Distances}
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.
In some cases it is necessary to temporarily manipulate some of these distances for the purpose of some particular operation and then restore them to their previous values. In that case the distance will have a \verb=\gre@saved@...= register associated with it (\eg \verb=\gre@dimen@constantglyphraise= is saved to and restored from \verb=\gre@saved@dimen@constantglyphraise=).
We also have save registries for \verb=\baselineskip=, \verb=\lineskip=, \verb=\lineskiplimit=, \verb=\parskip=, and \verb=\parfillskip= so that we can modify the way line breaking decisions are handled inside a score without affecting the rest of the document.
\macroname{\textbackslash gre@dimen@morawidth}{}{gregoriotex-spaces.tex}
Width of a punctum mora (reinitialized at each score, lazily recomputed).
Expand Down Expand Up @@ -2306,58 +2289,6 @@ \subsection{Penalties}
\macroname{\textbackslash gre@restorepenalties}{}{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{Backwards compatibility}
Depending on version of Lua\TeX / \LaTeX, some primitives have different names
We define the following local aliases to account for this eventuality.
Expand Down
2 changes: 1 addition & 1 deletion doc/gsp-sample.tex
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@
\grechangedim{descendingpunctuminclinatumascendingshift}{-0.07918 cm plus 0.0009 cm minus 0.0009 cm}{scalable}%
% space between two ascending punctum inclinatum glyphs in an descent
\grechangedim{ascendingpunctuminclinatumdescendingshift}{-0.07918 cm plus 0.0009 cm minus 0.0009 cm}{scalable}%
% space between two unison punctum inclinatum glyphs (at the unison)
% Space after after a non-punctum inclinatum and before the upright punctum inclinatum
\grechangedim{unisonpunctuminclinatumshift}{0.05286 cm plus 0.00728 cm minus 0.00455 cm}{scalable}%

%
Expand Down
12 changes: 7 additions & 5 deletions doc_check.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
# The script is not perfect, and especially has trouble with classes of macros
# which have only one entry in the documentation.

#set -x #echo on

HERE=`pwd`

Expand All @@ -36,16 +37,16 @@ sed -i.temp 's:.*OBSOLETE.*::' $CODEFILE
sed -i.temp 's:.*DEPRECATED.*::' $CODEFILE

#remove trailing comments
gsed -i.temp 's/%.*$//' $CODEFILE
sed -i.temp 's/%.*$//' $CODEFILE

#remove whitespace
gsed -i.temp 's/^[ \t]*//;s/[ \t]*$//' $CODEFILE
sed -i.temp 's/^[ \t]*//;s/[ \t]*$//' $CODEFILE

#remove new and trailing code
sed -i.temp 's:.*\\new[a-z]*{*\(\\*[a-zA-Z@]*\)[\\}]*.*:\1:' $CODEFILE

#get rid of work around def
sed -i.temp -E 's:\\def\\x{::' $CODEFILE
sed -i.temp '/\\def\\x/d' $CODEFILE

#accept only first def on line
sed -i.temp -E 's:\\[gex]?def:special:' $CODEFILE
Expand Down Expand Up @@ -87,6 +88,7 @@ sed -i.temp 's:.*count@temp@.*::' $CODEFILE

#registers for saved values
sed -i.temp 's:\\gre@saved@.*::' $CODEFILE
sed -i.temp '/\\ifgre@saved@.*/d' $CODEFILE

#macros used to process options
sed -i.temp 's:\\gre@autocompile::' $CODEFILE
Expand Down Expand Up @@ -120,7 +122,7 @@ sed -i.temp 's:\\macroname{\([^}]*\)}.*:\1:' $DOCFILE
sed -i.temp 's:\\textbackslash :\\:' $DOCFILE

#styles
sed -i.temp 's:.*\stylename{\([a-z]*\)}.*:\1:' $DOCFILE
sed -i.temp 's:.*stylename{\([a-z]*\)}.*:\1:' $DOCFILE

#distances
sed -i.temp 's:\\begin{gdimension}{\([a-z@]*\)}.*:\1:' $DOCFILE
Expand All @@ -146,7 +148,7 @@ grep -h '\\gre@deprecated.*' *.tex | grep -v '\\def\\' >> $DOCFILE
grep -h '\\gre@obsolete.*' *.tex | grep -v '\\def\\' >> $DOCFILE

#remove whitespace
gsed -i.temp 's/^[ \t]*//;s/[ \t]*$//' $DOCFILE
sed -i.temp 's/^[ \t]*//;s/[ \t]*$//' $DOCFILE

sed -i.temp 's:.*\\gre@deprecated{.*::' $DOCFILE
sed -i.temp 's:.*\\gre@obsolete{.*::' $DOCFILE
Expand Down
Loading

0 comments on commit c9df01b

Please sign in to comment.