ANNOUNCEMENT — Gregorio 6.1 released

52 views
Skip to first unread message

Fr. Samuel Springuel

unread,
Mar 3, 2025, 9:14:17 AMMar 3
to noreply-spamdigest via Gregorio Users
This is the release intended to go into TeX Live 2025. It’s our first release in a few years and contains a number of improvements. The long-time developers would especially like to thank new contributor David Chiang for dealing inserting some fresh perspectives that have allowed features previously thought very difficult or impossible to be implemented.

# CHANGELOG
## [6.1.0] - 2025-02-28
### 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).
- Fixed the interaction between hyphens and styles. See [#1538](https://github.com/gregorio-project/gregorio/issues/1538).
- Fixed the loss of ongoing styles when a syllable starts with a forced center. See [#1551](https://github.com/gregorio-project/gregorio/issues/1551).
- Fixed first syllables of one letter with a style causing a segfault. See [#1585](https://github.com/gregorio-project/gregorio/issues/1585).
- 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 collide 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 write to the log file specified as an argument and to send all messages to it (except errors about opening the log file itself). See [#1541](https://github.com/gregorio-project/gregorio/issues/1541) and [#1628](https://github.com/gregorio-project/gregorio/issues/1628).
- Defined an output directory for gtex and glog files. Default is `tmp-gre`. This can be changed using `\gresetoutputdir{...}`. Fixes [#1393](https://github.com/gregorio-project/gregorio/issues/1393), [#1542](https://github.com/gregorio-project/gregorio/issues/1542), and [#1571](https://github.com/gregorio-project/gregorio/issues/1571).
- GregorioTeX no longer searches for and reuses existing gtex files using kpathsea; it only looks in the output directory.
- If gtex or glog files from other versions of gregorio are found either in the same directory as the gabc file or in the output directory, they are deleted.
- gabc.vim has been expanded into a proper vim plugin.

### Added
- Added a configurable setting `\gresetunisonbreakbehavior` to control automatic line breaks between unison notes above a syllable. Defaults to `breakable` for backwards compatibility, but may be set to `unbreakable` if that behavior is desired. See [#1504](https://github.com/gregorio-project/gregorio/issues/1504).
- Added the ability to fuse upwards to a virga. See [#1558](https://github.com/gregorio-project/gregorio/issues/1558)
- Added the ability to use the "stroke" form of a clivis instead of the default two-notes form by specifying `[shape:stroke]` after the clivis to change. See [#1558](https://github.com/gregorio-project/gregorio/issues/1558)
- Allow `\gresetinitiallines{n}` where `n` is any number of lines (a non-negative integer). The manual linebreaks (`z`) that used to be required for 2-line initials are no longer required. See [#1488](https://github.com/gregorio-project/gregorio/issues/1488). Added new options `\gresetinitialanchor` and `\gresetinitialposition` to control the placement of initials.
- Added new alterations: soft flat (X) and sharp (##), which appear when there is no previous flat or sharp (respectively) in effect, and soft natural (Y), which appears when there is a previous flat or sharp in effect. A new option `\gresetalterationeffect` determines what the "effect" of an alteration is. It defaults to `line`, which is useful for Dominican chant. See [#157](https://github.com/gregorio-project/gregorio/issues/157) and also [#1575](https://github.com/gregorio-project/gregorio/issues/1575).
- 9 new St. Gall neume glyphs have been added to the `gregall` font.

# UPGRADE
## 6.1

### Multiline initials

Initial letters that are 2 lines high used to require manual linebreaks (`z`), but no longer do. The alignment of 2-line initial letters has changed slightly and may need to be adjusted. Further, initials can now span over an arbitrary number of lines.

### Soft alterations

GABC now has some new alterations: soft flat (`X`) and sharp (`##`), which appear when there is no previous flat or sharp (respectively) in effect, and soft natural (`Y`), which appears when there is a previous flat or sharp in effect. A new option `\gresetalterationeffect` determines what the "effect" of an alteration is. It defaults to `line`, meaning that an alteration's effect extends to the end of the line. Thus, for Dominican chant, type a soft flat (`X`) in front of _every_ note that is to be sung a half-step flat; naturals should also be soft (`Y`), but only naturals that cancel flats need to be typed.


# DOWNLOAD
For those willing to wait, TeX Live 2025 is scheduled for release on March 8 and this version of Gregorio will ship with that distribution. For those not willing to wait, you can get this release by obtaining the TeX Live 2025 pretest (https://www.tug.org/texlive/pretest.html) or from our GitHub page (https://github.com/gregorio-project/gregorio/releases/tag/v6.1.0).

✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝
Fr. Samuel, OSB
(R. Padraic Springuel)
St. Anselm’s Abbey
4501 South Dakota Ave, NE
Washington, DC, 20017
202-269-2300
(c) 202-853-7036

PAX ☧ ΧΡΙΣΤΟΣ

Matthew Roth

unread,
Mar 3, 2025, 12:06:01 PMMar 3
to gregori...@googlegroups.com
I’m very excited. Thanks to everyone who contributed. There’s been a flurry of activity, and that’s great news.

Stupid question (actually 2.5 of them); people can email me as they’re not strictly Gregorio Qs, but maybe others now or in the future have the same ones. 

1) can I run 6.1 with TexLive 2021?
1a) can you have 2 versions of a package (6.0 and 6.1 in my case) and switch to one as needed? Or does the later one cancel the earlier one?

2) TexLive is (in-)famous for not removing an existing installation. No big deal. But for testing and continuity purposes, how do you specify the version (on a per-document basis even). I run TexLive 2021 via MacTeX and with TeXShop as my editor. Didn’t feel the need to update since I was waiting for a new Gregorio release and trying to figure out my options. I believe that I can set TeXShop to run 2021 even if I install 2025, but I don’t think that I wish to do that, only on an ad hoc basis (I’ve got a few big projects for which continuity is essential).

Thanks in advance.

--
Gregorio homepage: http://gregorio-project.github.io
Archives for the old mailing list: http://www.mail-archive.com/gregori...@gna.org/
To report a bug, please post to: https://github.com/gregorio-project/gregorio/issues
---
You received this message because you are subscribed to the Google Groups "Gregorio Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gregorio-user...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/gregorio-users/97165166-E2D2-4B45-A4F7-5609DCA2E91D%40gmail.com.

Matthias Bry

unread,
Mar 3, 2025, 12:21:55 PMMar 3
to gregori...@googlegroups.com
This is redundant with matthew's question, but since I have manually altered the height of <alt> to work around the behavior described in [#1613], is there any way to preserve older behavior on this front?

In Christo,
Matthias

Rev. Elijah Schwab, O.Carm.

unread,
Mar 3, 2025, 2:20:12 PMMar 3
to gregori...@googlegroups.com
Matthias,

You would have to include the old definition of \GreGlyph in your document, given below. The downside of this is that you will also override future updates that may change this definition further. If you are only looking for backwards compatibility, and intend to make all new scores without your alt workaround, then this will get you by.

\makeatletter
\def\GreGlyph#1#2#3#4#5#6#7{%
  \gre@newglyphcommon %
  \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%
  \ifgre@endofscore\else\ifgre@boxing\else %
    #3%
  \fi\fi %
  \ifgre@firstglyph% we check if it is the first glyph
    \gre@calculate@notesaligncenter{#4}%
    \global\gre@firstglyphfalse%
  \fi%
  #6\relax %
  \directlua{gregoriotex.adjust_line_height(\gre@insidediscretionary)}%
  \gre@endofglyphcommon %
  \relax%
}%
\makeatother

Matthias Bry

unread,
Mar 3, 2025, 2:28:23 PMMar 3
to gregori...@googlegroups.com

Fr. Samuel Springuel

unread,
Mar 3, 2025, 7:19:54 PMMar 3
to noreply-spamdigest via Gregorio Users

> On Mar 3, 2025, at 12:05 PM, Matthew Roth <roth.m...@gmail.com> wrote:
>
> 1) can I run 6.1 with TexLive 2021?

I’ve not tested it, but I see no reason why you shouldn’t be able to.

> 1a) can you have 2 versions of a package (6.0 and 6.1 in my case) and switch to one as needed? Or does the later one cancel the earlier one?

It is possible to have multiple versions installed on the same system, but you’ll have to play some games to get them installed in different locations and then direct TeX to find the one you want to use. By default our installers target TEXMFLOCAL and that is specifically designed to be the same even between versions of TeX Live so that the stuff you install there carries from one year to the next.

>
> 2) TexLive is (in-)famous for not removing an existing installation. No big deal. But for testing and continuity purposes, how do you specify the version (on a per-document basis even). I run TexLive 2021 via MacTeX and with TeXShop as my editor. Didn’t feel the need to update since I was waiting for a new Gregorio release and trying to figure out my options. I believe that I can set TeXShop to run 2021 even if I install 2025, but I don’t think that I wish to do that, only on an ad hoc basis (I’ve got a few big projects for which continuity is essential).

On a Mac you can use the TeX Live Utility to specify which version of TeX is the default version. This program is installed by MacTeX so you should be able to find it in the TeX folder of your Applications. The option “Change Default TeX Live Version…” is in the Configure menu.


✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝

Matthew Roth

unread,
Mar 3, 2025, 7:30:52 PMMar 3
to gregori...@googlegroups.com
Thank you. I’ll look into this more but this is helpful as still a novice compared to some of you!

--
Gregorio homepage: http://gregorio-project.github.io
Archives for the old mailing list: http://www.mail-archive.com/gregori...@gna.org/
To report a bug, please post to: https://github.com/gregorio-project/gregorio/issues
---
You received this message because you are subscribed to the Google Groups "Gregorio Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gregorio-user...@googlegroups.com.

Fr. Samuel Springuel

unread,
Mar 3, 2025, 7:49:24 PMMar 3
to noreply-spamdigest via Gregorio Users
If you’re still a novice, then I don’t advise trying to manipulate the TEXMF tree too much. It can be tricky to get these manipulations right without being comfortable on the command line. If you can, stick to what is installed by TeX Live and then when you switch versions of TeX Live, you’ll switch the version of Gregorio at the same time.

If you absolutely need to have a different version of Gregorio than want comes with each version of TeX Live, then I would advise someone who isn’t comfortable at the command line to just keep copies of the installers around (older versions can be downloaded from GitHub) and simply reinstall Gregorio whenever you need to change versions. It’s not terribly convenient (and takes some extra time) but it’ll keep you from having to play with the command line.

✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝
Fr. Samuel, OSB
(R. Padraic Springuel)
St. Anselm’s Abbey
4501 South Dakota Ave, NE
Washington, DC, 20017
202-269-2300
(c) 202-853-7036

PAX ☧ ΧΡΙΣΤΟΣ

> To view this discussion visit https://groups.google.com/d/msgid/gregorio-users/CAEyUHDebttOSQqz942-ib-VeJCAQpKnf5e_3K9ofVyEDLNCA9g%40mail.gmail.com.

Reply all
Reply to author
Forward
0 new messages