How to interpret abc music notation - part 2

A tutorial by Steve Mansfield
Part two : the more advanced bits

Last revised : 18 November 2006

Link to Printer-friendly version of this page

Introduction

Elements in the tune body:
Ornaments and Grace Notes
Slurs and Ties
Triplets, quadruplets, and the various other tuplets
Chords and Unisons
Guitar chords
Line ends and line breaks
Fiddle bowing marks
Accents

Elements in the tune header:
Information fields in the tune header
Parts and voices
Song words

Comments in an abc file

Putting it all together
Order of symbols
All together now ...

Comparison of the various software packages

Thanks and other credits

Feedback

But you've not mentioned ...

Back to the main site index


Introduction

This page follows on from my introductory tutorial to the abc music notation system. The introductory tutorial, which starts from the absolute basics of abc and works through to being able to notate a simple melody, can be found be clicking on this link.

This second part of the tutorial assumes you are familiar with the basics of abc notation which are explained in the introductory tutorial, and extends the tutorial to cover other aspects of the notation standard. Some of this second tutorial is therefore, I readily admit, little more than a paraphrasing of the abc standard available on the abc homepage, although I hope I have added some extra value through added explanation or expansion.

This tutorial explains the abc music notation language as at version 1.6, which is the current version at the time of writing (July 2001).

At a couple of points in this tutorial, there are hyperlinks to a page detailing proposed extensions of the language. If you are reading this tutorial wishing only to understand how abc is written now, you can choose to ignore these links to proposed extensions and your abc notation will be perfectly correct. Features described in these linked sections are NOT an agreed part of the abc notation standard, but are proposed extensions to that standard that may in the future be adopted as a part of the standard. Features described there may have been implemented in some abc software packages, but the syntax or format of a feature detailed there may change before the feature is adopted as a part of the full abc specification, and the feature may not be understood by other users or supported by their particular choice of abc software

For further information on abc, the various software packages available, and links to other abc sites and tune collections, go to the abc home page at http://www.abcnotation.org.uk.

I would of course be extremely indebted to anyone who points out any errors of fact or interpretation in this tutorial: my email address is available here.

Still here? Good : off we go then ....


Elements in the tune body

Ornaments and grace notes

The general symbol for an ornament is the tilde ~.

The symbol is placed before the note to be ornamented, eg

~G2

Note that the tilde is a general mark to indicated the presence of an ornament, and does not specify a particular ornamentation - it is usually interpreted as a roll or a turn. For the more precise notation of ornamentation such as Great Highland Bagpipe music, and for the notation of particular grace notes, enclose the notes in curly brackets { } eg

{GAGDG}G2

The notes within curly brackets have no fixed time value, so their length cannot be modified by use of the usual symbols : in other words anything like {G2AG2D}, {GA/G/D/G}, or {GA>GD>G} is out of the question. The pitch of the notes is notated in the usual way, eg the octave modifiers , and ' are useable.


Slurs and Ties

The minus sign - should be used to tie two notes of equal pitch, whilst the round brackets () join two or more notes which are to be slurred, or played legato.

Two notes can be tied together with a minus sign - . This can be applied both within a bar and across bar lines, eg

|DEF-|FGA|

and

|DEF-FGA|

are both correct. The tie marking should be placed immediately after a note, but can be followed by a space.

To slur a group of notes or join them together as a phrase , use round brackets ( ) to enclose the grouped notes, eg

(DEF|GAB)

Spaces can be used within the slur to improve the legibility of the file. However the first and last notes, (including any pitch and/or length markings) should be placed hard up against the beginning and ending brackets. So

(^G A B/c/|E4 D4)

is correct, but ( ^G A B/c/|E4 D4 ) is well wide of the mark.

It's also worth mentioning that you can 'nest' slurs inside each other, so that a passage of music finishing with a tied note can be shown either as

(D E F (G | G4))

or

(D E F G-| G4)

are both understood.


Triplets, quadruplets, and the various other tuplets

The basic notation for duplets, triplets, quadruplets etc. is straightforward : an opening round bracket, the number, and the notes within the tuplet eg

Duplet (2GA
Triplet (3GAB
Quadruplet (4GABA

and so on, up to

(9GABcdcBAG

Note that there are no spaces in the tuplet.

The values of the particular tuplets are (to quote the abc specification)

(2 2 notes in the time of 3
(3 3 notes in the time of 2
(4 4 notes in the time of 3
(5 5 notes in the time of n
(6 6 notes in the time of 2
(7 7 notes in the time of n
(8 8 notes in the time of 3
(9 9 notes in the time of n

n is 3 in compound time signatures (3/4, 3/8, 9/8 etc), and 2 in simple time signatures (C, 4/4, 2/4 etc.)

Warning : this next section is not as bad as it first looks. There are however some people - me for example - who are allergic to anything resembling algebraic equations: such readers may wish to click here now.

For more complicated notation of irregular rhythmic episodes, abc allows for the use of the form

(p:q:r

where

p = the number of notes to be put into time q
q = the time that p notes will be played in
r = the number of notes to continue to do this action for.

If q is not specified, it defaults to 3 in compound time signatures and 2 in simple time signatures. If r is not specified, it is taken to be the same as p.

This comes into play when notating notes of different lengths within a tuplet eg

(3:2:2G4c2

or

(3:2:4G2A2Bc

and explains exactly what is going on in situations such as

(3D2E2F2

- which is the same as putting

(3:2:3D2E2F2


Chords and Unisons

Chords for guitars etc. can be found here.

Chords within a melody, eg what classical Western notation would show as multiple note heads on a single stem, are shown in abc by enclosing the notes in square brackets [ ]. There should be no spaces within the chord, length and pitch modifiers can be included as required, and it is a convention to state the notes of the chord in ascending order, eg

[Acea]

Chords can be arranged to form beamed groups using spaces in the same way that individual notes are, eg

[GB][Ac] [B2d2] | [Bd][Ac] [G2B2]

The syntax for chords can be used to notate more than one part in a single line of music - and in that case, or in cases where two strings play the same note, it will occasionally be necessary to notate a unison (eg both parts playing a note of the same pitch and length). Software which generates classical Western notation from abc will show unisons eg
[AA]
as a note with both an upwards and a downwards stem.


Guitar chords

Chords for accompanying instruments can be shown in abc using double quotation marks " " eg

"Dm7"

The chord should appear before the first note of the section of melody which the chord applies to, eg

"G"GB d2 | "D"DF A2

Chords take the format

note accidental type / bass

where

note A to G
accidental # or b
type m, min, maj, sus, dim, +, 7, 9, 11,#5, etc. etc
/ bass Bass note

accidental, type, and / bass are all optional.

You may occasionally come across an abc file which uses the older abc style of denoting guitar chords, by surrounding them with addition signs +Gm+ : more recent versions of the abc specification specify the use of the "Gm" style, so please do your chords like that.


Line ends and line breaks

In software which generates standard Western notation from abc, the general rule is that one line of abc will generate one line of tadpoles-hanging-on-five-barred-gates.

Most packages will however 'wrap' the staff of music onto the next line if your printed page width isn't big enough.

To try to insist that two lines of abc notation make one line of tadpoles, put a back slash
\
at the end of the first line. Again, this may be over-ridden by the software if you run out of space.

The other common symbol often seen used in marking line breaks is an exclamation mark
!
placed at the end of a line of abc, to force the software generating the standard Western notation to start a new line. This is specific to one particular piece of abc software and is not actually a formal part of the abc notation specification, but (as so many abc files are generated in this particular software package, ABC2Win) it is worth mentioning here.


Fiddle bowing marks

Up-bow and down-bow marks for fiddlers can be indicated by the letters u (up-bow) and v (down-bow), eg

v_Au=Bv^c


Accents

If you want to indicate that a particular note should be played staccato, place a dot . before the note, eg

.A

or even

.G.A._B.c .d2.e.d.^c

There are proposals to extend the range of accents available in abc : click here for further details .


Information fields in the tune header

As seen in the first part of this tutorial, the tune header contains a number of fields giving information about the tune such as title, rhythm, key signature, etc. The introductory tutorial mentioned the fields which must be shown in the tune header, and also described some of the optional information fields which are most commonly used.

The abc specification allows for many more optional descriptive or information fields to be used in the tune header - the full list is :

A: (Geographical) Area : eg A:Brittany or A:Sussex
B: Book, eg B:Encyclopeadia Blowzabellica or B:O'Neill's
C: Composer eg C:Andy Cutting or C:Trad
D: Discography eg D:New Victory Band, One More Dance And Then
F: File Name eg http://www.lesession.co.uk/woodenflute.abc
G: Group eg G:Flute - this is used for the purpose of indexing tunes in software, NOT for naming the group / band you acquired the tune from (which should be recorded in the S: source field).
H: History - Multiple H: fields may be used as needed to record text about the history of the tune. (Many people (including me) seem to tend to forget about the H: field and instead always put information like that in the N: notes field instead.)
I: Information - used by certain software packages, NOT for historical information or notes (which should be recorded in the H: or N: fields).
K: Key -see part one of this tutorial for further details
L: Default note length -see part one of this tutorial for further details
M: Meter :see part one of this tutorial for further details
N: Notes : Multiple N: fields can be used as needed to record detailed text notes about, well, just about anything you want to say about the tune that won't go in any of the other fields really ...
O: (Geographical) Origin : eg O:Irish or O:Swedish
P: Parts -see below for further details
Q: Tempo -see part one of this tutorial for further details
R: Rhythm -see part one of this tutorial for further details
S: Source - where you got the tune from eg S:Olio or S:Dave Praties
T: Title -see part one of this tutorial for further details
W: Words -see below for further details
X: Tune reference number -see part one of this tutorial for further details
Z: Transcription note - the identity of the transcriber or the source of the transcription, eg Z:Steve Mansfield

To repeat a small part of the first part of this tutorial:

The X: index, T: title, M: meter, L: default note length, and K: key field are obligatory : the others are optional.

The fields usually occur in the following order:
X:
T:
M:
L:
[optional fields]
K:

And immediately following the K: field on the next line is the body of the tune, eg the representation of the notes of the melody.


Parts

This section deals with the parts of a melody, eg the introduction, A part, B part etc. There are proposals to extend the syntax available in abc for notating parts as in part-singing, harmony parts etc., eg multiple voices : click here for further details.

Parts can be indicated in the P: field in the tune header to indicate what order the parts of the tune are played in for both human and computer players, eg

P:AABCBD

The body of the tune will then contain corresponding markers at the start of each part eg

P:A

Note that the declaration in the header, showing the order of parts, can be abbreviated using brackets eg

AABBAABB

can be shown as

2(2A2B)

and dots can be added to improve legibility, eg

2(2A2B).3(CD).2(2A2B).CD


Song words

The W: field (upper case W) in the header can be used as many times as needed to record the entire words of the song as a block of text eg

W:How much is that doggie in the window
W:The one with the waggly tail?
W:How much is that doggie in the window
W:I do hope that doggie's for sale
(etc. etc.)

This form of notating the song words will produce the words as a single text block below the tune, if the abc file is fed into a software package which generates standard Western notation.

There are proposals to extend the syntax available in abc for notating song words : click here for further details.


Comments in an abc file

To include comments, notes, anecdotes, copyright notices etc. in your abc file (as opposed to using the N: and H: fields in a particular tune), use a percentage % symbol eg

%This file was downloaded from
%http://www.lesession.co.uk

a % at the start, or in the middle of, a line will cause everything to the right of the % symbol to be treated as comments by both human and computer abc readers.

Note that some software packages take advantage of this syntax to place software-specific messages in the body of an abc tune - these can usually be distinguished by the human eye as they start with a double percentage sign eg %%.


Putting it all together

1) The order of symbols

If (for the sake of argument) you want to use many or all of the features available for use in the tune body on one note, which order should they appear in?

The order is :

Guitar chords accents accidental note octave marker note length modifier

The abc specification gives

"Gm7"v.=G,2

as an example, and I think that states the point perfectly.


2) All together now ...

X:1
T:Plead for Slough
T:Speed The Plough (arr.)
M:4/4
L:1/8
H:Illustrative file for abc tutorial
F:http://www.lesession.co.uk/abc/abc_notation_part2.htm
N:The tune that should be the English national anthem,
N:renamed in this version in honour of the John Betjeman poem
C:Trad.arr. Steve Mansfield June 2000
R:reel
P:(2A2B)ad infinitum
Z:Steve Mansfield 6/6/2000
K:G
P:A
"G" (GAB)c dedB | "G" .d.e.d.B dedB |
"Am" c2ec "D7" B2dB | "D"A2"Dm"A2 "Am" A2BA |
"G" (GABc d)edB | "G" .d.e.d.B dedB | "C" ~c2ec "G" ~B2dB- |
"D7" BA A2 "G" ~G4 ::
P:B
"C" g2g2 {GABcdef}g4 | "G" g2fe dBGB |
"Am" cAEc "Bm"BGDB | "F#m"A2A2 "D"A4 |
"C"g2g2 "G"g4 | "G"g2fe dBGB |
"C" (5cdedc "Am" ec"Bm"B2"~G"dB |
"A"[A2c2]"Am"[A2a2] "G"[G4B4d4g4] :|

Comparison of the various software packages

Having read my abc tutorials, people occasionally email me to ask "What is the best abc software package?"

And my answer is always a clear and unequivocal

"Well ... that depends really".

The abc notation system is, of course, not tied to computer software at all - many a perfectly good piece of abc notation has been scribbled down on the back of a beermat in the middle of a crowded music session, using nothing more hi-tech than a pen borrowed off of a friend. My objective in writing these tutorials has been to teach how abc itself works.

The best abc software package is the one which works best for you. What that is depends on all sorts of factors, such as -

  • What computer operating system you are using.
  • How much you like typing the abc in directly, how much you prefer to have it all done for you by icons and menus, how much you value the freedom to do both.
  • What features you find essential in a notation programme, and what features you find peripheral or downright irritating.
  • What you want to do with your abc files once you've got them.

One of the great joys of abc is that the majority of the software packages are shareware, so you can try before you buy. Once you decide on the package or packages that work for you, please register them - nobody is getting rich from supporting abc, none of the packages are expensive, and all software registrations are encouragement to the author(s) for past efforts, present value, and further developments.

There is a list of software packages for abc at the abc home page, http://www.abcnotation.org.uk. Frank Nordberg has also compiled a comparative guide to abc software at http://www.musicaviva.com/abc/abcapp/index.tpl


Thanks and other credits

Thanks for this second page of the tutorial go to Lynn Chivers and Richard Peach of the abc-enabled ceilidh band Olio for alpha-testing: a part of the credit for the accuracy of this tutorial go to them, whilst responsibility is all mine for all remaining examples of poor speling, erroneous explanation and sheer wilful obscurity.

For more thanks, conditions of use, and an explanation as to why I wrote all this in the first place, please see the thanks on the introductory page.


But you've not mentioned ...

Some of the proposed enhancements and extensions of the abc specification are described on the third page of this tutorial. To learn more about these proposed extensions, click on the links below to move to the relevant section :

Accents
Annotations
Song words
User definable symbols
Voices
But you've still not mentioned ...

Back to the main Lesession site index

This tutorial copyright Steve Mansfield 2000 - present.