summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2025-02-18 21:06:29 +0000
committerKarl Berry <karl@freefriends.org>2025-02-18 21:06:29 +0000
commit8a26f4eeaac3dd8b36ef4bbe1545d3008c628e85 (patch)
tree14e40ec77504143e062ba530dcad25a6c00abca4 /Master
parente1b8915710d066b9377747b1ccf2b8a6043b767c (diff)
gregoriotex (18feb25)
git-svn-id: svn://tug.org/texlive/trunk@74101 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/luatex/gregoriotex/CHANGELOG.md6
-rw-r--r--Master/texmf-dist/doc/luatex/gregoriotex/Command_Index_internal.tex15
-rw-r--r--Master/texmf-dist/doc/luatex/gregoriotex/GregorioNabcRef.pdfbin505861 -> 505903 bytes
-rw-r--r--Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.pdfbin888311 -> 887865 bytes
-rw-r--r--Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.tex2
-rw-r--r--Master/texmf-dist/fonts/source/gregoriotex/squarize.py2
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hole.ttfbin1063132 -> 1063132 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hollow.ttfbin1817556 -> 1817556 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hole.ttfbin1063200 -> 1063200 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hollow.ttfbin1855488 -> 1855488 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op.ttfbin1168600 -> 1168600 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae.ttfbin1130536 -> 1130536 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/gregall.ttfbin175592 -> 175592 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/grelaon.ttfbin188684 -> 188684 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/gregoriotex/gresgmodern.ttfbin202028 -> 202028 bytes
-rw-r--r--Master/texmf-dist/scripts/gregoriotex/uninstall-gtex.sh2
-rw-r--r--Master/texmf-dist/source/luatex/gregoriotex/gregorio-6.1.0-beta2.zip (renamed from Master/texmf-dist/source/luatex/gregoriotex/gregorio-6.1.0-beta1.zip)bin25281615 -> 25111713 bytes
-rw-r--r--Master/texmf-dist/tex/lualatex/gregoriotex/gregoriosyms.sty4
-rw-r--r--Master/texmf-dist/tex/lualatex/gregoriotex/gregoriotex.sty2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-chars.tex2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-common.tex2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-gsp-default.tex2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-main.tex67
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.lua2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.tex2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.lua2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.tex24
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-spaces.tex18
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-syllable.tex9
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.lua2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.tex2
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.lua104
-rw-r--r--Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.tex2
33 files changed, 121 insertions, 152 deletions
diff --git a/Master/texmf-dist/doc/luatex/gregoriotex/CHANGELOG.md b/Master/texmf-dist/doc/luatex/gregoriotex/CHANGELOG.md
index dcfd9b3161e..165558fdf62 100644
--- a/Master/texmf-dist/doc/luatex/gregoriotex/CHANGELOG.md
+++ b/Master/texmf-dist/doc/luatex/gregoriotex/CHANGELOG.md
@@ -8,7 +8,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/).
## [Unreleased][CTAN]
-## [6.1.0-beta1] - 2025-02-10
+## [6.1.0-beta2] - 2025-02-17
### Fixed
- Multiple Scribus render frames were all using the same file name, which would result in the same score appearing in all render frames. This change makes the score files use an available Scribus variable to force multiple file names.
- When kpsewhich cannot write to a particular location, it generates an error which is directed to stderr but not to our glog file. This created an undocumented error when trying to write to a gtex file to a bad location. We now capture stderr output produced when compiling scores and redirect it to our glog file so that the error is properly recorded. Fixes [#1541](https://github.com/gregorio-project/gregorio/issues/1541).
@@ -18,6 +18,10 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/).
- Fixed a bug that caused a custos to sometimes change into a clef. See [#1373](https://github.com/gregorio-project/gregorio/issues/1373).
- Fixed the alignment of 2-line initials so that an initial's baseline more exactly aligns with the baseline of the lowest line it appears next to.
- When fancyhdr and GregorioTeX are used together, GregorioTeX's disabling of hyphenation and its `post_linebreak` modification of the `post_linebreak_filter` interfere with multiline headers. Using the `fancyhdr/before` and `fancyhdr/after` hooks we temporarily reenable hyphenation and disable our `post_linebreak` modification while headers and footers are being processed in the middle of a score. See [#1603](https://github.com/gregorio-project/gregorio/issues/1603).
+- Fixed a bug that could cause a hyphen to appear on the wrong line. See [#1319](https://github.com/gregorio-project/gregorio/issues/1319).
+- Fixed the placement of above-lines text (`<alt>`) relative to a note above the staff or when the number of staff lines is not 4. See [#1613](https://github.com/gregorio-project/gregorio/issues/1613) and [#1614](https://github.com/gregorio-project/gregorio/issues/1614).
+- Fixed a bug where the above-lines text (`<alt>`) could collid with a note above the staff. See [#1613](https://github.com/gregorio-project/gregorio/issues/1613).
+- Fixed a bug that could cause the clef and staff to be printed too high. See [#1503](https://github.com/gregorio-project/gregorio/issues/1503).
### Changed
- Modified gregorio to append to the log file specified as an argument and to send early messages to it. See [#1541](https://github.com/gregorio-project/gregorio/issues/1541).
diff --git a/Master/texmf-dist/doc/luatex/gregoriotex/Command_Index_internal.tex b/Master/texmf-dist/doc/luatex/gregoriotex/Command_Index_internal.tex
index 22424c50791..81ef03dba21 100644
--- a/Master/texmf-dist/doc/luatex/gregoriotex/Command_Index_internal.tex
+++ b/Master/texmf-dist/doc/luatex/gregoriotex/Command_Index_internal.tex
@@ -1294,9 +1294,6 @@ Sets the number of staff lines.
\#1 & integer & The number of staff lines\\
\end{argtable}
-\macroname{\textbackslash gre@stafflines}{}{gregoriotex-main.tex}
-Contains the number of staff lines.
-
\macroname{\textbackslash gre@romannumeral@majuscule}{\#1}{gregoriotex-main.tex}
Typesets its numeric argument as an upper-case Roman numeral.
@@ -1912,15 +1909,6 @@ Boolean set by \verb=\GreSyllable= indicating if the Lua pass may add an hyphen
\macroname{\textbackslash ifgre@scale@stafflinefactor}{}{gregoriotex-spaces.tex}
Boolean indicating whether the stafflinefactor should scale with changes of \texttt{grefactor}, or not.
-\macroname{\textbackslash ifgre@haslinethree}{}{gregoriotex-spaces.tex}
-Boolean indicating whether the staff has a third line.
-
-\macroname{\textbackslash ifgre@haslinefour}{}{gregoriotex-spaces.tex}
-Boolean indicating whether the staff has a fourth line.
-
-\macroname{\textbackslash ifgre@haslinefive}{}{gregoriotex-spaces.tex}
-Boolean indicating whether the staff has a fifth line.
-
\macroname{\textbackslash gre@count@shiftaftermora}{}{gregoriotex-signs.tex}
Count indicating when the presence of a punctum mora at the end of a syllable should affect the spacing with the next syllable.
@@ -2024,6 +2012,9 @@ Boolean indicating that some aspect of the next syllable is being evaluated in a
\macroname{\textbackslash ifgre@noteadditionalspacelinestext}{}{gregoriotex-main.tex}
Boolean indicating that the additional space needed between the notes and the lyrics due to really low notes should follow the user setting of noteadditionalspacelinestext (as opposed to being calculated automatically, the default).
+\macroname{\textbackslash gre@count@stafflines}{}{gregoriotex-main.tex}
+Count containing the number of staff lines.
+
\macroname{\textbackslash ifgre@alteration@effect@note}{}{gregoriotex-signs.tex}
Boolean indicating that soft alterations should last until they apply to a single note (i.e. all soft alterations will be printed).
diff --git a/Master/texmf-dist/doc/luatex/gregoriotex/GregorioNabcRef.pdf b/Master/texmf-dist/doc/luatex/gregoriotex/GregorioNabcRef.pdf
index 8b266bd8acf..c006a8efd98 100644
--- a/Master/texmf-dist/doc/luatex/gregoriotex/GregorioNabcRef.pdf
+++ b/Master/texmf-dist/doc/luatex/gregoriotex/GregorioNabcRef.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.pdf b/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.pdf
index ee9b652d052..a9c9acbf680 100644
--- a/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.pdf
+++ b/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.tex b/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.tex
index 18c0766c54a..3034de96c8b 100644
--- a/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.tex
+++ b/Master/texmf-dist/doc/luatex/gregoriotex/GregorioRef.tex
@@ -183,7 +183,7 @@
\vspace{1cm}
- \large Version \textbf{6.1.0-beta1}, 10 February 2025 %% PARSE_VERSION_DATE
+ \large Version \textbf{6.1.0-beta2}, 17 February 2025 %% PARSE_VERSION_DATE
\vspace{1.5cm}
\gresetlinecolor{gregoriocolor}
diff --git a/Master/texmf-dist/fonts/source/gregoriotex/squarize.py b/Master/texmf-dist/fonts/source/gregoriotex/squarize.py
index 336460fdc03..68a63d2081a 100644
--- a/Master/texmf-dist/fonts/source/gregoriotex/squarize.py
+++ b/Master/texmf-dist/fonts/source/gregoriotex/squarize.py
@@ -89,7 +89,7 @@ AMBITUS = {
14 : 'Fourteen',
}
-GREGORIO_VERSION = '6.1.0-beta1'
+GREGORIO_VERSION = '6.1.0-beta2'
# The unicode character at which we start our numbering:
# U+E000 is the start of the BMP Private Use Area
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hole.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hole.ttf
index 22237bae31a..5aa271a0937 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hole.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hole.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hollow.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hollow.ttf
index e5abdee78b6..a21dae2444e 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hollow.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-hollow.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hole.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hole.ttf
index 97087b10442..35b8ffb0e17 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hole.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hole.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hollow.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hollow.ttf
index 2c4f0a593ab..5cff5ba52c3 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hollow.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op-hollow.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op.ttf
index 773d31acd8d..fb622f04aa6 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae-op.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae.ttf
index 66c4b82bfe8..c4ba7e63796 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/greciliae.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/gregall.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/gregall.ttf
index f9eae17f5c1..fd70dfbdff7 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/gregall.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/gregall.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/grelaon.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/grelaon.ttf
index 55e674cfae9..fad91cf0a27 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/grelaon.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/grelaon.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/gregoriotex/gresgmodern.ttf b/Master/texmf-dist/fonts/truetype/public/gregoriotex/gresgmodern.ttf
index 3fc8d86b9bd..14681d8ad4c 100644
--- a/Master/texmf-dist/fonts/truetype/public/gregoriotex/gresgmodern.ttf
+++ b/Master/texmf-dist/fonts/truetype/public/gregoriotex/gresgmodern.ttf
Binary files differ
diff --git a/Master/texmf-dist/scripts/gregoriotex/uninstall-gtex.sh b/Master/texmf-dist/scripts/gregoriotex/uninstall-gtex.sh
index e2763e41609..40bfcc95a62 100644
--- a/Master/texmf-dist/scripts/gregoriotex/uninstall-gtex.sh
+++ b/Master/texmf-dist/scripts/gregoriotex/uninstall-gtex.sh
@@ -92,6 +92,6 @@ $RM doc/luatex/gregoriotex//README.md
$RM doc/luatex/gregoriotex//UPGRADE.md
rmdir -p doc/luatex/gregoriotex/ 2> /dev/null || true
-$RM source/luatex/gregoriotex//gregorio-6.1.0-beta1.zip
+$RM source/luatex/gregoriotex//gregorio-6.1.0-beta2.zip
rmdir -p source/luatex/gregoriotex/ 2> /dev/null || true
diff --git a/Master/texmf-dist/source/luatex/gregoriotex/gregorio-6.1.0-beta1.zip b/Master/texmf-dist/source/luatex/gregoriotex/gregorio-6.1.0-beta2.zip
index a9f775defd1..cb58c4ad930 100644
--- a/Master/texmf-dist/source/luatex/gregoriotex/gregorio-6.1.0-beta1.zip
+++ b/Master/texmf-dist/source/luatex/gregoriotex/gregorio-6.1.0-beta2.zip
Binary files differ
diff --git a/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriosyms.sty b/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriosyms.sty
index 5179b5b49de..81587c6be61 100644
--- a/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriosyms.sty
+++ b/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriosyms.sty
@@ -19,7 +19,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{gregoriosyms}
- [2025/02/10 v6.1.0-beta1 GregorioTeX symbols only.]% PARSE_VERSION_DATE_LTX
+ [2025/02/17 v6.1.0-beta2 GregorioTeX symbols only.]% PARSE_VERSION_DATE_LTX
\RequirePackage{iftex}%
\RequireLuaTeX
@@ -41,7 +41,7 @@
% The version of gregorio. All gregoriotex*.tex files must have the same.
% All gtex files must also have the same version.
-\xdef\gre@gregoriotexversion{6.1.0-beta1}% GREGORIO_VERSION - VersionManager.py
+\xdef\gre@gregoriotexversion{6.1.0-beta2}% GREGORIO_VERSION - VersionManager.py
\providecommand{\gre@declarefileversion}[2]{\relax}
diff --git a/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriotex.sty b/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriotex.sty
index d75e19c4419..1cb93d4cbb9 100644
--- a/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriotex.sty
+++ b/Master/texmf-dist/tex/lualatex/gregoriotex/gregoriotex.sty
@@ -19,7 +19,7 @@
\NeedsTeXFormat{LaTeX2e}%
\ProvidesPackage{gregoriotex}%
- [2025/02/10 v6.1.0-beta1 GregorioTeX system.]% PARSE_VERSION_DATE_LTX
+ [2025/02/17 v6.1.0-beta2 GregorioTeX system.]% PARSE_VERSION_DATE_LTX
\RequirePackage{iftex}%
\RequireLuaTeX
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-chars.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-chars.tex
index 4eaca5101e1..eb3d45d1262 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-chars.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-chars.tex
@@ -17,7 +17,7 @@
% You should have received a copy of the GNU General Public License
% along with Gregorio. If not, see <http://www.gnu.org/licenses/>.
-\gre@declarefileversion{gregoriotex-chars.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-chars.tex}{6.1.0-beta2}% GREGORIO_VERSION
\def\gre@char@fuse@punctum@one{\GreFuseTwo{\GreCPLeadingPunctumOne}{\GreCPPunctum}}%
\def\gre@char@fuse@quilisma@one{\GreFuseTwo{\GreCPLeadingQuilismaOne}{\GreCPPunctum}}%
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-common.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-common.tex
index ac65b3cbb30..2aebcce418a 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-common.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-common.tex
@@ -17,7 +17,7 @@
% You should have received a copy of the GNU General Public License
% along with Gregorio. If not, see <http://www.gnu.org/licenses/>.
-\gre@declarefileversion{gregoriotex-common.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-common.tex}{6.1.0-beta2}% GREGORIO_VERSION
\ifnum\luatexversion<76%
\gre@error{Error: this document must be compiled with LuaTeX (lualatex) 0.76 or later}%
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-gsp-default.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-gsp-default.tex
index 49a87e3d08b..f26ed7c36ea 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-gsp-default.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-gsp-default.tex
@@ -20,7 +20,7 @@
% this file contains definitions of spaces and penalties
% version check
-\gre@declarefileversion{gregoriotex-gsp-default.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-gsp-default.tex}{6.1.0-beta2}% GREGORIO_VERSION
%% First, the penalties
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-main.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-main.tex
index 6e306294fa2..ee6441dceb4 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-main.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-main.tex
@@ -21,7 +21,7 @@
% The version of gregorio. All gregoriotex*.tex files must have the same.
% All gtex files must also have the same version.
-\xdef\gre@gregoriotexversion{6.1.0-beta1}% GREGORIO_VERSION - VersionManager.py
+\xdef\gre@gregoriotexversion{6.1.0-beta2}% GREGORIO_VERSION - VersionManager.py
% first some macros to allow checks for version:
% Tests that all gregoriotex files are of the same version.
@@ -214,8 +214,7 @@
\let\gre@pitch@underbrace\gre@pitch@b %
\let\gre@pitch@overbraceglyph\gre@pitch@g %
\let\gre@pitch@bar\gre@pitch@g %
-\let\gre@pitch@dummy\gre@pitch@g %
-\let\gre@pitch@nominal\gre@pitch@e %
+\let\gre@pitch@dummy\gre@pitch@e % not above or below staff, even if 2 lines
% factor is the factor with which you open you font (the number after the at). It will decide almost everything (spaces, etc.), so it is particularly important.
% it is set to the default value : 17 (the value that makes it look like a standard graduale)
@@ -735,8 +734,8 @@
\else%
\gre@dimen@temp@five=\gre@dimen@additionaltopspacenabc\relax%
\fi%
- \gre@dimen@temp@five=\dimexpr(4\gre@dimen@stafflineheight %
- + 4\gre@dimen@interstafflinespace %
+ \gre@dimen@temp@five=\dimexpr(\gre@dimen@staffheight %
+ + \gre@dimen@interstafflinespace %
+ \gre@space@dimen@spacebeneathtext %
+ \gre@dimen@currenttranslationheight %
+ \gre@space@dimen@spacelinestext %
@@ -789,45 +788,17 @@
\vbox attr \gre@attrid@part=2 {%
\gre@style@normalstafflines%
\vskip\glueexpr(\gre@dimen@additionaltopspace+\gre@space@skip@spaceabovelines+\gre@dimen@currentabovelinestextheight)\relax%
- \ifgre@showlines %
- \hrule height \gre@dimen@stafflineheight width \gre@dimen@stafflinewidth\relax%
- \else %
- \vskip\gre@dimen@stafflineheight\relax%
- \fi %
- \gre@skip@temp@four = \gre@dimen@interstafflinespace\relax%
- \kern\gre@skip@temp@four %
- \ifgre@showlines %
- \hrule height \gre@dimen@stafflineheight width \gre@dimen@stafflinewidth\relax%
- \else %
- \vskip\gre@dimen@stafflineheight\relax%
- \fi %
- \ifgre@haslinethree %
- \gre@skip@temp@four = \gre@dimen@interstafflinespace\relax%
- \kern\gre@skip@temp@four %
+ \gre@count@temp@one=0\relax
+ \loop
\ifgre@showlines %
\hrule height \gre@dimen@stafflineheight width \gre@dimen@stafflinewidth\relax%
\else %
\vskip\gre@dimen@stafflineheight\relax%
\fi %
- \fi %
- \ifgre@haslinefour %
- \gre@skip@temp@four = \gre@dimen@interstafflinespace\relax%
- \kern\gre@skip@temp@four %
- \ifgre@showlines %
- \hrule height \gre@dimen@stafflineheight width \gre@dimen@stafflinewidth\relax%
- \else %
- \vskip\gre@dimen@stafflineheight\relax%
- \fi %
- \fi %
- \ifgre@haslinefive %
- \gre@skip@temp@four = \gre@dimen@interstafflinespace\relax%
- \kern\gre@skip@temp@four %
- \ifgre@showlines %
- \hrule height \gre@dimen@stafflineheight width \gre@dimen@stafflinewidth\relax%
- \else %
- \vskip\gre@dimen@stafflineheight\relax%
- \fi %
- \fi %
+ \advance\gre@count@temp@one by 1\relax
+ \ifnum\gre@count@temp@one<\gre@count@stafflines
+ \kern\gre@dimen@interstafflinespace\relax
+ \repeat
\kern\dimexpr(\gre@space@dimen@spacelinestext+\gre@dimen@additionalbottomspace+\gre@space@dimen@spacebeneathtext+\gre@dimen@currenttranslationheight)\relax%
\endgre@style@normalstafflines %
}%
@@ -1049,13 +1020,11 @@
% gre@attr@dash (see its definition in gregorio-syllable) is 0 when we are in a score, and unset when we are not
\newif\ifgre@beginningofscore%
-\newif\ifgre@haslinethree%
-\newif\ifgre@haslinefour%
-\newif\ifgre@haslinefive%
+\newcount\gre@count@stafflines
\def\gre@setstafflines#1{%
\gre@trace{gre@setstafflines{#1}}%
- \def\gre@stafflines{#1}%
+ \gre@count@stafflines=#1\relax
\ifcase#1% 0
\gre@error{Invalid number of staff lines}%
\or % 1
@@ -1080,9 +1049,6 @@
\let\gre@char@bar@divisiomaior\GreCPDivisioMaiorTwo %
\let\gre@char@bar@divisiomaiordotted\GreCPDivisioMaiorDottedTwo %
\let\gre@char@bar@divisiomaiordottedbacking\GreCPDivisioMaiorDottedBackingTwo %
- \gre@haslinethreefalse %
- \gre@haslinefourfalse %
- \gre@haslinefivefalse %
\or % 3
\let\gre@pitch@adjust@top\gre@pitch@h %
\let\gre@pitch@abovestaff\gre@pitch@i %
@@ -1103,9 +1069,6 @@
\let\gre@char@bar@divisiomaior\GreCPDivisioMaiorThree %
\let\gre@char@bar@divisiomaiordotted\GreCPDivisioMaiorDottedThree %
\let\gre@char@bar@divisiomaiordottedbacking\GreCPDivisioMaiorDottedBackingThree %
- \gre@haslinethreetrue %
- \gre@haslinefourfalse %
- \gre@haslinefivefalse %
\or % 4
\let\gre@pitch@adjust@top\gre@pitch@j %
\let\gre@pitch@abovestaff\gre@pitch@k %
@@ -1126,9 +1089,6 @@
\let\gre@char@bar@divisiomaior\GreCPDivisioMaiorFour %
\let\gre@char@bar@divisiomaiordotted\GreCPDivisioMaiorDottedFour %
\let\gre@char@bar@divisiomaiordottedbacking\GreCPDivisioMaiorDottedBackingFour %
- \gre@haslinethreetrue %
- \gre@haslinefourtrue %
- \gre@haslinefivefalse %
\or % 5
\let\gre@pitch@adjust@top\gre@pitch@l %
\let\gre@pitch@abovestaff\gre@pitch@m %
@@ -1149,9 +1109,6 @@
\let\gre@char@bar@divisiomaior\GreCPDivisioMaiorFive %
\let\gre@char@bar@divisiomaiordotted\GreCPDivisioMaiorDottedFive %
\let\gre@char@bar@divisiomaiordottedbacking\GreCPDivisioMaiorDottedBackingFive %
- \gre@haslinethreetrue %
- \gre@haslinefourtrue %
- \gre@haslinefivetrue %
\else %
\gre@error{Invalid number of staff lines}%
\fi %
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.lua b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.lua
index 4f062c392a2..74c46dfb87b 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.lua
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.lua
@@ -20,7 +20,7 @@
-- this file contains lua functions used by GregorioTeX St. Gall ancient
-- neume support when called with LuaTeX.
--- GREGORIO_VERSION 6.1.0-beta1
+-- GREGORIO_VERSION 6.1.0-beta2
local catcode_at_letter = luatexbase.catcodetables['gre@atletter']
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.tex
index f8becbd1c29..62d98f2f0d7 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-nabc.tex
@@ -19,7 +19,7 @@
% this file contains macros for St. Gall ancient neume support
-\gre@declarefileversion{gregoriotex-nabc.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-nabc.tex}{6.1.0-beta2}% GREGORIO_VERSION
\xdef\gre@nabcfontname{gregall}%
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.lua b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.lua
index f720b5be94c..9168aa9cda9 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.lua
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.lua
@@ -19,7 +19,7 @@
-- this file contains lua functions to support signs used by GregorioTeX.
--- GREGORIO_VERSION 6.1.0-beta1
+-- GREGORIO_VERSION 6.1.0-beta2
local err = gregoriotex.module.err
local warn = gregoriotex.module.warn
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.tex
index 68af5e083eb..53f3be8d1c1 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-signs.tex
@@ -22,7 +22,7 @@
\def\grebarbracewidth{.58879}%
-\gre@declarefileversion{gregoriotex-signs.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-signs.tex}{6.1.0-beta2}% GREGORIO_VERSION
\def\gre@usestylecommon{%
\gre@trace{gre@usestylecommon}%
@@ -705,44 +705,44 @@
\or\gre@fontchar@custostoplong %
\or\gre@fontchar@custostopshort %
\or %
- \ifgre@haslinethree %
+ \ifnum\gre@count@stafflines>2\relax
\gre@fontchar@custostoplong %
\else %
\gre@fontchar@custosbottomlong %
\fi %
\or %
- \ifgre@haslinethree %
+ \ifnum\gre@count@stafflines>2\relax
\gre@fontchar@custostopshort %
\else %
\gre@fontchar@custosbottomshort %
\fi %
\or %
- \ifgre@haslinefour %
+ \ifnum\gre@count@stafflines>3\relax
\gre@fontchar@custostoplong %
\else %
\gre@fontchar@custosbottomlong %
\fi %
\or %
- \ifgre@haslinefour %
+ \ifnum\gre@count@stafflines>3\relax
\gre@fontchar@custostopshort %
\else %
- \ifgre@haslinethree %
+ \ifnum\gre@count@stafflines>2\relax
\gre@fontchar@custosbottomshort %
\else %
\gre@fontchar@custosbottommiddle %
\fi %
\fi %
\or %
- \ifgre@haslinefive %
+ \ifnum\gre@count@stafflines>4\relax
\gre@fontchar@custostoplong %
\else %
\gre@fontchar@custosbottomlong %
\fi %
\or %
- \ifgre@haslinefive %
+ \ifnum\gre@count@stafflines>4\relax
\gre@fontchar@custostopshort %
\else %
- \ifgre@haslinefour %
+ \ifnum\gre@count@stafflines>3\relax
\gre@fontchar@custosbottomshort %
\else %
\gre@fontchar@custosbottommiddle %
@@ -750,7 +750,7 @@
\fi %
\or\gre@fontchar@custosbottomlong %
\or %
- \ifgre@haslinefive %
+ \ifnum\gre@count@stafflines>4\relax
\gre@fontchar@custosbottomshort %
\else %
\gre@fontchar@custosbottommiddle %
@@ -1637,8 +1637,8 @@
+ \gre@space@dimen@spacebeneathtext %
+ \gre@space@dimen@spacelinestext %
+ \gre@dimen@currenttranslationheight %
- + \gre@stafflines\gre@dimen@interstafflinespace %
- + \gre@stafflines\gre@dimen@stafflineheight)\relax%
+ + \gre@count@stafflines\gre@dimen@interstafflinespace %
+ + \gre@count@stafflines\gre@dimen@stafflineheight)\relax%
\or % 1
\gre@dimen@glyphraisevalue=%
\dimexpr(\gre@dimen@additionalbottomspace %
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-spaces.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-spaces.tex
index c16ca2b2483..a10db25bb76 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-spaces.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-spaces.tex
@@ -19,7 +19,7 @@
% this file contains definitions of spaces
-\gre@declarefileversion{gregoriotex-spaces.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-spaces.tex}{6.1.0-beta2}% GREGORIO_VERSION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% macros for tuning penalties
@@ -231,8 +231,8 @@
\def\gre@calculate@staffheight{%
\gre@trace{gre@calculate@staffheight}%
\global\gre@dimen@staffheight = \dimexpr %
- \gre@stafflines\gre@dimen@stafflineheight %
- + \gre@stafflines\gre@dimen@interstafflinespace %
+ \gre@count@stafflines\gre@dimen@stafflineheight %
+ + \gre@count@stafflines\gre@dimen@interstafflinespace %
- \gre@dimen@interstafflinespace\relax%
\relax %
\gre@trace@end%
@@ -733,7 +733,7 @@
\global\gre@isonalinetrue%
\or\gre@count@temp@three=\number 8%
\or\gre@count@temp@three=\number 9%
- \ifgre@haslinethree %
+ \ifnum\gre@count@stafflines>2\relax
\global\gre@isonalinetrue%
\else %
\ifgre@ledgerline@above %
@@ -742,10 +742,10 @@
\fi %
\or\gre@count@temp@three=\number 10%
\or\gre@count@temp@three=\number 11%
- \ifgre@haslinefour %
+ \ifnum\gre@count@stafflines>3\relax
\global\gre@isonalinetrue%
\else %
- \ifgre@haslinethree %
+ \ifnum\gre@count@stafflines>2\relax
\ifgre@ledgerline@above %
\global\gre@isonalinetrue%
\fi %
@@ -753,10 +753,10 @@
\fi %
\or\gre@count@temp@three=\number 12%
\or\gre@count@temp@three=\number 13%
- \ifgre@haslinefive %
+ \ifnum\gre@count@stafflines>4\relax
\global\gre@isonalinetrue%
\else %
- \ifgre@haslinefour %
+ \ifnum\gre@count@stafflines>3\relax
\ifgre@ledgerline@above %
\global\gre@isonalinetrue%
\fi %
@@ -764,7 +764,7 @@
\fi %
\or\gre@count@temp@three=\number 14%
\or\gre@count@temp@three=\number 15%
- \ifgre@haslinefive %
+ \ifnum\gre@count@stafflines>4\relax
\ifgre@ledgerline@above %
\global\gre@isonalinetrue%
\fi %
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-syllable.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-syllable.tex
index 106cf34c8b7..729b69bfc58 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-syllable.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-syllable.tex
@@ -19,7 +19,7 @@
% this file contains definitions of the glyphs and the syllables
-\gre@declarefileversion{gregoriotex-syllable.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-syllable.tex}{6.1.0-beta2}% GREGORIO_VERSION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% macros for the typesetting of the different glyphs
@@ -154,16 +154,21 @@
% #7 is the line:char:column for a textedit link
\def\GreGlyph#1#2#3#4#5#6#7{%
\gre@newglyphcommon %
+ % Create box containing the new glyph.
\setbox\gre@box@temp@width=\hbox{\gre@pointandclick{\gre@font@music #1}{#7}}%
\global\gre@dimen@lastglyphwidth=\wd\gre@box@temp@width %
% 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 %
+ % #5 contains things like ledger lines, but also calls to \GreGlyphHeights
#5\relax %
\kern-\gre@skip@temp@one %
\gre@calculate@glyphraisevalue{#2}{0}{}%
\raise\gre@dimen@glyphraisevalue%
- \copy\gre@box@temp@width%
+ % Since \gre@box@temp@width was created before the calls
+ % to \GreGlyphHeights, we need to rebox it to
+ % set \gre@attr@glyph@top and \gre@attr@glyph@bottom correctly.
+ \hbox{\unhcopy\gre@box@temp@width}%
\ifgre@endofscore\else\ifgre@boxing\else %
#3%
\fi\fi %
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.lua b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.lua
index 9db5e3cb462..dc3228714af 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.lua
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.lua
@@ -19,7 +19,7 @@
-- this file contains lua functions to support signs used by GregorioTeX.
--- GREGORIO_VERSION 6.1.0-beta1
+-- GREGORIO_VERSION 6.1.0-beta2
local err = gregoriotex.module.err
local warn = gregoriotex.module.warn
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.tex
index f4ba3febff4..2d818989dbd 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex-symbols.tex
@@ -22,7 +22,7 @@
\ifcsname gregoriotex@symbols@loaded\endcsname\endinput\fi%
\def\gregoriotex@symbols@loaded{}%
-\gre@declarefileversion{gregoriotex-symbols.tex}{6.1.0-beta1}% GREGORIO_VERSION
+\gre@declarefileversion{gregoriotex-symbols.tex}{6.1.0-beta2}% GREGORIO_VERSION
\RequireLuaModule{gregoriotex}%
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.lua b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.lua
index 99e6e8a4d73..c2da7f6780a 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.lua
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.lua
@@ -24,13 +24,13 @@ local hpack, traverse, traverse_id, has_attribute, count, remove, insert_after,
gregoriotex = gregoriotex or {}
local gregoriotex = gregoriotex
-local internalversion = '6.1.0-beta1' -- GREGORIO_VERSION (comment used by VersionManager.py)
+local internalversion = '6.1.0-beta2' -- GREGORIO_VERSION (comment used by VersionManager.py)
local err, warn, info, log = luatexbase.provides_module({
name = "gregoriotex",
- version = '6.1.0-beta1', -- GREGORIO_VERSION
+ version = '6.1.0-beta2', -- GREGORIO_VERSION
greinternalversion = internalversion,
- date = "2025/02/10", -- GREGORIO_DATE_LTX
+ date = "2025/02/17", -- GREGORIO_DATE_LTX
description = "GregorioTeX module.",
author = "The Gregorio Project (see CONTRIBUTORS.md)",
copyright = "2008-2025 - The Gregorio Project",
@@ -163,7 +163,7 @@ local function gregorio_exe()
local exe_version
-- first look for one with the exact version
- real_gregorio_exe = 'gregorio-6_1_0-beta1' -- FILENAME_VERSION
+ real_gregorio_exe = 'gregorio-6_1_0-beta2' -- FILENAME_VERSION
local cmd = string.format([[%s -o "%%s" "%s"]], real_gregorio_exe,
test_snippet_filename)
exe_version = get_prog_output(cmd, '*line')
@@ -476,11 +476,10 @@ end
local function dump_nodes_helper(head, indent)
local dots = string.rep('..', indent)
for n in traverse(head) do
- local ids = format("%s", has_attribute(n, part_attr))
+ local ids = format("%s", has_attribute(n, glyph_id))
if node.type(n.id) == 'penalty' then
- log(dots .. "%s=%s {%s}", node.type(n.id), n.penalty, ids)
+ log(dots .. "%s %s {%s}", node.type(n.id), n.penalty, ids)
elseif n.id == whatsit and n.subtype == user_defined_subtype and n.user_id == marker_whatsit_id then
- log("marker-whatsit %s", n.value)
log(dots .. "marker-whatsit %s", n.value)
elseif n.id == glyph then
local f = font.fonts[n.font]
@@ -490,9 +489,11 @@ local function dump_nodes_helper(head, indent)
end
log(dots .. "glyph %s {%s}", charname, ids)
elseif n.id == rule then
- log(dots .. "rule subtype=%s width=%spt height=%spt depth=%spt", n.subtype, n.width/65536, n.height/65536, n.depth/65536)
+ log(dots .. "rule [%s] width=%.2fpt height=%.2fpt depth=%.2fpt", n.subtype, n.width/2^16, n.height/2^16, n.depth/2^16)
+ elseif n.id == hlist or n.id ==vlist then
+ log(dots .. "%s [%s] width=%.2fpt height=%.2fpt depth=%.2fpt shift=%.2fpt {%s}", node.type(n.id), n.subtype, n.width/2^16, n.height/2^16, n.depth/2^16, n.shift/2^16, ids)
elseif n.id == glue then
- log(dots .. "glue subtype=%s width=%spt", n.subtype, n.width/65536)
+ log(dots .. "glue [%s] width=%.2fpt", n.subtype, n.width/2^16)
else
log(dots .. "node %s [%s] {%s}", node.type(n.id), n.subtype, ids)
end
@@ -720,9 +721,6 @@ end
local function post_linebreak(h, groupcode, glyphes)
-- TODO: to be changed according to the font
local lastseennode = nil
- local adddash = false
- local currentfont = 0
- local currentshift = 0
local centerstartnode = nil
local line_id = nil
local line_top = nil
@@ -754,6 +752,7 @@ local function post_linebreak(h, groupcode, glyphes)
line_bottom = nil
line_has_translation = false
line_has_abovelinestext = false
+
for n in traverse_id(hlist, line.head) do
syl_id = has_attribute(n, syllable_id_attr) or syl_id
if has_attribute(n, center_attr, startcenter) then
@@ -764,32 +763,12 @@ local function post_linebreak(h, groupcode, glyphes)
else
center_translation(centerstartnode, n, line.glue_set, line.glue_sign, line.glue_order)
end
- elseif has_attribute(n, dash_attr, potentialdashvalue) then
- adddash=true
- lastseennode=n
- currentfont = 0
- -- we traverse the list, to detect the font to use,
- -- and also not to add an hyphen if there is already one
- for g in node.traverse_id(glyph, n.head) do
- if currentfont == 0 then
- currentfont = g.font
- end
- if g.char == hyphen or g.char == 45 then
- adddash = false
- end
- end
- if currentshift == 0 then
- currentshift = n.shift
- end
- -- if we encounter a text that doesn't need a dash, we acknowledge it
- elseif has_attribute(n, dash_attr, nopotentialdashvalue) then
- adddash=false
end
-
+
if new_score_heights then
local glyph_id = has_attribute(n, glyph_id_attr)
- local glyph_top = has_attribute(n, glyph_top_attr) or 9 -- 'g'
- local glyph_bottom = has_attribute(n, glyph_bottom_attr) or 9 -- 'g'
+ local glyph_top = has_attribute(n, glyph_top_attr) or 7 -- 'e' = \gre@pitch@dummy
+ local glyph_bottom = has_attribute(n, glyph_bottom_attr) or 7 -- 'e' = \gre@pitch@dummy
if glyph_id and glyph_id > prev_line_id then
if not line_id or glyph_id > line_id then
line_id = glyph_id
@@ -812,13 +791,7 @@ local function post_linebreak(h, groupcode, glyphes)
is_mark(n, abovelinestext_mark)
end
end
- if adddash==true then
- local dashnode, hyphnode = getdashnnode()
- dashnode.shift = currentshift
- hyphnode.font = currentfont
- insert_after(line.head, lastseennode, dashnode)
- addash=false
- end
+
if line_id then
new_score_heights[prev_line_id] = { linenum, line_top, line_bottom,
line_has_translation and 1 or 0,
@@ -830,8 +803,6 @@ local function post_linebreak(h, groupcode, glyphes)
new_score_last_syllables[syl_id] = syl_id
end
end
- -- we reinitialize the shift value, because it may change according to the line
- currentshift=0
end
end
@@ -871,7 +842,43 @@ local function post_linebreak(h, groupcode, glyphes)
end
end
end
-
+
+ -- Look for words that are broken across lines and insert a hyphen
+ for line in traverse_id(hlist, h) do
+ if has_attribute(line, dash_attr) then
+ -- Look for the last node that has dash_attr > 0
+ local adddash=false
+ for n in traverse_id(hlist, line.head) do
+ -- If a syllable is not word-final, it may need a dash if it
+ -- ends up being line-final.
+ -- Note: This also loops over translations, but translations
+ -- come before lyrics, so they should never become lastseennode
+ if has_attribute(n, dash_attr, potentialdashvalue) then
+ adddash=true
+ lastseennode=n
+ -- if we encounter a text that doesn't need a dash, we acknowledge it
+ elseif has_attribute(n, dash_attr, nopotentialdashvalue) then
+ adddash=false
+ end
+ end
+
+ -- If the last syllable needed a dash, add it
+ if adddash then
+ local lastglyph
+ -- we traverse the list, to detect the font to use,
+ -- and also not to add an hyphen if there is already one
+ for g in node.traverse_id(glyph, lastseennode.head) do
+ lastglyph = g
+ end
+ if not (lastglyph.char == hyphen or lastglyph.char == 45) then
+ local dashnode, hyphnode = getdashnnode()
+ hyphnode.font = lastglyph.font
+ insert_after(lastseennode.head, lastglyph, dashnode)
+ end
+ end
+ end
+ end
+
--dump_nodes(h)
-- due to special cases, we don't return h here (see comments in bug #20974)
return true
@@ -1290,6 +1297,7 @@ local function include_score(input_file, force_gabccompile, allow_deprecated)
glog_file = string.format("%s%s-%s.glog", output_dir, cleaned_filename,
internalversion:gsub("%.", "_"))
compile_gabc(gabc_file, gtex_filename, glog_file, allow_deprecated)
+ gtex_filename = lfs.normalize(gtex_filename)
tex.print(string.format([[\input %s\relax]], gtex_filename))
return
else
@@ -1298,6 +1306,7 @@ local function include_score(input_file, force_gabccompile, allow_deprecated)
end
end
if not gabc_file then
+ gtex_file = lfs.normalize(gtex_file)
tex.print(string.format([[\input %s\relax]], gtex_file))
return
end
@@ -1320,6 +1329,7 @@ local function include_score(input_file, force_gabccompile, allow_deprecated)
elseif force_gabccompile then
compile_gabc(gabc_file, gtex_file, glog_file, allow_deprecated)
end
+ gtex_file = lfs.normalize(gtex_file)
tex.print(string.format([[\input %s\relax]], gtex_file))
return
end
@@ -1641,7 +1651,9 @@ local function adjust_line_height(inside_discretionary, for_next_line)
if for_next_line then
local last = score_heights['last']
if last then
- local target_id = tex.getattribute(glyph_id_attr) + 1
+ -- Let target_id be the glyph_id of the last glyph on this line.
+ -- Then heights[target_id] is the information for the next line.
+ local target_id = tex.getattribute(glyph_id_attr)
while target_id <= last do
heights = score_heights[target_id]
if heights then break end
diff --git a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.tex b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.tex
index dda44127cd2..ba0b176541a 100644
--- a/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.tex
+++ b/Master/texmf-dist/tex/luatex/gregoriotex/gregoriotex.tex
@@ -21,7 +21,7 @@
% This file needs to be marked with the version number. For now I've done this with the following comment, but we should check to see if PlainTeX has something similar to the version declaration of LaTeX and use that if it does.
-% [2025/02/10 v6.1.0-beta1 GregorioTeX system.]% PARSE_VERSION_DATE_LTX
+% [2025/02/17 v6.1.0-beta2 GregorioTeX system.]% PARSE_VERSION_DATE_LTX
\input iftex.sty
\RequireLuaTeX%