Table of contents
gabc is a simple notation based exclusively on ASCII characters that enables the user to describe Gregorian chant scores. The name gabc was given in reference to the ABC notation for modern music.
The gabc notation was developed by a monk of the Abbey of Sainte Madeleine du Barroux and has been improved by Élie Roux and by other monks of the same abbey to produce the best possible notation.
A small summary has been created, you can download it here. You must have basics of gabc to understand it, but it can help you remember some notations. It is made to be printed on A5 paper.
There is also a "cheat sheet" available at gregoriochant.org.
Files written in gabc have the extension
.gabc and have the following structure:
name: incipit; gabc-copyright: copyright on this gabc file; score-copyright: copyright on the source score; office-part: introitus/...; occasion: in church calendar; meter: for metrical hymns; commentary: source of words; arranger: name of arranger; author: if known; date: xi c; manuscript: ms name; manuscript-reference: e.g. CAO reference; manuscript-storage-place: library/monastery; book: from which score taken; language: of the lyrics; transcriber: writer of gabc; transcription-date: 2009; mode: 6; initial-style: 1; user-notes: whatever other comments you wish to make; annotation: IN.; annotation: 6; %% (clef) text(notes)
In each case, replace whatever is between the colon and semi-colon
:...;) with the appropriate character string. Of these
name is mandatory. Descriptions of how
these header fields are intended to be used are below. If you wish to
write a value over several lines, omit the semicolon at the end of the
first line, and end the attribute value with
Some headers have special meaning to Gregorio:
- This is the name of the piece, in almost all cases the incipit, the
first few words. In the case of the mass ordinary, the form as
Kyrie X Alme Pateror
Sanctus XIis recommended where appropriate.
- This license is the copyright notice (in English) of the gabc file, as chosen by the person named in the transcriber field. As well as the notice itself, it may include a brief description of the license, such as public domain, CC-by-sa; for a list of commonly found open source licenses and exceptions, please see this page. A separate text file will be necessary for the complete legal license. For the legal issues about Gregorian chant scores, please see the legal issues page. An example of this field would be:
gabc-copyright: CC0-1.0 by Elie Roux, 2009 <http://creativecommons.org/publicdomain/zero/1.0/>;
- This license is the copyright notice (in english) of the score itself from which
the gabc was transcribed. Like the gabc-license, there may be a brief
description of the license too. In unclear or complex cases it may be
omitted; it is most suitable for use when the transcriber is the
copyright holder and licensor of the score as well. One again, reading the page on legal issues is recommended. An example of this field would be:
score-copyright: (C) Abbaye de Solesmes, 1934
- The author of the piece, if known; of course, the author of most traditional chant is not known.
- The language of the lyrics.
legacy, the orientation of an unconnected oriscus must be set manually.
- The mode of the piece. This should normally be an Arabic
number between 1 and 8, but may be any text required for unusual
cases. The mode number will be converted to Roman numerals and
placed above the initial unless one of the following conditions are
- There is a
\greannotation=defined immediately prior to
annotationheader field is defined.
- There is a
- The mode "modifier" of the piece. This may be any TeX code to typeset after the mode, if the mode is typeset. If the mode is not typeset, the mode-modifier will also not be typeset.
- The mode or tone differentia of the piece. Typically, this expresses the variant of the psalm tone to use for the piece. This may be any TeX code to typeset after the mode-modifier, if the mode is typeset. If the mode is not typeset, the mode-differentia will also not be typeset.
- The annotation is the text to appear above the initial letter.
Usually this is an abbreviation of the office-part in the upper line,
and an indication of the mode (and differentia for antiphons) in the
lower. Either one or two annotation fields may be used; if two are
used, the first is the upper line, the second the lower. Example:
Full TeX markup is accepted:
If the user already defined annotation(s) in the main TeX file via
annotationheader field will not overwrite that definition.
- The number of lines on the staff. You can have as few as 2 lines and as many as 5. If this header is left out, then the default will be the classic 4 line staff.
Although Gregorio ascribes no special meaning to them, other suggested headers are:
- The office-part is the category of chant (in latin), according to its liturgical rôle. Examples are: antiphona, hymnus, responsorium brevium, responsorium prolixum, introitus, graduale, tractus, offertorium, communio, kyrie, gloria, credo, sanctus, benedictus, agnus dei.
- The occasion is the liturgical occasion, in latin. For example,
Dominica II Adventus,
- For hymns and anything else with repetitive stanzas, the meter, the numbers of syllables in each line of a stanza. For example, 184.108.40.206 for typical Ambrosian-style hymns: 4 lines each of 8 syllables.
- This is intended for notes about the source of the text, such as references to the Bible.
- The name of a modern arranger, when a traditional chant melody has
been adapted for new words, or when a manuscript is transcribed into square notation.
This may be a corporate name, like
- The date of composition, or the date of earliest attestation. With
most traditional chant, this will only be approximate; e.g.
XI. s.for eleventh century. The convention is to put it with the latin style, like the previous examples (capital letters, roman numerals, s for seculum and the dots).
- For transcriptions direct from a manuscript, the text normally used to
identify the manuscript, for example
- A unique reference for the piece, according to some well-known system.
For example, the reference beginning
caoin the Cantus database of office chants. If the reference is unclear as to which system it uses, it should be prefixed by the name of the system. Note that this should be a reference identifying the piece, not the manuscript as a whole; anything identifying the manuscript as a whole should be put in the
- For transcriptions direct from a manuscript, where the manuscript is
Bibliothèque Nationale, Paris.
- For transcriptions from a modern book
(such as Solesmes editions;
moderngoes back at least to the 19th century revival), the name of the book; e.g.
- The name of the transcriber into gabc.
- The date the gabc was written, with the following convention yyyymmdd, like 20090129 for january the 29th 2009.
- This may contain any text in addition to the other headers -- any notes the transcriber may wish. However, it is recommended to use the specific header fields where they are suitable, so that it is easier to find particular information.
%% separator, (clef) text(notes) represents the description of
the score. In the following sections, we will only talk about this
section, which is the heart of the notation.
We have chosen to represent pitch using a single character. One character corresponds to one written pitch: whatever the clef may be, a position on the staff will still be represented by the same character. With this system, anyone will be able to type scores, even people who are unfamiliar with solfege or do not know much about music theory.
There are 13 possible pitches in Gregorian chant scores, which are represented by letters from
m that is, 13 characters. For the rare pieces with a broader range, the clef changes.
The inconvenience of this choice is that it only corresponds to English notation (notes A through G) when the do-clef is on the top line of the staff, and even then only for the low notes on the staff.
Correspondence between letter and staff position
In the notation adopted, a lower-case letter from
m, represents a punctum quadratum, a square note, and an upper-case letter (A through M), a punctum inclinatum, a diamond-shaped note, which are less frequently used.
For the virga, add a
v after the letter. For the oriscus pointing in the direction of the next non-unison note add an
o or use
o0 for an oriscus pointing down,
o1 for an oriscus pointing up. A stropha is coded by adding a
The different shapes
Nota Bene: There are actually two puncta inclinata glyphs, one shaped for an ascending series of such notes and one for a descending series. While there are algorithms which should automatically select between these two glyphs based on the surrounding notes, you can force the selection of a particular shape with
G0 (for descending) and
G1 (for ascending).
To compose a neume with more than one note, you simply type the letters corresponding to the notes, without worrying about the connections between them. These will be calculated automatically. In the following examples, the caption to each image shows the letters in gabc notation which correspond to the image.
Example of complex neume
When there is a quilisma within a neume, you type a
w after the corresponding pitch.
Of course there are cases in which a sequence of notes can be written in more than one way. These cases are described in the section Determination of the neume according to the sequence of notes.
Separation bars indicate a pause in the chant, so punctuation signs have been chosen to represent them.
The separation bars
When a bar is located between two syllables, you must put it in as a separate syllable, as for example,
jus(g) (::) Di(g) .
When a colon (
: ) in the text is immediately followed by a bar, you must type the colon with the preceding word, and not after the note: for example,
jus :(g) (:) instead of
jus(g) :(:) .
The way to notate the clef is using two or three characters:
- a letter corresponding to the clef symbol:
cfor the do clef or
ffor the fa clef
- an optional
bto indicate if there is a flat on the clef
- a number between corresponding to the line on which the clef is written. For this purpose, the lines are numbered from the bottom (
1) to the top. The number must not be greater than the number of lines specified in the
staff-linesheader (usually 4, but could be as high as 5 or as low as 2).
Starting in v4.1 it is possible to print two clefs at the same time. The clefs are linked by a
@ and will be printed one over the other if there is room, otherwise the second clef (after the
@) will be pushed to the right to prevent a collision. When determining the position of a custos automatically, GregorioTeX will always use the first clef.
Sample double clefs
It is very simple to write text and neumes: the letters corresponding to the notes are typed in parentheses after the syllable to which they correspond.
To delineate words, you simply put a space between them. We can now give an example of the final notation:
The text here is Populus Sion and each syllable is followed by the corresponding neume between brackets.
Here we have to consider the case of text characters located under a separation bar. These characters are principally asterisks indicating repeated sections and other signs indicating the structure of the piece. In those cases, we choose to treat such a character as if it were a syllable: for example,
Si(hi)on,(hgh) *(;) ec(hihi)ce(e).
When there is no character under a separation bar, we proceed the same way, but with a space instead of text:
ae,(i) (;) in(e)
In Gregorian chant, aligning the neumes with the text is important so that the singer can match them up appropriately. Gregorio automates this using the rules described on the page about the writing of chant. However, this may not give the desireable result in all cases. If it is necessary, put the part of the text to be aligned between braces. For instance, in the following example the neumes will align with the center of "ve" instead of the first "e":
The initial is automatically recognized by gregorio as the first letter. You can use the gabc attribute
initial-style in the header to set its size. The values corespond to number of lines the intial takes up:
0 (there is no initial),
1 (the default), or
2 (the initial takes up two lines).
Note that in the case of a syllable composed of one letter only, GregorioTeX automatically adds a hyphen under the first notes. To disable this feature, use the command
It can happen that the texts of Gregorian chants contain unicode characters which are not easily accesible from the keyboard. Examples of this sort of character are
œ́, the barred R (℟ for Response), and the barred V (℣ for Versicle). There is also the possibility of a non-unicode character such as the barred A (for Antiphon).
Gregorio will allow the use of any unicode character directly entered via your platform's character picker or a keyboard shortcut. In the case where it is not possible to insert special characters in either of these ways, you can be use
<sp> markup tags, for example
<sp>R/</sp> for the barred R,
<sp>'ae</sp> for ǽ. This also works for the barred A, even though it is not in the unicode table:
<v>markup tags to enter a character using it's TeX code:
Even though text is rarely styled in a chant score, gabc allows for some markup to apply styles to the text: they are
<i> for italic,
<b> for bold,
<u> for underline (does not work in Plain TeX),
<c> for colored (specifically in
<sc> for small capitals.
You have now read the basics of the gabc notation, you can go on the details page if you want to know more!