From 00f423ba6afe99b146909a1c147ae72e4e480858 Mon Sep 17 00:00:00 2001 From: "Henry So, Jr." Date: Sat, 30 Sep 2017 08:05:29 -0400 Subject: [PATCH 1/3] Added note about package ordering as related to microtype. Fixes #1364. --- CHANGELOG.md | 1 + doc/Command_Index_User.tex | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b121d9b7d..c83c1cf61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased][unreleased] - Fixed issue with Tex Live 2017 latexmk not detecting auto-compiled gabc files as dependencies (see [#1367](https://github.com/gregorio-project/gregorio/issues/1367)). +- Added note about loading microtype after gregoriotex (see [#1364](https://github.com/gregorio-project/gregorio/issues/1364)). ## [5.0.2] - 2017-05-24 - Worked around an issue discovered during the TeX Live 2017 pre-test. See [#1362](https://github.com/gregorio-project/gregorio/issues/1362). diff --git a/doc/Command_Index_User.tex b/doc/Command_Index_User.tex index 885fa6820..668589b14 100644 --- a/doc/Command_Index_User.tex +++ b/doc/Command_Index_User.tex @@ -80,6 +80,12 @@ \subsection{Using the Package} If you only need the special symbols which Gregorio\TeX\ contains, and not the ability to include scores or musical glyphs, then you can load \texttt{gregoriosyms} instead of \texttt{gregoriotex}. It supports all of the above options except those specifically related to scores. \textbf{You should not try to load both packages}. +\subsubsection{Gregorio\TeX{} and \texttt{microtype}} + +If you are using the \texttt{microtype} package or a package that itself uses +\texttt{microtype}, please load it after \texttt{gregoriotex}. If you load +\texttt{microtype} before \texttt{gregoriotex}, you may receive an error about +an ``undefined control sequence'' if you use certain Gregorio\TeX{} features. \subsection{Commands} From 4f51e55cf8fe3953db174b37db31cd8ab6fb7b1d Mon Sep 17 00:00:00 2001 From: "Henry So, Jr." Date: Sun, 19 Nov 2017 09:53:53 -0500 Subject: [PATCH 2/3] Prevented the change of \gre@diment@lastglyphwidth by a custos alteration. Fixes #1379. --- CHANGELOG.md | 1 + doc/Command_Index_internal.tex | 3 +++ tex/gregoriotex-signs.tex | 11 ++++++++++- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c83c1cf61..f2b57b369 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased][unreleased] - Fixed issue with Tex Live 2017 latexmk not detecting auto-compiled gabc files as dependencies (see [#1367](https://github.com/gregorio-project/gregorio/issues/1367)). - Added note about loading microtype after gregoriotex (see [#1364](https://github.com/gregorio-project/gregorio/issues/1364)). +- Fixed issue where an altered note (glyph) throws off the position of an episema in the glyph that immediately precedes it (see [#1379](https://github.com/gregorio-project/gregorio/issues/1379)). ## [5.0.2] - 2017-05-24 - Worked around an issue discovered during the TeX Live 2017 pre-test. See [#1362](https://github.com/gregorio-project/gregorio/issues/1362). diff --git a/doc/Command_Index_internal.tex b/doc/Command_Index_internal.tex index 5323e92cb..25dd8ff99 100644 --- a/doc/Command_Index_internal.tex +++ b/doc/Command_Index_internal.tex @@ -1713,6 +1713,9 @@ \subsection{Flags} \macroname{\textbackslash gre@insidediscretionary}{}{gregoriotex-signs.tex} Macro which indicates whether we are currently inside a discretionary (\texttt{1}) or not (\texttt{0}). Cannot be converted to a \TeX\ boolean because it’s value needs to be passed to Lua. +\macroname{\textbackslash ifgre@in@custos}{}{gregoriotex-signs.tex} +Boolean which indicates whether typesetting is currently in the context of a custos. + \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). diff --git a/tex/gregoriotex-signs.tex b/tex/gregoriotex-signs.tex index 4edb02a1a..f79683c87 100644 --- a/tex/gregoriotex-signs.tex +++ b/tex/gregoriotex-signs.tex @@ -451,10 +451,14 @@ \gre@trace@end% }% +\newif\ifgre@in@custos % +\gre@in@custosfalse % + % custos just typesets a custos, useful for before the key changes for example % #1 is the height \def\GreCustos#1#2{% \gre@trace{GreCustos{#1}{#2}}% + \gre@in@custostrue % \GreNoBreak % \ifdim\gre@skip@bar@lastskip=0pt\else % we're after a bar: \kern-\gre@skip@bar@lastskip % @@ -505,6 +509,7 @@ \fi % \directlua{gregoriotex.adjust_line_height(\gre@insidediscretionary)}% \relax % + \gre@in@custosfalse % \gre@trace@end% }% @@ -522,6 +527,7 @@ \edef\gre@nextcustosalteration{}% \def\GreNextCustos#1#2{% \gre@trace{GreNextCustos{#1}{#2}}% + \gre@in@custostrue % \gre@debugmsg{custos}{nextcustos = #1,#2}% \ifnum\gre@insidediscretionary=0\relax % \gre@debugmsg{custos}{not discretionary}% @@ -561,6 +567,7 @@ \fi % \fi % \relax% + \gre@in@custosfalse % \gre@trace@end% }% @@ -2404,7 +2411,9 @@ \ifnum#4=0\relax % \gre@newglyphcommon % \fi % - \global\gre@dimen@lastglyphwidth=\wd\gre@box@temp@width % + \ifgre@in@custos\else\relax % + \global\gre@dimen@lastglyphwidth=\wd\gre@box@temp@width % + \fi % % the three next lines are a trick to get the additional lines below the glyphs \gre@skip@temp@one = \gre@dimen@lastglyphwidth\relax% \kern\gre@skip@temp@one % From 0d74160135fa798f101f8405252d2e956b4aaa19 Mon Sep 17 00:00:00 2001 From: "Br. Samuel Springuel" Date: Mon, 20 Nov 2017 17:17:43 -0500 Subject: [PATCH 3/3] Remove note about luaotfload bug TeXLive 2017 solved this problem, so we don't need the note anymore. --- README.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/README.md b/README.md index d2b4bc0a1..782a4e3c4 100644 --- a/README.md +++ b/README.md @@ -16,12 +16,6 @@ You can also try it online [here](http://dev.illuminarepublications.com/gregorio You need a recent and working [TeXLive](https://www.tug.org/texlive/), on top of which you just need to install latest [Gregorio release](https://github.com/gregorio-project/gregorio/releases). See [the website](http://gregorio-project.github.io/installation.html) for more details. -**Note:** Due to a bug in the v2.7-fix-3 release of `luaotfload` the documentation cannot be built against TeXLive 2016 if you have that version of `luaotfload` (see [#1188](https://github.com/gregorio-project/gregorio/issues/1188)). The result is that users should do one of the following: - -- Install from the distribution tar ball where the documentation is already built (recommended for those installing a stable release). -- Switch to TeXLive 2015 (which uses an earlier version of `luaotfload`) to build the docs. -- Upgrade your `luaotfload` to a more recent version (v2.8 or later). - ## Building for inclusion in TeXLive When building gregorio for inclusion in TeXLive, the gregorio executable must not have the version number suffix that is used for other builds. To make this happen, run `configure` with the `--disable-version-in-exe` option, and the generated Makefile will create a gregorio executable without the version number suffix (i.e., the executable will simply be named `gregorio`).