This is a proposal for a nabc input syntax. It should enable users to type the neumes of all types of manuscripts, including:
The idea is to have a syntax that will enable the description of all possible glyphs in all possible notations. As you will see, the syntax is quite complete and not all “fields” are mandatory, this does not mean that the logic of glyph presentation will be poor: the font can contain already assembled glyphs (for subpuncta for example).
All types of neume writings will have their table of correspondance to make the different variants explicit, and users will have to refer to them when typing neumes of a certain type.
The proposal is to have the following syntax for each neume:
type-alteration-variant-height-subpuncta-letters
With type being two letters, from the following:
vi (virga)pu (punctum)ta (tractulus)gr (gravis)cl (clivis)un (uncinus, Laon only)pv (pes volubilis, Benevento only)pe (pes)po (porrectus)to (torculus)ci (climacus)sc (scandicus)pf (porrectus flexus)sf (scandicus flexus)tr (torculus resupinus)st (stropha)ds (distropha)ts (tristropha)tg (trigonus)bv (bivirga)tv (trivirga)pr (pressus maior)pi (pressus minor)vs (virga strata)or (oriscus)sa (salicus)pq (pes quassus)ql (quilisma, with 3 loops)qi (quilisma, with 2 loops)pt (pes stratus)Alteration has the following possible values:
- (episemus)~ (deminutus)< (auctus ascendens)> (auctus descendens)S (alteration of shape, in Dom Cardine's table)G (alteration of grouping, idem)M (alteration of melody, idem)
The previous two switches don't take into consideration all possible neumes, some are variations of the same neume, so we must take into account severa variants. Variant can thus be nothing (for the default glyph) or a number between 1 and 9, to take into account the variations.
For semi-diastematic notation (typically Beneventan notation), the ambitus is important. It can be indicated with amX, with X being 1 to 3 numbers between 1 and 5. For example a podatus with an ambitus of 3 will have am3 in its description, and an (hypothetical) climacus with ambitus 1 then ambitus 3 then ambitus 2 will have am132 in its description.
For neumes where the place of the height of the neume relative to the others, is important 1), it is necessary to be able to describe it.
When necessary, the user can add hN where N is the letter of the first note of the glyph, the same as in gabc (between a and m).
As there is no reference, the height is of course very approximative. We shall consider that the default is the height f.
When multiple base neume glyphs are combined together, drawn as one glyph, the neumes are joined together with
! character. E.g. a torculus combined with clivis and porrectus with episema is written as to!cl!po-.
If height needs to be specified, it should be specified for all the base neumes, like tohh!clhh!po-hh.
Subpuncta, prepuncta and significative letters go after the whole group in that case.
For adiastematic notation, the subpuncta can be added at the end, with su followed by the number of subpuncta (between 1 and 9).
For semi-diastematic notation, this is more difficult, as the relative height of the puncta can change. So a list of puncta can be give, with the following syntax: suX1suY1suZ1, with X, Y and Z being the height of the puncta. No more than 10 puncta can be given.
If a shape of the particular puncta needs to be specified, it can be specified by a modifier after the optional hight letter.
t gives the shape of tractulusu gives the shape of tractulus with episemav gives the shape of tractulus with double episemaw gives the shape of gravisx gives the shape of (liquescens) strophay gives the shape of gravis with episema
If pp is used instead of su, it describes prepuncta of the neume instead of subpuncta.
The possible letters are the following2)3):
c celeritert teneres sursuml levarex expectare+ sign of repetitiona augeteal altiusam altius mediocriterb benecm celeriter mediocriterco coniungunturcw celeriter (wide form)d deprimature equalitereq equaliterew equaliter (wide form)f fastigiumfid fideliterfr frendorg guttureh humiliterhp humiliter parvumhn humiliter nectumi iusumim iusum mediocriteriv iusum valdek klenchelb levare benelc levare celeriterlen leniterlm levare mediocriterlp levare parvumlt levare tenerem mediocritermd mediocriter (Laon)moll mollitern nectumnl non levarent non tenerep parvumpar paratimpfec perfectepm parvum mediocriterq equalitersb sursum benesc supra celeritersc sursum celeritersimil similitersimul simulsj subjice sjc subjice celeritersjcm subjice celeriter quam moxsm sursum mediocriterst sursum teneresta statimsu supratb tenere beneth tenere humilitertm tenere mediocritertw tenere (wide form)v valdeve velvol volubiliter
To indicate the letter, one should write lsXP where X is one of the possibilities above. Y stands for a digit specifying the relative position of the significant letter against the neume:
1 letter is at the top left corner of the neume2 letter is above the neume3 letter is at the top right corner of the neume4 letter is to the left of the neume6 letter is to the right of the neume7 letter is at the bottom left corner of the neume8 letter is below the neume9 letter is at the boottom right corner of the neume
To insert a smaller space between nabc neumes, use / character, to insert larger space use //.
/// then stands for a larger space followed by smaller space. To add negative space, use `
and/or `` instead of / and/or //.
This is generally useful for the first nabc neume above some square note neume group, if there is plenty of space before that, but not enough space for the nabc neumes.
This proposal leads to a syntax that is simple by default, but can be very precise. For example:
vi gives the default virgapf- gives porrectus flexus with an episemuspo-2 gives the second variant of the porrectus with episemus (see Dom Cardine's table)pesu2lsc2 gives a pes subbipunctis with the c letter above itvihgsuf1sue1 gives virga at height g, with two subpuncta, at height f and e