v4.2.0
It's taken a bit longer to get through the release cycle than normal, but hopefully this release of 4.2 is worth the wait.
Anyone who tested out one of the betas or release candidates for 4.2 is advised to uninstall that version before installing the stable release. For Mac users this means using the version of Uninstall-Gregorio*.pkg
which goes with the version you're uninstalling, not the one below. Users of 4.1 or earlier should have no problems upgrading to 4.2.
UPGRADE
Executable file name
In order to facilitate installation alongside TeX Live, the version number is now appended to the gregorio executable file name. In version 4.2.0, the filename is gregorio-4.2.0. If you run the executable directly, you will need to modify your procedures and/or scripts to use the new name. Alternately, creating a symbolic link, if your system supports it, may work for you.
If you auto-compile or force-compile your GABC files and are not using the Gregorio packaged with TeX Live, you will probably need to use the --shell-escape
option when compiling your .tex
files. Alternately, you can add the new filename to your system's shell_escape_commands
TeX option.
Unfortunately, there appears to be no easier way to let a user-installed Gregorio coexist with the TeX-Live-packaged Gregorio. Please note: in TeX Live 2016, which includes Gregorio 4.1.1, the executable filename does not include the version number, though that will change starting with TeX Live 2017.
Stemmed oriscus flexus orientation
As of version 4.2, the orientation of the stemmed oriscus flexus (gOe)
is consistent with the unstemmed oriscus flexus (goe)
in that the oriscus points downwards (since the note which follows is of lower pitch). If you prefer the oriscus to point upwards, you will need to use the 1
modifier (as in (gO1e)
), which will force an upward orientation of the oriscus.
Oriscus orientation at the unision
As of version 4.2, when the note after the oriscus is at the same pitch as the oriscus, the oriscus will point downwards by default. If you prefer it to point upwards, append the 1
modifier to force the upward orientation.
Podatus followed by a virga
As of version 4.2, a podatus followed by a virga of the same or higher pitch as the second note in the podatus (e.g., (eghv)
) will be kept together, disallowing a line break between the two shapes. If you would like to allow a line break between the two shapes, use a /
or some other breakable space between them (e.g., (eg/hv)
).
Penalties
As of version 4.2, the penalties should be changed by using \grechangecount
rather than the old way of redefining macros. The following tunable values are available (they have the same name as their old macro counterparts, minus the gre
):
brokenpenalty
clubpenalty
endafterbaraltpenalty
endafterbarpenalty
endofelementpenalty
endofsyllablepenalty
endofwordpenalty
finalpenalty
hyphenpenalty
looseness
newlinepenalty
nobreakpenalty
pretolerance
tolerance
widowpenalty
See GregorioRef for descriptions.
Additionally, if you were redefining \greemergencystretch
, you should now be changing the emergencystretch
dimension using the \grechangedim
command.
Custos with alteration
If the note following a custos has an alteration (flat, natural, or sharp), the custos will now also have that alteration typeset before it. If you prefer the old behavior, use \gresetcustosalteration{invisible}
. This setting may be switched to visible
and invisible
between scores.
Punctum inclinatum orientation
As of version 4.2, a different glyph is used for puncta inclinata in an ascent versus puncta inclinata in a descent. However, because the two shapes clash with each other, Gregorio will attempt to use the same shape for all notes within a string of puncta inclinata. This is accomplished by a heuristic algorithm that determines the glyph to use, but tastes differ, so you may override the shape by appending 0
(to force descending) or 1
(to force ascending) after the letter used for the punctum inclinatum.
Two additional distances have been added to handle strings of puncta inclinata which both ascend and descend. descendingpunctuminclinatumascendingshift
will be used between two descending punctum inclinatum glyphs which ascend in pitch, and ascendingpunctuminclinatumdescendingshift
will be used between two ascending punctum inclinatum glyphs which descend in pitch.
Styles spanning syllables
From version 4.2, gabc styles persist through syllables so you can now, for instance, style an entire verse differently from the rest of the piece by starting the style at the beginning of the verse and ending it at the end of the verse. This covers italics (<i>
), bold (<b>
), small capitals (<sc>
), underlined text (<ul>
), colored text (<c>
), and "teletype" text (<tt>
).
Prior to version 4.2, Gregorio inconsistenly indicated style errors. Now, errors like ending a style that is not started and starting a style that is already started will be caught more consistently. If you are getting errors to this effect, double-check the styles in your score to make sure that styles are started and ended properly.
CHANGELOG
[4.2.0] - 2016-09-23
Fixed
- When the note after an oriscus is at the same pitch, the oriscus will now point downwards by default (see #1177).
- When the last note in a score is not in the last syllable, it no longer merges into the (no-note) syllable(s) that follow (see #1205).
- A two-line initial on a two-line score no longer generates an error (see #1139).
- Staff lines after a two-line initial should now be sized correctly in a more consistent way (see #1141).
- Space at the end of line was not always correct when a line is cut in the middle of a word (see #1155).
- In rare cases, the very last bar or glyph of a score could appear alone at the beginning of the final line (see #1152).
- In cases of a syllable without note, the space between notes of the previous and next syllables was sometimes not enough (see #1137).
moraadjustment
andmoraadjustmentbar
did not scale when changing factor, they do now.- The
900_gregorio.xml
file for Scribus now matchesmain-lualatex.tex
again (see #1087). - Multiple subsequent lines in gabc no longer cause TeX to fail (see #1111).
- Old bar spacing algorithm will no longer separate the text and bar when the bar is preceeded by a puncutm mora (see #1078).
- Scores which end with a no-note syllable under the new bar spacing algorithm will no longer have their text pushed out into the right hand margin. See #1110.
- PlainTeX will now respect underline requests in gabc.
- PlainTeX will now raise a warning when small caps are requested but
\sc
has not been defined. - A manual custos at the end of the score will now be spaced like regular end of line custos #1034.
- Custos glyphs heights are now counted when adjusting line heights (see #961).
Added
- Some vertical spaces can now be adjusted for a particular line in a score. Use
\grechangenextscorelinedim
prior to including the score to set the desired values.spaceabovelines
,spacebeneathtext
, andspacelinestext
may be changed with this command. See GregorioRef and #1156 for details. - Nabc now supports pitches
hn
andhp
in addition to previously supportedha
throughhm
. - 32 new St. Gall neume glyphs have been added to the
gregall
font and glyphs for nabcpo-1pp2su1sux1
andpo-1su1sux1
have been changed. - 31 new St. Gall neume glyphs have been added to the
gresgmodern
font and glyph for nabctr-1
has been changed. - It is now possible to set
\parskip
,\lineskip
,\baselineskip
, and\lineskiplimit
to have different values within a score using\grechangedim
. See #1038. - It is now possible to invert the oriscus orientation on pes quassus and oriscus flexus shapes. Use
o0
oro1
to force the oriscus into the orientation you desire. It is also possible to fuse the oriscus from either direction in either orientation. See #898 and #972. - Formerly missing torculus figures starting with an oriscus are now rendered using neume fusion (see #1013).
- Gregorio will keep together (prevent line breaks between) a user-configurable number of notes (by default, 4) at the start and end of the syllable. Further, Gregorio will prevent line breaks in a syllable with fewer than a user-configurable number of notes (by default, 10). These values may be changed by using the
\gresetunbreakablesyllablenotes
command. See GregorioRef for details (for the change request, see #1044). - The visibility of notes and lyrics can now be toggled on an off using
\gresetlyrics
and\gresetnotes
. See #1039. - An alteration (flat, natural, or sharp) will now appear on a custos if the next note is so altered. Use
\gresetcustosalteration{invisible}
if you prefer the old behavior. See #1049. gregoriosyms.sty
andgregoriotex.tex
now contain definitions forgregoriocolor
andgrebackgroundcolor
and the appropriate score commands dealing with color now work under PlainTeX
Changed
- In order to facilitate installation alongside TeX Live, the version number is now appended to the gregorio executable file name. If you are running the executable directly in your custom scripts, you will need to change them to include the version number. If you are not using the TeX-Live-packaged version of Gregorio, you will probably need to use the
--shell-escape
option when compiling your.tex
files. Note that in TeX Live 2016, which includes Gregorio 4.1.1, the executable filename does not include the version number, though that will change starting with TeX Live 2017. See UPGRADE.md and #1197 for more information. - When the clef and the first note are at a reasonable vertical distance,
shortspaceafterlineclef
is used instead ofspaceafterlineclef
(make them equal if you don't want this feature). This is used only on the first line, when there is an initial on one line. See #1138. - When an alteration follows a bar, it is not completely taken into consideration in the new bar spacing algorithm (similarly to the punctum mora), this behavior can be tuned with the newly introduced space
alterationadjustmentbar
. See #1146. - Very small improvement in the design of the porrectus auctus and torculus resupinus auctus (see #1169).
- When the notes around a virgula or divisio minima are lower than two spaces below the top staff line, the spaces used are new shorter spaces with a
@short
suffix. To cancel this feature, make them the same as their normal version. See #1144. - Different glyphs are now used for puncta inclinata in an ascent versus in a descent. A heuristic algorithm is used to ensure that the glyphs match when grouped together. If the algorithm chooses the wrong shape, use
0
(for descending) or1
(for ascending) to force an orientation. See UPGRADE.md and #856 for details. - The shape of the fused oriscus at ambitus one in the greciliae font has been tweaked to form a nicer connection (see #1079).
- Syllables are now rewritten to improve ligature rendering. This may be disabled by issuing
\gresetsyllablerewriting{off}
. See GregorioRef for details (for the change request, see #1098). - Default mode style for PlainTeX no longer tries to invoke small caps since they are not defined by default.
- Italic, bold, underlined, small capital, teletype, and colored styles now span multiple syllables. Gregorio will also more consistently raise errors when styles are improperly started or ended. See UPGRADE.md and #1121 for details.
- The stemmed oriscus flexus
(gOe)
is now consistent with the unstemmed oriscus flexus(goe)
in that the oriscus points downward at the note that follows. If you prefer to have the oriscus point upward, use(gO1e)
for force upward orientation. - Space before a custos appearing in the middle of a line is now set by
spacebeforeinlinecustos
. - The space between two puncta inclinata at the unison may be tuned by changing
punctuminclinatumunisonshift
(see #1042). - A podatus followed by a virga
(eghv)
will now be kept together (no line break between the shapes), If you would like to allow a line break there, use(eg/hv)
instead (see UPGRADE.md and #1045). - Penalties must now be changed using the
\grechangecount
command. See GregorioRef and UPGRADE.md for details (for the change request, see #1021). \greemergencystretch
must now be set by changingemergencystretch
using\grechangedim
instead of redefining the macro.- An isolated stropha will now be considered part of the previous neume group and line breaks will be prevented at that point. In order to force a line break there, use a breaking space such as
/
before the stropha in gabc. See #1056. interwordspacetext
and it's related distances have been redefined to be smaller and dependent on a font based distance (ex
). They are also no longer scale with the staff size by default. See #1036 & gregoriot-test#208.\grecreatedim
and\grechangedim
can now be used to link two distances. To do this the second argument should be the name of the master distance and the third argument should beinherited
. See #962.
Removed
\grescorereference
\grenewlinepenalty
\grenobreakpenalty
\greendofwordpenalty
\greendofsyllablepenalty
\greendafterbarpenalty
\greendafterbaraltpenalty
\grefinalpenalty
\greendofelementpenalty
\grehyphenpenalty
\grebrokenpenalty
\grewidowpenalty
\greclubpenalty
\grelooseness
\gretolerance
\grepretolerance
\greemergencystretch