Instant chant engraving with Gregorio
  • Jeffrey TuckerJeffrey Tucker
    Posts: 3,596
    we do have http://wiki.musicasacra.com and it is completely unused. So this might work.

    I'm still having some trouble. Here is a Psalm from AVOZ I was experimenting with. There is a problem with the punctum cavum on watercourses; the line doesn't break. Here is my complete gabc file. Please critique this code so that I can learn.

    name: Psalm 65;
    commentary: Arlene Oost-Zinner;
    initial-style: 1;
    annotation: VI;
    %%
    (c4)The(f) seed(h) that(j) falls(ih) on(g) good(fg) ground(g.) (,)will(f) yield(gh) a(h) fruit-(fe)ful(d) har-(f)vest.(f.) (::ZZ)

    You(f) have(gh) visited the land and wa-(hr)tered(gr) it;(g.) (,) greatly have you(hr) en-(g)riched(h) it.(f.) (:) God's watercourses are filled;(hr) (,) you have(hr) pre-(f)pared(gh) the(g) grain.(f.) (::Z)

    Thus(f) have(gh) you prepared(hr) the(gr) land;(g.) (,) drenching(hr) its(g) fur-(h)rows;(f.) (:) breaking up its clods,(hr) (,) softening it with show-(hr)ers, bless(gh)ing(g) its(fr) yield.(f.) (::Z)

    You(f)have(gh) crowned the year with your(hi) boun-(gr)ty,(g.) (,) and your paths overflow with a(hr) rich(g) harv-(h)vest;(f.) (:) untilled meadows overflow with it,(hr) (,) and rejoic-(hr)ing(f) cloth-(gh)es(g) the(fr) hills.(f.) (::Z)

    The(f) fields(gh) are garmented with flocks and the valleys blanket-(hr)ed(g) with(h) grain.(f.) (:) They shout(hr) and(f) sing(gh) for(g) joy.(f.) (::)
    Thanked by 1eft94530
  • Mark M.Mark M.
    Posts: 631
    I was just looking at the Gregorio tutorial (this page, specifically).

    Maybe try this code where you need the line break:

    (z)
  • Jeffrey TuckerJeffrey Tucker
    Posts: 3,596
    That worked!
  • chonakchonak
    Posts: 9,101
    If you explicitly control the line break with the (z) character, and then change the page width or font size, you can end up with irregular results.

    Another approach is to put the punctum cavum explicitly on the first word in the series, and then put empty () pairs afterward like this:

    God's(hr) watercourses() are() filled;() (,)

    That leaves more flexibility for Gregorio to decide where to break the line.

    ---

    About caecilia-project.org, Andrew Hinkley created that and presumably still has his collection of GABC files.

    ---
    As for host names, there's no reason why you couldn't define a host name such as chantfiles.musicasacra.com . (wiki.musicasacra.com might be worth saving for a text-based wiki project.)
    Thanked by 1eft94530
  • Jeffrey TuckerJeffrey Tucker
    Posts: 3,596
    Ok, continuing the tutorial, what about adding space between verses to visually separate them? And what about that fancy R thing that indicates where to return to the Antiphon?
  • newmanbenewmanbe
    Posts: 76
    Jeffrey:

    An upper-case Z will end the line without justifying the line (which I do not think is exactly what you were asking [Update: now that I actually looked at the example, I know it is not what you are looking for; to add white space between the lines, you would either have to edit the TeX output or have multiple gabc files]).

    ℟ (the crossed R) can be entered as follows: <sp>R/</sp>
  • Jeffrey TuckerJeffrey Tucker
    Posts: 3,596
    You know what I find to be the biggest problem with Gregorio? Typos are really really hard to spot. This is because everything looks so beautiful in the output. It seems like it just has to be right 100%. You find yourself having to sing very critically in order to spot problems.
  • Jeffrey TuckerJeffrey Tucker
    Posts: 3,596
    By the way, this was my final output file

    name: Psalm 65;
    commentary: Arlene Oost-Zinner;
    initial-style: 1;
    annotation: VI;
    %%

    (c4)The(f) seed(h) that(j) falls(ih) on(g) good(fg) ground(g.) (,)
    will(f) yield(gh) a(h) fruit-(fe)ful(d) har-(f)vest.(f.) (::Z)

    You(f) have(gh) visited the land and wa-(hr)tered(gr) it;(g.) (,)
    greatly have you(hr) en-(g)riched(h) it.(f.) (:)
    God's(hr) watercourses() are() filled;() (,)
    you(hr) have() pre-(f)pared(gh) the(g) grain.(f.)R/ (::Z)

    Thus(f) have(gh) you prepared(hr) the(gr) land;(g.) (,)
    drenching(hr) its(g) fur-(h)rows;(f.) (:)
    breaking up its clods,(hr) (,)
    softening(hr) it() with() show-()ers,(f) bless-(gh)ing(g) its(fr) yield.(f.)R/ (::Z)

    You(f)have(gh) crowned the year with your(hr) boun-(gr)ty,(g.) (,)
    and(hr) your() paths() overflow() with() a() rich(g) harv-(h)vest;(f.) (:)
    untilled(hr) meadows() overflow() with() it,() (,)
    and(hr) rejoic-()ing(f) cloth-(gh)es(g) the(fr) hills.(f.)R/ (::Z)

    The(f) fields(gh) are(hr) garmented() with() flocks() and() the() valleys() blanket-()ed(g) with(h) grain.(f.) (:)
    They shout(hr) and(f) sing(gh) for(g) joy.(f.)R/ (::)
  • newmanbenewmanbe
    Posts: 76
    .
  • Jeffrey TuckerJeffrey Tucker
    Posts: 3,596
    I'm also told that you can use

    centering-scheme: english;
  • I've just started using this, too, and it's fantastic! My favorite feature is the margin cropping, as I am not familiar enough with Tex to be able to format a book with it, and thus restricted to inserting the chants as graphics into another word processing program.
  • Mark M.Mark M.
    Posts: 631
    Still thoroughly enjoying Chonak's Gregorio interface!

    I sort of wish that there was some sort of warning that would pop up when you try to close or quit out of the Gregorio window. I know it would probably be annoying to some extent, but it was really frustrating when I had just about perfected some Gregorio code and then had inadvertently closed the window… poof!

    And I'm curious if there really is enough of a threat to warrant that captcha ("please complete this sum") box.

    Gotta get back to some code here!
  • chonakchonak
    Posts: 9,101
    Sorry for the inconvenience of the arithmetic test, but I've seen my blog server (running on the same machine) occasionally come under automated overload attacks, so I put this test in as a precaution.
  • BenBen
    Posts: 3,100
    Mark M,

    One trick I often use for situations like that is to compose the code in notepad, and then copy/paste it into the browser. It works well in other situations too.
    Thanked by 1eft94530
  • Mark M.Mark M.
    Posts: 631
    Yeah, I've sorta been doing that. I find myself, though, staying within the interface window… tweaking the code and seeing what changes result. Then, I try to remember to save the "final" code in a TextEdit document. (I'm on a Mac.)
  • BenBen
    Posts: 3,100
    I couldn't find it anywhere in the gabc or gregorio documentation, so I'll ask veterans here:

    How do you make a dashed bar line with gabc?
  • smvanroodesmvanroode
    Posts: 1,092
    There is no option for a dashed bar line in gabc (but someone please correct me if I'm wrong), and I think it is because Gregorian chant doesn't know dashed bar lines. At least, I have never seen them before.
  • BenBen
    Posts: 3,100
    Hmmm... I was talking to Aristotle Esguerra today, and he said you'd use them in a situation like this psalm that I'm singing next Friday (attached. The alleged dotted bar goes where the half bar currently is). The idea is that you only sing what's before the dashed bar on the first line of each verse (in my case on "I will", "you have", and "but the"). On the other times, you start at the bar ("I will", "the nations", "he will") and skip the "incipit".

    Idk... I guess I'll talk to Aristotle about it next time I see him.
    Oct 7 - Our Lady of the Rosary, Responsorial Psalm, Yr A.pdf
    129K
  • Actually, there would be no dashed bar at all to indicate this — in my experience, the practice of singing the incipit (or not) would be an understood custom.

    In the singing of the Divine Office in Latin, the chanting of psalmody employs the incipit for the first line of the first verse after the antiphon. For the Benedictus, Magnificat, and Nunc Dimittis (when able), the incipit is chanted at every verse. The responsorial psalm that Ben posted employs the pattern used in the former.
  • BenBen
    Posts: 3,100
    Whoops... I guess I misunderstood you yesterday. My mistake :)
  • Here is a short, easy-to-follow Video Tutorial on "How do I use Gregorio?"

    Veronica Brandt is also posting several more on the CCW Blog -- some she's posted already, and I understand more are coming.
  • chonakchonak
    Posts: 9,101
    By the way, finally I took out the arithmetic test.
  • chonakchonak
    Posts: 9,101
    The Gregorio server at http://run.gregoriochant.org/ is now running version 5.0.1.
  • Thank you, Richard! Are there any changes or new features that we might expect to see with this new version?
  • chonakchonak
    Posts: 9,101
    There are various bug fixes; some changes involve features that aren't used in the web site implementation. Here are excerpts from the change log for version 5.

    1. The header line "initial-style" is no longer available. This functionality is now performed by the \gresetinitiallines TeX command. (not implemented in the web site).

    2. As of version 5.0, ledger lines are extended through notes on either side of a ledger line that crosses a stem, as long as the notes are within the same element.

    It may not produce the exactly desired results. In order to get the results you want, you can override the automatic behavior in gabc:

    [oll:1] will force an over-the-staff ledger line on a note.
    [oll:0] will suppress an over-the-staff ledger line on a note.
    [ull:1] will force an under-the-staff ledger line on a note.
    [ull:0] will suppress an under-the-staff ledger line on a note.
    The other oll and ull forms take precendence over and will interfere with the above settings, so if you are using them, you may need to adjust them to get the output you want.

    Note: You may need to use a construct such as /! to keep notes that are separated in the same element. For example, abcV is two elements (ab and cV), so the ledger line on b is not extended to cV. In contrast, ab/!cV is one element, so the ledger line on b is extended to cV.

    3. As of version 5.0, when the note after the oriscus is at the same pitch as the oriscus, the oriscus will point towards the first non-unison note after the oriscus or downwards if at the end of the score. Use the 0 (for downwards) 1 (for upwards) modifiers to force a different orientation.

    4. As of version 5.0, elisions after a vowel centering prefix will not cause the center to be placed on the vowel at the end of the prefix. Since elisions are unvoiced vowels, this makes more sense than the previous behavior. However, if this change does not produce your desired output, you may surround the center manually with { and } in gabc.

    5. The printing of the commentary box is no longer tied to the printing of the inital. As a result it is now possible to have a score which has a commentary but not an initial.

    6. Dynamic line spacing when a clef change occurs at the end of a line is fixed so that the line after the clef change is spaced appropriately.

    7. Glyphs for pes quadratum shapes with initio debilis are no longer missing. Use -fqg to engrave them.

    8. Horizontal episemata bridge spaces more correctly. As mentioned earlier, you can prevent this by appending 2 to the _ on the note before the space you do not want bridged.

    9. A rising note after an oriscus flexus will no longer generate a porrectus.

    10. Translation text in a syllable with a trailing (forced) hyphen is no longer truncated to its first character.

    11. A trailing (forced) hyphen in a syllable no longer generates a forced hyphen in the previous syllable.

    12. A trailing space on a header line is now ignored (see #1269).

    13. A pes whose second note is an oriscus now obeys the oriscus orientation rules.

    14. Default spaces have been adjusted.

    15. Notes are now left-aligned as if all clefs had the same width as the largest clef in the score. You can get previous behavior back with \grebolshiftcleftype{current}, or temporary force alignment until the end of a score with \grelocalbolshiftcleftype. See Documentation of these functions.

    16. A clef change immediately before a line break (z) will now typeset the new clef at the beginning of the next line. An explicit custos (z0) immediately before such a clef change (or separated by only a bar) will be suppressed.

    17. 9 new St. Gall neume glyphs have been added to the gregall font. 5 new St. Gall neume glyphs have been added to the gresgmodern font.

    18. The left stem of Dominican plicae on lines has been shortened.

    19. Clefs on the top or bottom line adjust the spacing as if there were a note above the top line or below the bottom line, respectively.

    20. More cavum shapes are now available. To use them, simply add r in gabc to any note in a glyph.

    21. Square brackets can be placed around notes by using [[ and ]] to surround said notes in gabc.

    23. a font grelaon for Laon style adiastematic notation has been added (see GregorioNabcRef.pdf for details). This is a preview, backward incompatible change are possible in future releases.

    24. Musica ficta signs: Add r6, r7, and r8 to a note for a flat, natural, or sharp (respectively) above the note.

    25. A tag may be added to a syllable to indicate that its text should not overlap any previous syllable.

    26. More general support for protrusions. The tag in gabc indicates where a protrusion should begin. There is an optional argument that allows the protrusion factor to be specified (in this example, .5). Additionally, the comma, semicolon, colon, and period are automatically protruded, with configurable protrusion factors. See GregorioRef for more information.

    27. [nocustos] may be used in gabc to prevent a custos should the line end at that point.

  • Josh
    Posts: 109
    Many, many thanks for this wonderful Gregorio interface, which is of the greatest benefit to me and the small schola I look after!

    One question - until a year or so ago, I could insert a translation underneath the text, with the translation appearing in italics; but when I now try to do so, all the text and all the translation appears in italics. Is this a bug of some sort?

    I am not very computer literate so I haven't been able to work out how to download Gregorio, so your online interface is a lifeline!
    Thanked by 1Ralph Bednarz
  • chonakchonak
    Posts: 9,101
    If you post a short example pf gabc code to illustrate the problem, I can confirm it. If there is a malfunction we can ask the developers about it.
  • Josh
    Posts: 109
    To my great surprise, when I went to find an example, I discovered that this function now works again - many thanks, and apologies!
  • Ousier
    Posts: 3
    Dear Chonak, thank you soooooo much for this treasure ! I discovered it about 5 months ago, and I started coding some scores (mozzarabic lamentationes, lectiones...). I even mixed gregorian with some Finale modern notation scores, that is very useful for my little french choir, to sing for instance Popule Meus by Victoria with the gregorian Reproaches.
    I have a question : is it possible to modify the margins (a balance between crop margins and the default ones) ? I tried on Adobe pro but it seems to be impossible...
    I now that it is possible on Gregorio, but after having tried for 1 month I didn't manage to produce anything good, i'm not good enough in English and informatic.
    Any help would be great !
  • chonakchonak
    Posts: 9,101
    There isn't an option to adjust the margins on the site at gregoiochant.org. You can change the paper size and get a PDF that is, for example, 6"x9". It would be possible then to print that on conventional letter-sized paper.

    The other web site for running Gregorio has a feature for adjusting the width of the score, so you can try that:
    http://apps.illuminarepublications.com/gregorio/
  • Hugh
    Posts: 199
    Ousier,

    you mentioned en passant that you've done up a mixed Victoria/chant version of the Popule Meus. Have you made that available on the web? I'd very much appreciate a copy, as we've sung a mixed version for the last few years, and I decided on Good Friday this year that it would be good to have it all set out, to eliminate the trouble of going between Victoria and the chant. Happy Easter!
  • andreasadiandreasadi
    Posts: 16
    Hello.
    i need help how to create grego sheet by gabc natation and TexLive. i'm already instal and following instruction form both software, but nothing happen displaying my sheet.
    can someone help me?
    (ps: using illuminare need constant internet connection)
    PM me.
    thank you very much
  • chonakchonak
    Posts: 9,101
    You can use my web interface for gregorio without a constant internet connection:
    http://run.gregoriochant.org/
    (this URL replaces the former site name at gabrielmass.com)

    You can edit your GABC text file on your PC before you connect; then connect, use the web site, save the PDF output, and then disconnect.

    This will be easier than installing the software at home. Learning TeX is a lot of work, and I do not encourage beginners to bother with it.
    Thanked by 2eft94530 probe
  • chonakchonak
    Posts: 9,101
    Here, incidentally, is a free online course for learning LaTeX, when you get to the point of needing it: e.g., for typesetting articles or books:
    https://www.overleaf.com/latex/learn/free-online-introduction-to-latex-part-1
    Thanked by 2eft94530 bhcordova
  • andreasadiandreasadi
    Posts: 16
    all.
    i did it using TexLive and gregorio.
    it's work!! Finally!!
  • Ousier
    Posts: 3
    Hugh,
    I'm sooooo sorry for the delay ! I just saw today your answer...
    Here is my edition of Popule Meus. It's not complete, because I don't sing it entirely, we're not that much in my parish and i can't skip Crux Fidelis !
    Popule meus + grégorien 2 - Victoria.pdf
    243K
    Thanked by 1andreasadi
  • chonakchonak
    Posts: 9,101
    A little update to the online Gregorio processor: it now supports the undertie character ( ‿ ) , which is helpful for representing vowel elisions in Spanish.

    Here is a GABC example:

    name:Gloria (Misa VIII);
    %%
    (c3)GLO(h)ria‿{a}(fe) Dios(d) en(e) el(f) cie(e_)lo,(d_) \greheightstar(::) y‿{e}n(h) la(h) tie(f)rra(e) paz(d_) a(e) los(f) hom(e_)bres(d_) (,) que(d) a(d)ma(e) {e}l(f) Se(h)ñor.(ih..)

    and the site address is

    http://run.gregoriochant.org/

    Output looks like this:
    image

    As usual, let me know if anything about it doesn't seem to be working.
    gloria.png
    643 x 104 - 21K
    Thanked by 2CHGiffen mattfong
  • francis
    Posts: 11,183
    I am trying to open a GABC PDF file in illustrator to layout organ modern notation with GC notation above it. I cannot find the correct chant notation font in order to open the PDF so that it renders correctly. I downloaded fonts I found on the internet that I believe are Tex fonts. Are these the right ones? I am on a mac using Adobe CC.

    greciliae-hole.ttf
    greciliae-hollow.ttf
    greciliae-op-hole.ttf
    greciliae-op-hollow.ttf
    greciliae-op.ttf
    greextra.ttf
    gregall.ttf
    grelaon.ttf
    gresgmodern.ttf
  • chonakchonak
    Posts: 9,101
    Font files by those names are part of the standard Gregorio installation which is provided in the TexLive system.
    Thanked by 1francis
  • francis
    Posts: 11,183
    Hi Chonak

    I have these fonts but looks like i need gresym.ttf and greciliae.ttf... those are not in the list above, and i cannot find them anywhere... i found the .pfb versions, but they do not work.
  • chonakchonak
    Posts: 9,101
    I'll send a copy by e-mail.
    Thanked by 1francis
  • francis
    Posts: 11,183
    Just so people know the answer to my question posed above, the fonts for GABC do not resolve in Adobe apps... not sure if it is because of my computer or a font conflict. Thanks just the same chonak for your help.
  • francis
    Posts: 11,183
    Hi All (and Richard especially) :)

    I am using the Illuminare editor and want to reduce space between some of the words and syllables so that my lines fit neatly to the prescribed length. Is there a way to accomplish this? In typography it is called kerning. Would love to be able to do this in the gabc tool. Thanks.
  • a_f_hawkins
    Posts: 3,631
    francis - if you will excuse my correction, what you want to achieve is called tracking - changing the general spacing between letters (kerning is between particular pairs of letters, such as AW). I mention this in case it makes it easier to find any reference on how to do it.
    Thanked by 1francis
  • chonakchonak
    Posts: 9,101
    The on-line system at run.gregoriochant.org has a more recent edition of the Gregorio software than is at Illuminare, so you might try running your code there to see if the result might happen to produce more favorable spacing.

    There are many adjustable parameters in the GregorioTeX system that regulate the placement of objects, so it is conceivable that the spacing between words might be adjustable.

    To do customized use of Gregorio, you should install a copy of the TeXLive software edition on your PC; that will include the latest version of Gregorio. You'll need to learn to write document files for the LaTeX document processing system, and also use the available GregorioTeX macros to set the parameters you want to work with. If you're new to LaTeX, you can start with https://www.latex-tutorial.com/tutorials/ . The GregorioTeX macros are documented in this https://github.com/gregorio-project/gregorio/releases/download/v5.2.1/GregorioRef.pdf . It's 305 pages.
    Thanked by 1francis
  • -b
    Posts: 54
    Hello, Richard. It's been a while since I used Gregorio so I don't know if some codes have been changed. I have successfully created notation for a Versicle and Response, however with two mysteries left unsolved. 1. After some unacceptable versions, I ended up with the desired two staves instead of the Response continuing on the same staff until it was out of room and finished on a second staff. I don't know how this happened, but I'm glad that's taken care of. 2. I'm trying to get the V-slash and R-slash using the code Summary and it just ain't happening. I have for example, V/ for the Versicle on my code sheet. I've tried putting it in different places in the code. Annotation got it to a good place by the score but did output the V-slash that is customary for the Versicle. Much obliged for your attention.
  • chonakchonak
    Posts: 9,101
    The V/ and R/ have to be wrapped in an "sp" . . . "/sp" tag, like this:

    %%
    (c3)<sp>V/</sp>. {A}(h)do(h)rá(h)te(h) De(hi)um,(h_') (,)
    al(h)le(fe)lú(f_h)ia.(hiH'Ghih.ghG'FE'fggf.) (::Z)
    <sp>R/</sp>. {O}m(h)nes(h) An(h)ge(h)li(h) e(hi)jus,(h_') (,)
    al(h)le(fe)lú(f_h)ia.(hiH'Ghih.ghG'FE'fggf.) (::)
    image
    The initial-style setting was 0 (zero) for this example.
    Screenshot_20200727_202207.png
    448 x 228 - 13K
    Thanked by 1CHGiffen
  • Thank you for this wonderful tooll!!
    Blessings.
    Thanked by 1tomjaw
  • chonakchonak
    Posts: 9,101
    It's been on-line for ten years!
  • janetgorbitzjanetgorbitz
    Posts: 955
    Wow! has it been that long???