About ABC
ABC is a simple set of rules whereby you can represent a piece of music in the characters of plain-text, using only the keys of an ordinary computer 'typewriter' keyboard. Simple pieces can be represented extremely simply and easily, while suprising subtlety is available for more complex situations. In the world [ footnote ] of using computers to deal with traditional tunes, it's emerged as the notation of choice, owing to its ease of use. There is a vast amount of material in this format to be found around the 'net, and there is also a wide choice of working free, and other, software to support it in various ways and do useful things with it, either by installing them on your own machine or remotely, via the various facilities offered on various websites (including this).
-
If you want to know more about the details of ABC, try
- Chris Walshaw's ABC Pages, which includes a huge list of links to relevant software, a good list of other tune collections, and much more. Chris was the original inventor of ABC - he isn't much concerned with it these days, but this is still a good starting point.
- John Chambers' ABC Music Page is another very useful one.
- Steve Mansfield's ABC Tutorial, and more.
- Guido Gonzato's ABC Plus project, which includes a very fine manual on using the command-line ABC programs. Mainly with reference to abcm2ps, though others are mentioned. This is the best single piece of documentation that I know of, highly recommended (pdf format).
-
Finding tunes elsewhere on the web
- John Chambers' Tune Finder is another thing worth knowing about. If a tune exists as ABC anywhere on the web this will probably find it for you, and deliver it in the format of your choice.
- Chris Walshaw's ABC Index of tunes he knows of on the web.
- and also his List of ABC collections.
-
There are Web-based ABC tune converters. Just type, or paste, an abc tune into one of
these and it will give you the tune back in a different format.
- Folkinfo's tune converter. Transposition, pdf, midi.
- concertina.net's tune converter; pdf, midi.
- John Chambers' tune converter. Postscript, png, gif, midi.
How much do you need to know about it ?
Some. It is, for now, the site's only input language (I hope to be able to support others, eventually, but that comes later; probably much later), which means that you can only get tunes into this by writing them out according to that set of rules. But we can save you from having to know that you are doing, some of the time.
- You are going to have to know how to write out the actual 'music' of the tune; the pitches and lengths of the notes, barlines and all that kind of thing, whatever you want, or need, or can face learning, by way of the actual notation. After all, how else to do it ? The only alternative would be to write a whole graphical music editor, drag pictures of notes around onto a picture of the 5 lines, and so on, and then embed that in a web page. I'm not going to do that; far too much work, and ABC is so much easier and quicker that I wouldn't even use it. If anybody else wants to attempt such a thing, I'm open to discussion about integrating it with this ...
-
But beyond this, a lot of the discussion you'll find behind the links below concerns "the headers", which store information about the tune - what it's called, where it comes from, who you learnt it from, what sort of tune it is, and so on. And we have forms to do that kind of stuff for us, when we don't want to do it ourselves. This being a bunch of webpages wrapped around a chunk of code wrapped around a database, it's very often possible to pull the relevant facts out and display them usefully without requiring any understanding of the underlying formats.
I think the only points where users interact with the internal details of a tune are during upload/editing, and when specifying characteristics in the "Tune search" page. Upload takes input as ABC files from outside, and thus necessarily requires knowledge of ABC, but the other two cases, editing and searching, exist in alternative styles, depending on taste - a 'raw' form, for hardened or experimental types, that just presents the ABC and lets you get on with it, and a 'fancy' form that gives individual controls for each data field and allows you to interact with the info. in rather more helpful and descriptive terms, taking care of the underlying ABC-ness for you. Apart from the actual notes of the tune, as noted above. But ...
-
... that's not hard. If I give a v. short paragraph on the very basics, it might be possible to hope that you can at least
start to use the site without needing to follow any more links on ABC. So ...
-
Pitch - the notes are named by their letters - a b c d e f g. Lowercase letters are, for some reason, higher
notes than uppercase letters. Raise 'em an octave by following them with an apostrophe
( ' ), drop 'em an octave with a comma( , ), a caret( ^ ) in front of a note represents a sharp, underscore( _ ) is a flat. These combinations should not be separated by any spaces. Thus," A, ", " _b ", " ^c' ", etc. -
Length - notes are assumed to be a "default length"; usually a quaver (1/8 note). Numbers after a note multiply
that length. Thus
" _b'4 ", " A/2 ", etc. The latter, giving a note half the default length, can be abbreviated to" A/ ", without the "2". Another handy abbreviation is" A>B ", short for" A3/ B/ ", or" A3/2 B/2 " in full; the dotted-quaver/semiquaver3+1 construction. -
The vertical bar
( | ) character is a barline. Double this( || ) for a double-barline. Replace one of these with a square bracket( |] ) to make one of the lines 'heavy', to mark an ending, etc. The colon( : ) represents the pair of dots that mark a 'repeat' sign. And combine these ... -
Thus
" |: AB cd ef ga | ag fe dc BA :| A8 |] " gives a scale of A, up 1 octave & down again and repeat, with a long A at the end. And so on. - And the editor form should supply the rest of what you need. It's not hard. There are a lot of examples here already for you to look at, to help you get the idea.
-
Pitch - the notes are named by their letters - a b c d e f g. Lowercase letters are, for some reason, higher
notes than uppercase letters. Raise 'em an octave by following them with an apostrophe
- Just for completeness, here is
- A list of the fields available here, with brief comment. Notice that each ABC "key" (the way you'd mark each different type of info. if you're writing it directly in ABC) comes with an associated "description", which is how the field is referred to in the non-ABC-specific areas of the site. See also, possibly, the Guidelines for submissions for another perspective on this.
- If all this hasn't put you off from wanting to know what excatly this site does with its ABC (and looking at some doesn't clarify matters), here are some techier notes on the way this site uses ABC.
This is, after all, the World Wide Web
"The world", as I use the phrase above, seems to mean mainly the cultures of the various hinterlands of the various shores of the North Atlantic. ABC has a very close relationship to the 'standard' 5-line-staff system of written notation, and it would need more work if it was ever to grow beyond its current inability to speak in anything except the European alphabets. I don't know how people in other areas go about doing any of this (anyone ?). Hello, world ! (Sorry, but I couldn't resist saying it somewhere)