Back to Font Up to Top Forward to Example

Format of a .hld file

The process all starts out with a text source file. By convention it has an extension of `.hld'.

Here's a short extract from a .hld file to use as an example:

T:O quam mirabilis
C:Hildegard von Bingen
B:Reisenkodex
X:+3

O       .=C .=D l=E l=F .=E .=D .=C b@B .=A .=B l=C
quam    n=DC
mi-     /=EF
mi-	/=EF
ra-	l=D
bi-	l=C
lis	.=B
est	n=DC
+L

It has two parts: the header, which gives general information about the song, and the body, which lays out all of the words, notes and neumes. (Blank lines can be added anywhere - they will be ignored.)

The Header

Each line of the header starts with a capital letter, followed by a `:', followed by some text. (If you guessed that I borrowed this format from abc format, you get two points.)

LetterMeaningExample
T:TitleT:O magne Pater
C:ComposerC:Hildegard von Bingen
B:BookB:Reisenkodex
X:Transposition (number of steps)X:-3

The transposition line is optional.

The Body

The body of the file is made up of note lines and spacing lines.

Note Lines

A note line consists of a single syllable, followed by one or more neume-note groups.

The syllable will be be printed on the lyrics line, under the first of its notes.

Each neume-note group consists of one or more neume keys (see previous section), followed by one or more notes.

The notes are the same as in abc format. `A' is the A below middle C, `B' through `G' are in the octave above it, and `a' through `g' represent the next octave. If you have to go higher than that then use a lower case letter and stick an apostaphe after it (a'). If you need to go lower, then stick a comma after a upper case letter (G,).

For example, "nos .=e w=eg l=a'" would represent the syllable "nos" sung on a punctum on e, a quilisma on e to g, and a virga on a.

Accidentals

You can add a flat sign into the score by inserting "b@b" into the proper place in the list of neume-note groups. (The first `b' asks for a flat, while the second asks for it to be placed on the b above middle c.)

You can add an editorial flat by inserting a `_' before the note that needs to be flatted. For example, "Wn=G_ba".

Spacing Lines

A spacing line consists of a `+', followed by one or more characters, whose meaning is as follows:
b a bar
l a new line
L a bar & a new line
s a little bit of extra horizontal space
H a chunk of horizontal space
V a chunk of vertical space


Back to Font Up to Top Forward to Example