abc Notation

abc, developed by Chris Walshaw, is a language designed to notate music—tunes and lyrics—in ASCII format. It was originally designed for folk and traditional tunes of Western European origin (commonly English, Irish and Scottish) which can be written on one stave in standard staff notation.

Although it has since been extended in the draft standard to support the notation of complete, classical music scores with multiple voices and clefs, abc remains, at its heart, entirely human readable and playable.

Overview

Simple tunes have the common elements of the following example, the Irish jig, Paddy O'Rafferty.

X:1
T:Paddy O'Rafferty
C:Trad.
M:6/8
L:1/8
K:D
|:dff cee|def gfe|dff cee|dfe dBA|
  dff cee|def gfe|faf gfe|1 dfe dBA:|2 dfe dcB||
|:~A3 ~B3|gfe fdB|AFA B2c|dfe dcB|
  ~A3 ~B3|efe efg|faf gfe|1 dfe dcB:|2 dfe dBA||
|:fAA eAA|def gfe|fAA eAA|dfe dBA|
  fAA eAA|def gfe|faf gfe|dfe dBA:|

[ abc pdf midi ]

Paddy O

The lines starting with an uppercase letter and a colon are part of the header and describe Index, Title, Composer, Meter, default note Length, and Key. The remaining lines describe the notes. A number after a note multiplies the duration (default 1/8 for 6/8 time, or as specified in the L: field).

Barlines are specified with the vertical bar |, while repeats and first and second endings are signified with |: (forward repeat), :| (backward repeat), |1 and :|2 respectively.

In Irish music, the ~ denotes an ornament known as a turn, the playing of which varies depending on the instrument used.

abc Resources